From nobody Thu Nov 20 12:30:00 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=quarantine dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1763597873; cv=none; d=zohomail.com; s=zohoarc; b=Smr586fhHbC4962ZteOpsUIoQnR9lFs0Cc4v9s2j64dZMX4sQPMUSKi6/+VAF7z+1PAKlsqrDkZ889BaEmNihZLozQ8YhO5QfE5ke4tkLXcVKd1FF2TbcI0mUuWoI1ngpKnSCljSFUqRIyWj8TG8PkJcjMqrCCPQatvNAjXL0bg= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1763597873; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=8aaUR6WzSNP4cK/DMriqb/j4Ba2z3R/UyBF2bczQJeI=; b=GcumfmDhSiwwmkzkNUUUql5c3Mlb+20qvyCfKafOdscNI+XGo+ZC1/C0IJU5WywK98/W3vWFpochvphH/9jcCuErUaCXeRedJG0ZFf5pyVbm4rPdzPEY7v/f+gFnX/ZaoO607y3wJDLGNWSEjgDoD5dhl7zVpgs8lWJhORvzEec= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1763597873112961.2376557942357; Wed, 19 Nov 2025 16:17:53 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vLsMA-00036H-IN; Wed, 19 Nov 2025 19:17:02 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vLsM7-00035m-W8 for qemu-devel@nongnu.org; Wed, 19 Nov 2025 19:17:00 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vLsM5-0007Ow-TS for qemu-devel@nongnu.org; Wed, 19 Nov 2025 19:16:59 -0500 Received: from mail-wm1-f72.google.com (mail-wm1-f72.google.com [209.85.128.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-47-DVOER5kPOHahvIZNyHa6QQ-1; Wed, 19 Nov 2025 19:16:55 -0500 Received: by mail-wm1-f72.google.com with SMTP id 5b1f17b1804b1-477a11d9e67so1571735e9.2 for ; Wed, 19 Nov 2025 16:16:55 -0800 (PST) Received: from [192.168.10.48] ([176.206.119.13]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-477b82d825dsm16085535e9.5.2025.11.19.16.16.52 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 19 Nov 2025 16:16:52 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1763597817; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=8aaUR6WzSNP4cK/DMriqb/j4Ba2z3R/UyBF2bczQJeI=; b=QEyUa30A+PLaLmmeHLBp5FLHC+6xU+OfMYUj2FlCvspcbn9J7H3WP60tTPXla9tmG6gJTS MV7dqGV9cvOjnyAXJwUoNZBUS8z4LaGjAeeDOO30AYpCBLkc7hWhk01MjqOxPlwBMI8ej/ 8s6ntAv06nSCm4gUVtprtMq6952lc34= X-MC-Unique: DVOER5kPOHahvIZNyHa6QQ-1 X-Mimecast-MFC-AGG-ID: DVOER5kPOHahvIZNyHa6QQ_1763597814 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=google; t=1763597813; x=1764202613; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=8aaUR6WzSNP4cK/DMriqb/j4Ba2z3R/UyBF2bczQJeI=; b=P770kqb6eUi1H898SLnnMTayKfmN083oZO7OCclHfevASZD97tqHrvPKNtv5GUGPZR osKofTRs0qfc3mRDMCOS30r8O+AClewXG9Z5YHA+c/yfFm0rlmBup/SH9tiz9mskduXo DatEFrmMrxFQYlgWz21oCRGlhe3THkf4F50R96QyqksQEQrEjLihwkGNIuZKh+9CJC5r jfLfF1leWWBZfQLzdFeia+MSU1uBTUwxl/PJx1UZ9jsnuwJP0Necaal7/Bc9ng5hoovj gLB6+k9KId79pFKdUrarUWH/n2AvCw4e/DxcOEmTbNuYMdWe0UkrAZMG+LvrtWIZDR0r xDAQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1763597813; x=1764202613; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=8aaUR6WzSNP4cK/DMriqb/j4Ba2z3R/UyBF2bczQJeI=; b=CkBpNiv5QsR3zXI0XtBwn1YJ0xlqoFMxbuDT9SRgSZdLx9TPL0PdmbTauvQpKro8vD O9tkiv/+gsUswOS9V3RTkjoKnWhiSS82qo11QWyHOXX42bAP2R153woJXTlF2EyaTioK DUFJd5wn0u0/Jz1ZsrjQNnwTy7wOMAFSjIWld01WvRlhwY4i38UTJ5dxMlbOXzPcD6nK EU0qx7ynG3poF/5jzfcEt6GTbhRHl9APqdkFeKZ20qt2uLfnfYnd0tnIeV4i2J4i/oJG 3wTN+35ZfuAVQ6KnwqWI8Vnn6ysIuiDyyhEzeZPUdk/SbLR9oOZv+By1QSeZ6wZKI8wU q3og== X-Gm-Message-State: AOJu0Yxm86yXTaUNTNRBJU9+8825Pj8eqCsQmJ8iAtDQPJtVOkhVUcZ4 eSWIr7GXJkCsg8gmJ7jca6I7nBag+XyIYBZIiTSs2j752CYIP9t4xo6kgg0ZK7l2yIasfnzdNas qtVM5XdKEjnBSfg2JzzBlYv7K5bevRZRT1OLkuFxkoIj36kY60CZTDx6TKqcmuwUc/EzS+ZufC1 i/saSSkq8dJq8xYRO7mSrtJ9qV4rchAgKUVKsdVpI7 X-Gm-Gg: ASbGncvv+Ndpwk+j+Q5oGnsBUWjRmjCZ7ZNjsrr0MmMgFV9uZvl3hhkF3MRUXciMEyb ZPUfICZOxjxd5FUHDTbgcxuX3+4TWbmm/bTmJI0+KXw69L5pF+WE1qwHHrDUtNJd1vmjYV6wQHz KzdflxgOcOkR1jbkfxYMHiCuccc6c/JEzIpQ7nTJFf1I/TFNpFIyTR3+6RJRwm1Jyep9uMXQGBi UMiRS+tDq8SngIWQ00XzMNS06/RHCDrivfGtH1MBDl6+aTEYSPdNsPd3vjPPsW9MkYw8zb06OAD 6iSVRvjJXwCSuLcuUuLKU6jqwXeIKQusrt9OYJ4v+2VEB9+r2zCmmy++9RelxTop62uQputM+9c xjWin6Bk1DaDJ+b6hf7Fr0x2y/mnsuFrQkOvTffnFddBwDJWweKz9I24SRf7x7LduU7/K8HDsua /dkYVXLE5RzbgwjSA= X-Received: by 2002:a05:600c:c8f:b0:477:7b16:5f77 with SMTP id 5b1f17b1804b1-477b8671ff3mr8969535e9.3.1763597813441; Wed, 19 Nov 2025 16:16:53 -0800 (PST) X-Google-Smtp-Source: AGHT+IFj3xzE6u774s/47T8gKXOnWMgAG84i6RAKPUsm9ek39gds3LW6a3xQ/J5fm7vLrBGy8xd8ow== X-Received: by 2002:a05:600c:c8f:b0:477:7b16:5f77 with SMTP id 5b1f17b1804b1-477b8671ff3mr8969345e9.3.1763597812968; Wed, 19 Nov 2025 16:16:52 -0800 (PST) From: Paolo Bonzini To: qemu-devel@nongnu.org Cc: =?UTF-8?q?C=C3=A9dric=20Le=20Goater?= , Magnus Kulke Subject: [PULL 01/10] ioapic: fix typo in irqfd check Date: Thu, 20 Nov 2025 01:16:40 +0100 Message-ID: <20251120001649.1085913-2-pbonzini@redhat.com> X-Mailer: git-send-email 2.51.1 In-Reply-To: <20251120001649.1085913-1-pbonzini@redhat.com> References: <20251120001649.1085913-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.129.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1763597874323018900 Not registering the IEC notifier results in a regression with interrupt rem= apping when running a VM configured with an intel-iommu device and an assigned PCI VF. At boot, Linux complains with : [ 15.416794] __common_interrupt: 2.37 No irq handler for vector Reported-by: C=C3=A9dric Le Goater Analyzed-by: Magnus Kulke Signed-off-by: Paolo Bonzini --- hw/intc/ioapic.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/hw/intc/ioapic.c b/hw/intc/ioapic.c index e431d003117..38e43846486 100644 --- a/hw/intc/ioapic.c +++ b/hw/intc/ioapic.c @@ -216,7 +216,7 @@ static void ioapic_update_kvm_routes(IOAPICCommonState = *s) #endif } =20 -#ifdef ACCEL_KERNEL_GSI_IRQFD_POSSIBLE +#ifdef ACCEL_GSI_IRQFD_POSSIBLE static void ioapic_iec_notifier(void *private, bool global, uint32_t index, uint32_t mask) { @@ -434,7 +434,7 @@ static const MemoryRegionOps ioapic_io_ops =3D { =20 static void ioapic_machine_done_notify(Notifier *notifier, void *data) { -#ifdef ACCEL_KERNEL_GSI_IRQFD_POSSIBLE +#ifdef ACCEL_GSI_IRQFD_POSSIBLE IOAPICCommonState *s =3D container_of(notifier, IOAPICCommonState, machine_done); =20 --=20 2.51.1 From nobody Thu Nov 20 12:30:00 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=quarantine dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1763597891; cv=none; d=zohomail.com; s=zohoarc; b=RBGty1TdYqlP0LL8HWhMACCkHiUZDfPXdWzvYglAThX1bZmLnTbsMnD60E1sZJJVqGuFqWPASFl+j8X5hA4qr+gHt1sXs7SghegFqZh++zbrnqcY/JMjpJr1aRJR9rT+l5/PtnpyIG1UsPyU5aqhGeXkENkiIAubpl4Q7gZWe+I= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1763597891; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=pyGxYNW5IV1mR/jWc9nz65+A1YzvJPGyS3EIkWGspqo=; b=UsX/h2BYFIbs/1NSCh9byNKFUXxUklRE0p+9/AG+poIqsaDU1+v+t3O3ttkiVsBUxK9gwUE5Bs4oHxrQkeqkUTRdXiEw+477ZtEldQRnViFesgd5qX7OI9+1TeCtcKbKwwHISfD94TrhWBRjPwYRPfgANv25YCy3EO5uATZZd8k= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1763597891021523.9157335236929; Wed, 19 Nov 2025 16:18:11 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vLsMD-000372-4n; Wed, 19 Nov 2025 19:17:05 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vLsMB-00036s-Cr for qemu-devel@nongnu.org; Wed, 19 Nov 2025 19:17:03 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vLsM9-0007PC-Si for qemu-devel@nongnu.org; Wed, 19 Nov 2025 19:17:03 -0500 Received: from mail-wm1-f69.google.com (mail-wm1-f69.google.com [209.85.128.69]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-88-wVHt3bmoOfGGvuKdLAh0jg-1; Wed, 19 Nov 2025 19:16:58 -0500 Received: by mail-wm1-f69.google.com with SMTP id 5b1f17b1804b1-47777158a85so5166345e9.3 for ; Wed, 19 Nov 2025 16:16:58 -0800 (PST) Received: from [192.168.10.48] ([176.206.119.13]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-42cb7fb9022sm1965265f8f.36.2025.11.19.16.16.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 19 Nov 2025 16:16:54 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1763597819; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=pyGxYNW5IV1mR/jWc9nz65+A1YzvJPGyS3EIkWGspqo=; b=K5pZZq+LS+kV4NVjAYYifrdl8wO49Gn5FzOVwgdHQ2/89M9UGuNO70sB/piRGbaxvUpaw8 3a40SK4zc280zGczFxmXI7FU3CDodXtNKf69Izi6BMvU8AdBFmy0vrMDEkID7iZ5+wY4xh +WrJhBAqpQTThUWriV/Ed7MsEs3Kq84= X-MC-Unique: wVHt3bmoOfGGvuKdLAh0jg-1 X-Mimecast-MFC-AGG-ID: wVHt3bmoOfGGvuKdLAh0jg_1763597817 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=google; t=1763597816; x=1764202616; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=pyGxYNW5IV1mR/jWc9nz65+A1YzvJPGyS3EIkWGspqo=; b=Yn/JCrwPz6iI3JpV949xWxHmhLMCx1DP7EuRVYVA8APa+nO657vg/xKFGFfD5jUZcE TR0qRwTTWVYyrd7shPpYPg7auj4WVEh7zj7Zb+BhsuxZK9znW3Oa52cb6N2tT4xel/ry 2S+iTK2y9avsdyPGWrbxRLpO7Vl32lW2Z4TEeiFHJMv8Vh1JWStUgIfiiGNow9vdHHdB JUFv5RoP2MUhizJ/iB0Fwu+RvAKR+TvW1jJ79sr+mcGfyP4fH94qMF2DouVAF7N2rUGC QaloeMjpeAs6/Ou5BXaNM/nYZpDu67Fv3Ho9MXvmY5MvexGqk9PI1Mk5FbVVwZs6LP3p nGgw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1763597816; x=1764202616; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=pyGxYNW5IV1mR/jWc9nz65+A1YzvJPGyS3EIkWGspqo=; b=HJ/clZPWJxK1Xd1KKtlUEZbhfhzdKubmd5YOrjQPqiVE491TRzmJK26jyyjiJyZ5tc iopQKk0g7uGkTZmAvjUpBfCt7S9XorXM0OWVHk63FiIK2DCZ//V6Qqv/QWFRsxWACq7x eealFFrNm8A/gbgy4GmeZ9cg4bsls04Pf1oodoGHaVwiwuVl7/9BwiUkYFVgUBQswBPN 3Kk7ImTxNLmFjM65vJ7JfJnXxBS5CGbO2881KOTzz6fGvp9d1HZ9lwp8e174w4zFguwb D+4cRKXSnn/kglFr0wnMKnWzUJTzRtVnt2llqzdODe/QYwH2D1Vtwx6CMjliUY+978S1 u9Ug== X-Gm-Message-State: AOJu0YzSXxDxfsoM88nQ73qExzx2Q/nuPkso88dgGoYaOUVsyzjle66g qR4rSoZ75a87CrjxC279LcG8feL6B7Of62vDbUAKgiMadtaSELWmw2tHIzejGCyyhf7MSVaRjOK Cc4/RqWvNtjMEYWWBU/GbVekdedJD8yROKfkaskQdJRbE2l/hFrNVL1fdXQY+PeRrOqbGO/+Lm7 gnNSkdHAihqzfMI5+Nik+1lU//Varj3iJEXBv9Fb0p X-Gm-Gg: ASbGnctJgmmm/1kMlPTzZ+ldQyP/HKyE2R7WKsp+A5n53/jQVSforVNQjTvIPJyjnSa 4TtjSdyhdP6eVKGVylLklsZDAycRrz4sOF5DfFlLkLYhtlmj+YHfKu68dyNBTmgWW66nM2qSZfH 6UTP6aNlo7z4vQEc/7Iwulz1wWEZoa6fMYe/o8ThvUYkP1snbb9ODO0e8uXLYHFCis4pTpuUk4p t2jULTN+hN03eoFiXSADYlqyoDxxoWbihNcrloWu2yDO6AEWiFet1Pe2Cj2olBgUihj77g8IFTy mambn8LNM62ptttgjSOhXEKV3FOQnrtHdjNMSo6x2PaazcE/qU+HPVtJzEe6T6q67mzVJnq2gWG UsB84gl+2/HGA861gjlGyaeBKPKGvIAlRQwOcX/PgttPo7RR7ut1v5cHGuJTf7tSlYx8BKxwOA/ /WMbDL77AJXEoDqiw= X-Received: by 2002:a05:600c:5490:b0:475:dae5:d972 with SMTP id 5b1f17b1804b1-477b8a90470mr11069485e9.23.1763597816271; Wed, 19 Nov 2025 16:16:56 -0800 (PST) X-Google-Smtp-Source: AGHT+IGQ8DQ3mw2eXmW1Ae4dkwMy8vr6W4MnSf2zlUNdKAHSQEmtBHxgdOPA8vu2dAanpS6wGt63EQ== X-Received: by 2002:a05:600c:5490:b0:475:dae5:d972 with SMTP id 5b1f17b1804b1-477b8a90470mr11069415e9.23.1763597815846; Wed, 19 Nov 2025 16:16:55 -0800 (PST) From: Paolo Bonzini To: qemu-devel@nongnu.org Cc: Nguyen Dinh Phi Subject: [PULL 02/10] target/i386: emulate: Make sure fetch_instruction exist before calling it Date: Thu, 20 Nov 2025 01:16:41 +0100 Message-ID: <20251120001649.1085913-3-pbonzini@redhat.com> X-Mailer: git-send-email 2.51.1 In-Reply-To: <20251120001649.1085913-1-pbonzini@redhat.com> References: <20251120001649.1085913-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.133.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1763597892314019100 Content-Type: text/plain; charset="utf-8" From: Nguyen Dinh Phi Currently, this function is only available in MSHV. If a different accelera= tor is used, and the code jumps to this section, a segfault will occur. (I ran into this with HVF) Signed-off-by: Nguyen Dinh Phi Link: https://lore.kernel.org/r/20251114082915.71884-2-phind.uet@gmail.com Signed-off-by: Paolo Bonzini --- target/i386/emulate/x86_decode.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/target/i386/emulate/x86_decode.c b/target/i386/emulate/x86_dec= ode.c index 97bd6f1a3be..d037ed11420 100644 --- a/target/i386/emulate/x86_decode.c +++ b/target/i386/emulate/x86_decode.c @@ -77,7 +77,11 @@ static inline uint64_t decode_bytes(CPUX86State *env, st= ruct x86_decode *decode, memcpy(&val, decode->stream->bytes + decode->len, size); } else { target_ulong va =3D linear_rip(env_cpu(env), env->eip) + decode->l= en; - emul_ops->fetch_instruction(env_cpu(env), &val, va, size); + if (emul_ops->fetch_instruction) { + emul_ops->fetch_instruction(env_cpu(env), &val, va, size); + } else { + emul_ops->read_mem(env_cpu(env), &val, va, size); + } } decode->len +=3D size; =20 --=20 2.51.1 From nobody Thu Nov 20 12:30:00 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=quarantine dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1763597872; cv=none; d=zohomail.com; s=zohoarc; b=RbvR/v8wIXj1bOiWu1ylzJUutQ+0dsZ6olAJ/YCopGC0+Q/cxfLChsw6qqtWeltN0p6hj5m9if5Y9xd+cGaL+sxjSABLUSwzHHWcUxRTPiLVX/v33MwF5EkNYVQVJAdusJHDjrR1wXwTWFbjoZzuFaeiewyS40iQmnV7LS/eNyI= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1763597872; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=VScUxvTA0V9fVcKlY6sj0omEw5O4+ANSWsdN9yl+u+8=; b=hi4+ycOCsO20WDGgfvc+NAbSlfRhaBP0VqcY3gCt2UfC6yJgcoLGEzm3i8zVfCnOw/jj8U2bmID+jtS/64jv5M88QZf/cK6J2d1nMX7zvJMV1uMnj9ikuFYlVZJs334hrm5agHVtg+re3NVvP9KE/Oahv/kk1EZURzlCyaVyUQ8= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 176359787296777.32090274105406; Wed, 19 Nov 2025 16:17:52 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vLsMF-00037a-0m; Wed, 19 Nov 2025 19:17:07 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vLsMD-000373-7y for qemu-devel@nongnu.org; Wed, 19 Nov 2025 19:17:05 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vLsMB-0007PP-HA for qemu-devel@nongnu.org; Wed, 19 Nov 2025 19:17:04 -0500 Received: from mail-wm1-f69.google.com (mail-wm1-f69.google.com [209.85.128.69]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-488-1-kz-T8LN-uYG0X6v3akzA-1; Wed, 19 Nov 2025 19:17:00 -0500 Received: by mail-wm1-f69.google.com with SMTP id 5b1f17b1804b1-4779981523fso4306215e9.2 for ; Wed, 19 Nov 2025 16:17:00 -0800 (PST) Received: from [192.168.10.48] ([176.206.119.13]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-477b0ffe377sm75071285e9.1.2025.11.19.16.16.56 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 19 Nov 2025 16:16:56 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1763597822; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=VScUxvTA0V9fVcKlY6sj0omEw5O4+ANSWsdN9yl+u+8=; b=VkuYf8eHqB4T1jUH5WNT7/IKL1FteZDMJRyeFbbh+a6ImgH9nMAD19PoK2R8qGOQA86Bq5 38+tqupF44s7oYJAqyag59+RRlNw1r6vrIbAJohqyfc5dDvvjGZHjGa0Y6WAYkBluM4sDu jFjtlbG6c+Dpnr8mbSzdRxLSeDcm7VQ= X-MC-Unique: 1-kz-T8LN-uYG0X6v3akzA-1 X-Mimecast-MFC-AGG-ID: 1-kz-T8LN-uYG0X6v3akzA_1763597819 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=google; t=1763597819; x=1764202619; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=VScUxvTA0V9fVcKlY6sj0omEw5O4+ANSWsdN9yl+u+8=; b=sJxaOqSkvDgMIEVOhWWjt64iqub9v5HlF9XYvhqkrdFt+9y0Q5qLy49hcuLvIG/NZc tGfmS4eQvNsUUPuh8TW2Cxj7OEA4CAUKCBZXegh057a37eX8SjKk1wXly7O89+GewcTU AqdkxFLLh5nXuW4aLVRe1Jq2xIjw9airGab33HlfWoIweWmmoi6/0j0xdTM3zbmEK4+0 l0iAkZP/TLEFtJj0gOBJNCAlAtX9KDJAZXyzGqaB5hVAGxNjgNbSUM7keEIOSNREqhQK 2fFB+Lbsr3iwr7zefVspgRpaTAIslWpO4z2hPqgHUtXCNqMWGWiRMg/0z1kwQAlYpE99 lEPw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1763597819; x=1764202619; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=VScUxvTA0V9fVcKlY6sj0omEw5O4+ANSWsdN9yl+u+8=; b=mRgcinwgb9Zk+tFTdlrESdtTRLKzO0n83WGuJxVwdchtpcHP2BLavHqF1tM/ceDist siAtSFmCE07KE5AOG5Ja/QfKPJJyB8SyLB0VeYZWaz8BStN+6ghmrNjgaUBuJQw+50Fg Cmuxdm6eV6EvDAntE2zUdq+esZ314bFyASch48O/Zo4QL5565mAe2z88liavic3t6hqN jhojPYhWGkN6UUKFkWM7GqxeXB4axGcwL6UAqATCvRLjHv+SPkyhh4c1sBj2VAn1b05K D+Gu+ViGEcIV2m0sCJskLOGmOqdfe+5RjvUm8/4WYmmun+I1IjEnWChgRoEw10wP/vd1 1krQ== X-Gm-Message-State: AOJu0YzT/jDHr3B/Pp0V4Xs8z6AXVWic6pyasPJdQHwOpin5Uil57V1d pYdaj202jR0dV7nDu3uXoXWPcMgEDdD7+yHriU2G55aSgch9czuEpsNjmbLhfFCKDc72kCtVEHl hJPXfqGC1HoPJHk5hwKNDzfQlMPw+IorzNXkN0KkAdDd5vqDcTYd+VwUVPSZ74vwmURprS4GKbF XBxCMyoF40ZUYd1VAnurBq7qN4SbiAhNY7iFdbsDzT X-Gm-Gg: ASbGncv87S4JsGmcOlb5E3n0UkuYOBUd8m9uzfTfI5Q5923FVNpTPZ8S2HOqcgb03VL rJOC9zoA3yxyAAxQ+sPxkLDfSMLNK+mDKaaVzOphu9bB2lAP5W5/2cPWqdtd4eb5GCXHMxTDyH6 uIkehlwAWBFVkAjP2Xpk5UVXJHf1DWXSDLI00tTZ2o21PL4gTNvzMaqaEM1XKhhwD2RQOfqx9lq swMv4dKRADLXbCZB9D4+OVbRAUnrxV8CxRkDLHnNpoR3KmFpxRB1j4lZ/4yQU/p11UdVOKJcN93 lJeSaLaaDjS8Z+Ikx3eTXfmT9ykzFdCGBQk+FhabnjwD1HWc+bVUvdLyIkjQao6l1TzoC9cVZM+ subalDmF3Ptk0kxO/r3Sd9tgNeJCW7BiOETe7e1z6e3xAWsOJTIc6U4GXzAbNccn9HGT09TPMHX /lJXSVk/VEspvcDXU= X-Received: by 2002:a05:600c:45d0:b0:475:dde5:d91b with SMTP id 5b1f17b1804b1-477b8a84acfmr9946305e9.17.1763597818690; Wed, 19 Nov 2025 16:16:58 -0800 (PST) X-Google-Smtp-Source: AGHT+IF+82/zn492FLmKBZZofCi3g95NICfGS9SNuYpReGiEDkp2DBIyWfUUBuom2BoRCvvFpC0HqQ== X-Received: by 2002:a05:600c:45d0:b0:475:dde5:d91b with SMTP id 5b1f17b1804b1-477b8a84acfmr9946115e9.17.1763597818330; Wed, 19 Nov 2025 16:16:58 -0800 (PST) From: Paolo Bonzini To: qemu-devel@nongnu.org Cc: Peter Maydell , qemu-stable@nongnu.org Subject: [PULL 03/10] target/i386: Mark VPERMILPS as not valid with prefix 0 Date: Thu, 20 Nov 2025 01:16:42 +0100 Message-ID: <20251120001649.1085913-4-pbonzini@redhat.com> X-Mailer: git-send-email 2.51.1 In-Reply-To: <20251120001649.1085913-1-pbonzini@redhat.com> References: <20251120001649.1085913-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.133.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1763597874817019100 Content-Type: text/plain; charset="utf-8" From: Peter Maydell There are a small set of binary SSE insns which have no MMX equivalent, which we create the gen functions for with the BINARY_INT_SSE() macro. This forwards to gen_binary_int_sse() with a NULL pointer for 'mmx'. For almost all of these insns we correctly mark them in the decode table as not permitting a zero prefix byte; however we got this wrong for VPERMILPS, with the result that a bogus instruction would get through the decode checks and end up in gen_binary_int_sse() trying to call a NULL pointer. Correct the decode table entry for VPERMILPS so that we get the expected #UD exception. In the x86 SDM, table A-4 "Three-byte Opcode Map: 08H-FFH (First Two Bytes are 0F 38H)" confirms that there is no pfx 0 version of VPERMILPS. Cc: qemu-stable@nongnu.org Resolves: https://gitlab.com/qemu-project/qemu/-/issues/3199 Signed-off-by: Peter Maydell Link: https://lore.kernel.org/r/20251114175417.2794804-1-peter.maydell@lina= ro.org Signed-off-by: Paolo Bonzini --- target/i386/tcg/decode-new.c.inc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/target/i386/tcg/decode-new.c.inc b/target/i386/tcg/decode-new.= c.inc index f4192f10068..805cfd08e83 100644 --- a/target/i386/tcg/decode-new.c.inc +++ b/target/i386/tcg/decode-new.c.inc @@ -643,7 +643,7 @@ static const X86OpEntry opcodes_0F38_00toEF[240] =3D { [0x0a] =3D X86_OP_ENTRY3(PSIGND, V,x, H,x, W,x, vex4 cpuid= (SSSE3) mmx avx2_256 p_00_66), [0x0b] =3D X86_OP_ENTRY3(PMULHRSW, V,x, H,x, W,x, vex4 cpuid= (SSSE3) mmx avx2_256 p_00_66), /* Listed incorrectly as type 4 */ - [0x0c] =3D X86_OP_ENTRY3(VPERMILPS, V,x, H,x, W,x, vex6 chk(W= 0) cpuid(AVX) p_00_66), + [0x0c] =3D X86_OP_ENTRY3(VPERMILPS, V,x, H,x, W,x, vex6 chk(W= 0) cpuid(AVX) p_66), [0x0d] =3D X86_OP_ENTRY3(VPERMILPD, V,x, H,x, W,x, vex6 chk(W= 0) cpuid(AVX) p_66), [0x0e] =3D X86_OP_ENTRY3(VTESTPS, None,None, V,x, W,x, vex6 chk(W= 0) cpuid(AVX) p_66), [0x0f] =3D X86_OP_ENTRY3(VTESTPD, None,None, V,x, W,x, vex6 chk(W= 0) cpuid(AVX) p_66), --=20 2.51.1 From nobody Thu Nov 20 12:30:00 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=quarantine dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1763597924; cv=none; d=zohomail.com; s=zohoarc; b=LA58BewMo6/rtgDBN9YHMmxPcEqwicKbSSxtReRcKoYp7SSA78XSVAdMvQpIe9iHQoDFPugiJl1clzkBQiLAeeAwlQDq34ZV4KvPtTmSCbSLo1H8zkTOBl69bmsN0AH2sE8vDV0+/lCiOqXjQoy1CJ84u+zXbbitOU/qo0BbUUk= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1763597924; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=2TndT4OS9g9ZV9Pv6S9WKvqcKhsN3Lm5nxn+5ird3ts=; b=aahUyembIswF+pjmDZ4Zd+1RZdO21ZeiIJRVN0IHDXrmZU37v2H+IX3clkX3ptcwqUgJWbRGV+lZs/Q4prpjwk1PJo0++xj0RET/eTfFMDsVOJYnAv/46sq8SJhK+bJxjvYRyxJRiMTVjiocMs6X492QIfjbgw480L0Slx4K0eM= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1763597924159331.34718719747127; Wed, 19 Nov 2025 16:18:44 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vLsMH-00038f-QX; Wed, 19 Nov 2025 19:17:09 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vLsMF-00037p-9d for qemu-devel@nongnu.org; Wed, 19 Nov 2025 19:17:07 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vLsMD-0007Px-Gv for qemu-devel@nongnu.org; Wed, 19 Nov 2025 19:17:06 -0500 Received: from mail-wr1-f72.google.com (mail-wr1-f72.google.com [209.85.221.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-332-x15IepWOO4q7gPRZjBZQgg-1; Wed, 19 Nov 2025 19:17:03 -0500 Received: by mail-wr1-f72.google.com with SMTP id ffacd0b85a97d-42b2ffbba05so128053f8f.0 for ; Wed, 19 Nov 2025 16:17:03 -0800 (PST) Received: from [192.168.10.48] ([176.206.119.13]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-42cb7fb8ff3sm2052149f8f.29.2025.11.19.16.16.59 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 19 Nov 2025 16:16:59 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1763597825; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=2TndT4OS9g9ZV9Pv6S9WKvqcKhsN3Lm5nxn+5ird3ts=; b=LYzrl3cUs9bqdmk++EfvJxD3UoVpHpzYKCQKjZOGzRYFf/7Y3ybVMUkUByA661nSMCUA0G bdfg3tOzzyj+nen05y1DGOs/ib9ti/x7pxTI7KVYzUnhIvJL5Jb4/TrFbloMuZ3QQvCK6q HgYr5pYBPa47Ugi16lYAE5E1m97GFJA= X-MC-Unique: x15IepWOO4q7gPRZjBZQgg-1 X-Mimecast-MFC-AGG-ID: x15IepWOO4q7gPRZjBZQgg_1763597822 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=google; t=1763597821; x=1764202621; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=2TndT4OS9g9ZV9Pv6S9WKvqcKhsN3Lm5nxn+5ird3ts=; b=r3+XLwvdxhXgQJ3OyShxTW4qekVdDj+9w5v/YKNUChz5FZskoWpl66QvYA51Tw+lmt RKQsHbjwcYJ+uNx/Fa19wLW0jSSNCqFwm2dNRKXwG9a0uJTPDbax3830vDHzGX+r7tll OBI/HtA5Z58wQRmrqTlU2zbK3/XVbmZH4yo64QhdPm4tp9pX8IVQHPI8RIGwYQMR3T+Z j10nR74oIrVZUkH874fFImAj7pCOOqiPGxjSOWmLI4/PHpdh6N2/EVY3+nfmJnHyXiFl iN3P1y/DJja5AMz7RW5W/qumOoJ7JIh99EyE3J4OUsYbu4SVgRxx21zmpfZRE184A+1q B0Uw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1763597821; x=1764202621; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=2TndT4OS9g9ZV9Pv6S9WKvqcKhsN3Lm5nxn+5ird3ts=; b=QRBl/Os9v9DevrncIhtZvzcr2dPMr3cAR0qBEMK19TEiHRw/cy+WlG3s8PGH+nBjFN 4ELvfjPc7QA4pW1kOh4aTzKqmVl9WDAJk4OcF7JNk31aIZCUHdTpohkv35d35BUevmc4 VhVVBSSoGDQHWT65KmNVW+WxLVNJ69O5ehQirAmk8GNSkiOgFKuiuKq9QoYoUHSO6spE Om6YMFL50M8tkUyiGJX8cbJvKphLiMG9w0YyN0wHaxmE0Fv7qYavbKbmopzkoPbJzHXK UV6q0f1m5SmK+PliyLTEJ95CpNre+KYDz8i4g3+AWfezplhQiVkwJp3KQe5irL7z13l0 mv6A== X-Gm-Message-State: AOJu0YxpkS/wrDr979gy9DK1UuDV6OqLR+cuqtDMdwJKiorDrGXua29W 3IiYwc4w4w7IOFOZNwxBAtpLaUK8nWWyVnWoQPIYy3zh5lk75btC2F4yk9VUKFLMvUjPR2DFVsh QmypvZgr9RQhve/8yr661474ZxklaXyzZJlZQVEMdZm74wOpKRFdfvWxkhAQKNrsj/oZnD7sGa6 3JYXSWb1No/84n1apfYFUtkPbWa7UpEAz078V+DKgT X-Gm-Gg: ASbGncs3ALuYANHM8x6K42uUg1ZJmsMnrGt+Rc/liyMQ4QAtaqVyRTLdXWXdb3aWDn7 vJp8fdDxTmE8CvdgyUwaIqw+sszheUGQGwC63WlyU3NnSQtSTi+7exancBRqLRuo9lRXmenFE+Z UxBpLsTDqq8n0DiLXj8Z7iVh2fUYoRdX/DDrdpoUYufC4fgMW4WCJWuUjSph1GREDbyown3Q3F7 r0wi30j89gSABT/LLttGVKylF53//9OYz0H1cbqfzd4oGCsV4h3ar78mFFZPuwyVy+EGsolmYqI PzmDD+M8pd7T+TDYqCwfCXgxlb4bciVB2bfDenlWTilg7o1C3afmK9GkrJug5U4PzgofgaDIWzI G7sHwwdVsJ4930HoYeo14o9k+pAJSWF729ehm0RA10IhN6aKjs94dEnA2StdsAwuB4ZLMcUEPwU 2CLdw1CSSUfP0Tiso= X-Received: by 2002:a05:6000:1ace:b0:42b:2e65:655e with SMTP id ffacd0b85a97d-42cb9a6069cmr553984f8f.27.1763597821470; Wed, 19 Nov 2025 16:17:01 -0800 (PST) X-Google-Smtp-Source: AGHT+IELgrqmdJOT/QSkVZtF94mQ6wlNG4CcEftZTO2S11NjB4+HK1LGKGquWRyUz3L5Zrtoy8Xj3Q== X-Received: by 2002:a05:6000:1ace:b0:42b:2e65:655e with SMTP id ffacd0b85a97d-42cb9a6069cmr553965f8f.27.1763597821049; Wed, 19 Nov 2025 16:17:01 -0800 (PST) From: Paolo Bonzini To: qemu-devel@nongnu.org Cc: qemu-stable@nongnu.org Subject: [PULL 04/10] target/i386/tcg: validate segment registers Date: Thu, 20 Nov 2025 01:16:43 +0100 Message-ID: <20251120001649.1085913-5-pbonzini@redhat.com> X-Mailer: git-send-email 2.51.1 In-Reply-To: <20251120001649.1085913-1-pbonzini@redhat.com> References: <20251120001649.1085913-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.133.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1763597926026018900 Content-Type: text/plain; charset="utf-8" Correctly reject invalid segment registers, including CS when used as the destination of a MOV. Ignore the REX prefix as well. Fixes: 5e9e21bcc4d ("target/i386: move 60-BF opcodes to new decoder", 2024-= 05-07) Cc: qemu-stable@nongnu.org Resolves: https://gitlab.com/qemu-project/qemu/-/issues/3195 Signed-off-by: Paolo Bonzini --- target/i386/tcg/decode-new.c.inc | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/target/i386/tcg/decode-new.c.inc b/target/i386/tcg/decode-new.= c.inc index 805cfd08e83..0f8c5d16938 100644 --- a/target/i386/tcg/decode-new.c.inc +++ b/target/i386/tcg/decode-new.c.inc @@ -2059,7 +2059,12 @@ static bool decode_op(DisasContext *s, CPUX86State *= env, X86DecodedInsn *decode, =20 case X86_TYPE_S: /* reg selects a segment register */ op->unit =3D X86_OP_SEG; - goto get_reg; + op->n =3D (get_modrm(s, env) >> 3) & 7; + /* Values outside [CDEFGS]S, as well as storing to CS, are invalid= . */ + if (op->n >=3D 6 || (op->n =3D=3D R_CS && op =3D=3D &decode->op[0]= )) { + return false; + } + break; =20 case X86_TYPE_P: op->unit =3D X86_OP_MMX; --=20 2.51.1 From nobody Thu Nov 20 12:30:01 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=quarantine dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1763597877; cv=none; d=zohomail.com; s=zohoarc; b=CjQ1yy5OXsyg0FcpJ9mGjHkUXy41RY96ZgdrC3ot/f/ahPis5xWQ+LO+YnOgrCmTM0FseSvgGGykKin6sWrQbevA0lxKME2cLRyZngkIYm7w2cnI2rNFhDqroMNcBfVEqNpDmJ4inaJLCJr7D3YJSajTBKXnje7mjEpgIz7WyGA= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1763597877; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=+VnR7WQ4phvEKh0Jwt424ldKYy6fvpgQ+MNLeSCq/oA=; b=Jx1RfCNI7aZsm4bJBO2ahlRgp12EIAoeEtWx30Sh/Q//TIVPLwdizsozUfdINV3pysapnoKTPUPFrSfLIA1YR1TVNBfUdhWDQhT6Z96+Mdb8SnGKLPee3A0OnKjbEph+JVmkjnOUcXyimCdwPvdgIWgtTDcqv39X2F6OTvKD+jo= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1763597877368579.5292973026164; Wed, 19 Nov 2025 16:17:57 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vLsMK-00039l-Qy; Wed, 19 Nov 2025 19:17:12 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vLsMH-00038g-PN for qemu-devel@nongnu.org; Wed, 19 Nov 2025 19:17:09 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vLsMF-0007Qh-VU for qemu-devel@nongnu.org; Wed, 19 Nov 2025 19:17:09 -0500 Received: from mail-wr1-f71.google.com (mail-wr1-f71.google.com [209.85.221.71]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-218-lV0o60ajPtiag8ua0lqAjg-1; Wed, 19 Nov 2025 19:17:05 -0500 Received: by mail-wr1-f71.google.com with SMTP id ffacd0b85a97d-42b352355a1so664924f8f.1 for ; Wed, 19 Nov 2025 16:17:05 -0800 (PST) Received: from [192.168.10.48] ([176.206.119.13]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-477b10804c8sm76635165e9.15.2025.11.19.16.17.01 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 19 Nov 2025 16:17:02 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1763597827; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=+VnR7WQ4phvEKh0Jwt424ldKYy6fvpgQ+MNLeSCq/oA=; b=LA6wBKTvMI3mSaJJGuiK1czNv/uhDJn8Ngjk8c2/YKVxfZDmn+gxpE9TAXPTpvm11jURbk sxior2efXxkyyUZ7K+KOO7ftF5DLAtFi14ud7H6GCPReS6A4oowr0ouvdwSY9KIJzkOyhL V6F/k60glGhF7jlzo3CWjK4g792DtmU= X-MC-Unique: lV0o60ajPtiag8ua0lqAjg-1 X-Mimecast-MFC-AGG-ID: lV0o60ajPtiag8ua0lqAjg_1763597825 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=google; t=1763597824; x=1764202624; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=+VnR7WQ4phvEKh0Jwt424ldKYy6fvpgQ+MNLeSCq/oA=; b=nrl5YH79EV9Exw0vWDfpwKLCUEyTNL03+jDc3rtjc9koUUdCeHqvpIS3F+/iIQi6Ui O1bB5WvrEQhd+7jekB/xCsef6evVpO2ES3fyblrIrmDEVB3r/i3uZezsNJuwZ2mBxuco ptMbEbkIDEZQbbWmWpvRYh+STMGzp96Dtue8eEo8gwCO/dZGHqgdRuiX5oCvEr3TUqrj mynJAs6r980m96Usth7cIomZlfovZumnO6TcP3Vo5/nHIZ0URTndsavV6ubsHyVXwbAL CGsXgB8eJ1TrXlRaIN+aIM6Nk6B2lnlp12H1avGYdAI7ECODbhWasY2EHazt2MH224iF LDKQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1763597824; x=1764202624; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=+VnR7WQ4phvEKh0Jwt424ldKYy6fvpgQ+MNLeSCq/oA=; b=LmXAG2Fe48nhU0PRDg7qClExcDn1ftIZ4tm9ZfnD6TAzv6xRc824wblBUd/YaFKfYB las3kZxF2r+zREDuVWavpUUq185bB6Lqv9A2ofRtoFKdl3igK4qb9vZjgFA1CCR8cTMR Qoddi4tSFdNeu5qbsm12Sp3gjeY6IHuy5djUH84KqoDwkMDUgCich+ce1p8gV6gEgR+c uz0rYbHNoXwoxjSScJLXfidU3Rf2fmOQzICIzayIInJ/trO1aNfSGfJ7HLW7LeWMXy3H 9mBubZE6EJdkRvKSHyM5/+DyyhawaBivSxmbF0BrHbYaBr0G8F9VT4gUBEBhV8CWlHTo YOzQ== X-Gm-Message-State: AOJu0Yx7/xqjpeK+weR+ZG9g5/Qe4BGdjSJWtGlrgzxJKCYs8Y6P1gJU V+7T/IqQsdTyzP5xWJVB/L2erb2XBsljjgmqndtJQfygWWjgEPgelDHgrh6Bqdfdhz7Idpn6154 C5/RHYeCe1WNYJh7AyhL9n85fiy5ye7VCBBTxWhnEUEGj39O/Xx8Nqu9vumguNgJyzun+E4u/zT QkcQO1nhMNW1Af+RAFhmAlmZNh70iPKIJzo9cAipTF X-Gm-Gg: ASbGncv35EZsI67G+9QRdrnxZYH1wilUthaXclKd07jMVvmozrETmztVijPy5OueD9b FGYaodA8RuXz/UpBKxWEj2aUYkt8CHhZC/M1MxFTe/y981ulVsxiQRAKEmK67T6qcOmCTadPFkn BYc6HLHGx0fpn5IRCuX8uq5cxIGXPnSxXWH6doyMJ4XB9piW1X1KQOoA8i4V2MjzY/cILDiBfuU 78KPQ+wEOfDoY7acWaIghNlJ58k9mqfy1TupJ3gJYOjFrjwue4wZqw50Nrwh+nPE/Ng5WjdXwUS qJAUs2/VC1uGmFhhjvaOTJXJ7GgzOX/1uO0Mge1h53olOOvJc4bmGKdEKpaha+SQCvhfHROyKM6 dHztDQaZw12mUFczerkfAIIG+doIIPinl0yiME1J2dINbzatnYN/55mtJv6EROc/7w7+NVMgmx1 ussmsGdYiH+a50b7c= X-Received: by 2002:a05:600c:5952:b0:477:3fcf:368c with SMTP id 5b1f17b1804b1-477b9ee4fbfmr2115715e9.9.1763597823842; Wed, 19 Nov 2025 16:17:03 -0800 (PST) X-Google-Smtp-Source: AGHT+IHNPTSYh1ymhmLyrT7IPljGvzm4VXNO4iGtc/i1HKup8BrNsnZ0PnP/2mI5ru6Hdtz0fPeAlg== X-Received: by 2002:a05:600c:5952:b0:477:3fcf:368c with SMTP id 5b1f17b1804b1-477b9ee4fbfmr2115565e9.9.1763597823456; Wed, 19 Nov 2025 16:17:03 -0800 (PST) From: Paolo Bonzini To: qemu-devel@nongnu.org Cc: qemu-stable@nongnu.org Subject: [PULL 05/10] target/i386: svm: fix sign extension of exit code Date: Thu, 20 Nov 2025 01:16:44 +0100 Message-ID: <20251120001649.1085913-6-pbonzini@redhat.com> X-Mailer: git-send-email 2.51.1 In-Reply-To: <20251120001649.1085913-1-pbonzini@redhat.com> References: <20251120001649.1085913-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.133.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=unavailable autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1763597878032018900 Content-Type: text/plain; charset="utf-8" The exit_code parameter of cpu_vmexit is declared as uint32_t, but exit codes are 64 bits wide according to the AMD SVM specification. And because uint32_t is unsigned, this causes exit codes to be zero-extended, for examp= le writing SVM_EXIT_ERR as 0xffff_ffff instead of the expected 0xffff_ffff_fff= f_ffff. Cc: qemu-stable@nongnu.org Resolves: https://gitlab.com/qemu-project/qemu/-/issues/2977 Signed-off-by: Paolo Bonzini --- target/i386/tcg/helper-tcg.h | 2 +- target/i386/tcg/system/svm_helper.c | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/target/i386/tcg/helper-tcg.h b/target/i386/tcg/helper-tcg.h index be011b06b7c..e41cbda407a 100644 --- a/target/i386/tcg/helper-tcg.h +++ b/target/i386/tcg/helper-tcg.h @@ -99,7 +99,7 @@ void cpu_load_eflags(CPUX86State *env, int eflags, int up= date_mask); =20 /* system/svm_helper.c */ #ifndef CONFIG_USER_ONLY -G_NORETURN void cpu_vmexit(CPUX86State *nenv, uint32_t exit_code, +G_NORETURN void cpu_vmexit(CPUX86State *nenv, uint64_t exit_code, uint64_t exit_info_1, uintptr_t retaddr); void do_vmexit(CPUX86State *env); #endif diff --git a/target/i386/tcg/system/svm_helper.c b/target/i386/tcg/system/s= vm_helper.c index 505788b0e26..4b86796518f 100644 --- a/target/i386/tcg/system/svm_helper.c +++ b/target/i386/tcg/system/svm_helper.c @@ -128,7 +128,7 @@ static inline bool virtual_gif_enabled(CPUX86State *env) return false; } =20 -static inline bool virtual_vm_load_save_enabled(CPUX86State *env, uint32_t= exit_code, uintptr_t retaddr) +static inline bool virtual_vm_load_save_enabled(CPUX86State *env, uint64_t= exit_code, uintptr_t retaddr) { uint64_t lbr_ctl; =20 @@ -723,7 +723,7 @@ void helper_svm_check_io(CPUX86State *env, uint32_t por= t, uint32_t param, } } =20 -void cpu_vmexit(CPUX86State *env, uint32_t exit_code, uint64_t exit_info_1, +void cpu_vmexit(CPUX86State *env, uint64_t exit_code, uint64_t exit_info_1, uintptr_t retaddr) { CPUState *cs =3D env_cpu(env); @@ -732,7 +732,7 @@ void cpu_vmexit(CPUX86State *env, uint32_t exit_code, u= int64_t exit_info_1, =20 qemu_log_mask(CPU_LOG_TB_IN_ASM, "vmexit(%08x, %016" PRIx64 ", %016" PRIx64 ", " TARGET_FMT_lx ")!\n", - exit_code, exit_info_1, + (uint32_t)exit_code, exit_info_1, x86_ldq_phys(cs, env->vm_vmcb + offsetof(struct vmcb, control.exit_info_2)), env->eip); --=20 2.51.1 From nobody Thu Nov 20 12:30:01 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=quarantine dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1763597905; cv=none; d=zohomail.com; s=zohoarc; b=DUZpD8kHCLuk4fFa2Vmw4KB3XcFa80Q5wUfOl3NJGnl8ng3Z8m847nO1o/Mlcv+bgwmOImaGwkMaK1IwyJOaHhNN0n0yU3yucEEQZQzIzP4dKlEWRGQHbJBAW1mqr1Fj7HzP3Jb9btBAMZ/QS138Qymki8iz9TuYQIzrgdRHzUs= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1763597905; h=Content-Transfer-Encoding:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To:Cc; bh=BBW85pbyW1JiYUXYRrf6v5xu2V5GcK8qF6OmC8TQVL4=; b=PsRUPwLkVKZFCKjkjlEZ/fH3i94QnSpYJwCdAqNR4H+WTniER0IUl8JmQ3yFj9hHAUgd4XKKVErIV3hcge+QS9NaM7X2hVBbirXccGA6Q+XUo5xpsj9TEyOolgbAWjcASRjc/MUuzH7bzSZ+jjKyVkDdEiHXfcZadNNbRcb6/xI= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1763597905641698.7716237606995; Wed, 19 Nov 2025 16:18:25 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vLsMO-0003Am-1l; Wed, 19 Nov 2025 19:17:16 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vLsMM-0003AE-0f for qemu-devel@nongnu.org; Wed, 19 Nov 2025 19:17:14 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vLsMK-0007RQ-Ci for qemu-devel@nongnu.org; Wed, 19 Nov 2025 19:17:13 -0500 Received: from mail-wm1-f70.google.com (mail-wm1-f70.google.com [209.85.128.70]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-402-OcSFa8JpPvSbWuOcVMKAhg-1; Wed, 19 Nov 2025 19:17:10 -0500 Received: by mail-wm1-f70.google.com with SMTP id 5b1f17b1804b1-477b8a667bcso4031755e9.2 for ; Wed, 19 Nov 2025 16:17:10 -0800 (PST) Received: from [192.168.10.48] ([176.206.119.13]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-42cb7fb8a29sm1903427f8f.30.2025.11.19.16.17.04 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 19 Nov 2025 16:17:04 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1763597831; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=BBW85pbyW1JiYUXYRrf6v5xu2V5GcK8qF6OmC8TQVL4=; b=FerCf5DdMMk1PxSmrE4tsNlKRfmvqfu4fsYT9rSo+frELzWmID33Pmeqb+Zk/WACCu1qz1 mfITx+551epyIUc2d8p2uE2bC8eL19QTgS9ITpZeoFcnC+goC5rBQ5hDZihVxCoUoijxNa VWm+r0eAtiBJRjYZJaIUo8XuELdCEus= X-MC-Unique: OcSFa8JpPvSbWuOcVMKAhg-1 X-Mimecast-MFC-AGG-ID: OcSFa8JpPvSbWuOcVMKAhg_1763597829 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=google; t=1763597828; x=1764202628; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=BBW85pbyW1JiYUXYRrf6v5xu2V5GcK8qF6OmC8TQVL4=; b=Pe5hK9dL/zAaSc9x5jOKftMYcwUeoirOY6fzV88yv0idjQgL/yk0W67XuzWGURBGu1 +ltMiXVL9tymFH25cFJ9u4UHgEZ7VKUjcLfCEGy1vjb5sV76+qN+gWPvZGyxf5Et+QOC Py8GvDAm78xlRIuNKEO+wQ6m77/pc+Sy2Bq/Y6MeQc7hurZN3McVPBcOBSV2lPBFEUce 45CDTf2m7cOOEhTwJUr1VlaBnYenmlUnjei4VqBm39mQWiXKg1xPy1AY7DW4ODmv0dRc o/ZeCSwI97IotdnoQqfNyMzfyXuRcE0Z5BY0zWH72T7Vto1v5Z/x0IYWWul2RO4k3eoi hUTA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1763597828; x=1764202628; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=BBW85pbyW1JiYUXYRrf6v5xu2V5GcK8qF6OmC8TQVL4=; b=qp8E9BWAJPESwDfcfTXceaH68HFBoRjPXmyFcvBOGXgu9XRRtXBmjV5TzexWomMNgK /eFHLwxOmezLpfCpNsGSVoAnxsBtLam+FT9scvbAoew/DR+DU4hYAFcI3zbobAZztuY9 2LJ9dbtuHin0gecBewyU+5VioV0qFZMAv/yVQwjWTfvVTocXOZ1Je4mGcLyOO0jYYcwC /75qWTQXRXE3uw8ozvS3HCRlxdIFt9kfCmd/jicVrLhpdEdIOWjsmXlR8Au863m1QMQI OpHz9VxLgeK2gZXAUbGZsFpqdYaGtRaFNfOuXRU5Voza+kbXDCmc8EjYjAIjdToeZNLI fgaQ== X-Gm-Message-State: AOJu0Yw3sZoXCelLMgaTAqCWZPJpVNXm1B4y+5pYADdHXC4vT46OI/by wuAedhAw2WkqmpsNlfH5Yw8Lh5bb9JjnBtoQUebJHEXxIJ++hf+3kUzfrlXgJudoqkHI61wspgD 4wwYyiQ0b+lLos/kQoSaCP3dA14LXrrJ099VtBGvicH/B1rWPSeHJsk6/ewMKvEhGpolkr6HbcS aRuluGUC07ZlUNQDUw7mY2hm5PKMfHH17AOT7J20uK X-Gm-Gg: ASbGncvKXvh/E44tuHxIDa1bYMpBpm52VktJ99J2jg9nvBcMsFdEnMbcfTv430Z11XC 5NY7cosdup2c0sZgtEiKEWgil9THde+K+qSRrYtCxf0LMpz8d8kNIYGcbhNJYaX6TTeEa040xgR 28C1HRciQIyKXFQz5zIDhM2Cy/WVkXbOYM8CgwQuuwOcRdqFfSALGxS0vcTm9gckVuoeNvZpbyO UCrRNakmBNTUgIhl8rT0rX+YcXkSy6QvLgpz8Dy8t1WoMQhxFAFGVOJIDIiHvdGVoYcYtCZ1gnX PQsm4kp6eh5PpMzKYHp9H7wNlHlb4twVSEWnLk/bUVpARHa+tZuEsupc8FyjyCxE+oSCjJFaiCz bhdKKNh+btOH49HCzT3LS4Mcb6Bxbh0RKXY1b7cKVpa/36Khj9DiqNntDkVMrPLWFIFoA5GH29T 7ezcRcxBYcPi8kBno= X-Received: by 2002:a05:600c:4f8b:b0:477:79c7:8994 with SMTP id 5b1f17b1804b1-477b8a9f74cmr10963975e9.30.1763597827590; Wed, 19 Nov 2025 16:17:07 -0800 (PST) X-Google-Smtp-Source: AGHT+IHhiraFOWeMl5xdxy+IzthTwaC9fPlXW9vvn6cc2zJbPvyMRPj6fHJ3A9aRgpAYXLRpq/f5ow== X-Received: by 2002:a05:600c:4f8b:b0:477:79c7:8994 with SMTP id 5b1f17b1804b1-477b8a9f74cmr10963585e9.30.1763597825876; Wed, 19 Nov 2025 16:17:05 -0800 (PST) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 06/10] target/i386: fix stack size when delivering real mode interrupts Date: Thu, 20 Nov 2025 01:16:45 +0100 Message-ID: <20251120001649.1085913-7-pbonzini@redhat.com> X-Mailer: git-send-email 2.51.1 In-Reply-To: <20251120001649.1085913-1-pbonzini@redhat.com> References: <20251120001649.1085913-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.133.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1763597908293019100 Content-Type: text/plain; charset="utf-8" The stack can be 32-bit even in real mode, and in this case the stack pointer must be updated in its entirety rather than just the bottom 16 bits. The same is true of real mode IRET, for which there was even a comment suggesting the right thing to do. Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1506 Signed-off-by: Paolo Bonzini --- target/i386/tcg/seg_helper.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/target/i386/tcg/seg_helper.c b/target/i386/tcg/seg_helper.c index 667b1c38696..227336c4ef2 100644 --- a/target/i386/tcg/seg_helper.c +++ b/target/i386/tcg/seg_helper.c @@ -1161,7 +1161,7 @@ static void do_interrupt_real(CPUX86State *env, int i= ntno, int is_int, sa.env =3D env; sa.ra =3D 0; sa.sp =3D env->regs[R_ESP]; - sa.sp_mask =3D 0xffff; + sa.sp_mask =3D get_sp_mask(env->segs[R_SS].flags); sa.ss_base =3D env->segs[R_SS].base; sa.mmu_index =3D x86_mmu_index_pl(env, 0); =20 @@ -1964,7 +1964,7 @@ void helper_iret_real(CPUX86State *env, int shift) sa.env =3D env; sa.ra =3D GETPC(); sa.mmu_index =3D x86_mmu_index_pl(env, 0); - sa.sp_mask =3D 0xffff; /* XXXX: use SS segment size? */ + sa.sp_mask =3D get_sp_mask(env->segs[R_SS].flags); sa.sp =3D env->regs[R_ESP]; sa.ss_base =3D env->segs[R_SS].base; =20 --=20 2.51.1 From nobody Thu Nov 20 12:30:01 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=quarantine dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1763597873; cv=none; d=zohomail.com; s=zohoarc; b=J/wZRuHjwxukF6fns28hxa4fHXOpnf75Jh/SHEYIIwLCzlLQBhYfWGVkTKAcpnw/8Nf2VPXirtx7HXIwgU+ZedWm5Svhg/PaG01+cq3RoA/aaS8QauMwjvhzspLjGJ2O+my2DGgH3BN4A2A8uiLq4+nOC3lthingbnO1KbtfVo4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1763597873; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=PjrgbpUYfOKsPhYt0zOmS65cEeXV9hjqSMGsw6ts8r8=; b=Xo+/Ne27SSwPyOrwS89UMLjVXSEwnsZCTMEqzezIj1/uHb2tea5IdG23c8xy2O+DCdj7FRLZNh3IN5Qr0Z8US9PpK4eaD6GQXtHxsXoOSLW4BczGZ+/vr+9XNORnZvlt7FmaoE3tZxu6YnQEIzF1zkrP5HL42mr2EWEM+AZLQSo= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1763597873318709.5421279171754; Wed, 19 Nov 2025 16:17:53 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vLsMO-0003B3-Gz; Wed, 19 Nov 2025 19:17:16 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vLsMM-0003AD-0T for qemu-devel@nongnu.org; Wed, 19 Nov 2025 19:17:14 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.129.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vLsMK-0007RO-7i for qemu-devel@nongnu.org; Wed, 19 Nov 2025 19:17:13 -0500 Received: from mail-wm1-f72.google.com (mail-wm1-f72.google.com [209.85.128.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-231-R_WGEy4qPPeFwHi6RbEVig-1; Wed, 19 Nov 2025 19:17:09 -0500 Received: by mail-wm1-f72.google.com with SMTP id 5b1f17b1804b1-4775d8428e8so2287925e9.0 for ; Wed, 19 Nov 2025 16:17:09 -0800 (PST) Received: from [192.168.10.48] ([176.206.119.13]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-477b0faf295sm77236565e9.0.2025.11.19.16.17.06 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 19 Nov 2025 16:17:06 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1763597831; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=PjrgbpUYfOKsPhYt0zOmS65cEeXV9hjqSMGsw6ts8r8=; b=AEsqoCdC8gXXaU6wQnPXrCQjZ1R6KEV0beV+IYm+6Z3bzzTdSimS0rpk8eouA7rOl2+BFo 7kXXsTk0hM5hpbJ16E3PYK/Sp0s1V68QTyvhA+kpUjVtVgSb0UyMNHeW3V+jVHJR8zqx3F cHXLWeJUpVR0pO0tOefG576BFG89Y4o= X-MC-Unique: R_WGEy4qPPeFwHi6RbEVig-1 X-Mimecast-MFC-AGG-ID: R_WGEy4qPPeFwHi6RbEVig_1763597828 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=google; t=1763597828; x=1764202628; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=PjrgbpUYfOKsPhYt0zOmS65cEeXV9hjqSMGsw6ts8r8=; b=A5GgaT9lnXikqjmXKTQOqegL5XIIVCp442EHY1OC4JZD2hY0u5To2Mbl99j1EJ2xKK jNi8VhnwteMF6mDNyAGzN3w3/3hy0utt4W0lQHb90997yZR89k8X4luZIWxh1YhAK130 EX4BSl1zkynYAxWki5xeLVUjZ7iJavkfVpV8dqHCCHsNZgR1QmdDBTK35pRZx0PQzi8v CLjh/3rxWO2sUe97a7Ff35Koz2pQRkOxoliSbYaBuWUu5m1Bfsx2M/LGiECKEMsIaBng 93WVFbgcvzTtc4ADctEp3Vem7Iz9Z59MHQOmudRSjzfcnxvLeH2HBAAxDiV1cY2tL+WF BEnQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1763597828; x=1764202628; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=PjrgbpUYfOKsPhYt0zOmS65cEeXV9hjqSMGsw6ts8r8=; b=oKEWTZRVss7a0kzPCrvGJG6FnVQimUd8/CZj+pm6DJQPe7FRmfBUHZ1iFhlde/R13d drR+0Z1mShSeUxNEy0RyMqb7Np9c+xjv/2w93Uinjovi3ycytQoz1cawK+UqfuLr9u2/ 4TCrgcCMn+BfNr81g82z6+CCjB7mO1q2xcWbZjWSQXlRW7L14RFbTWpU1xod+PDS+J6h AYrSKwOC+1pEUJjbbTI8ajIdV/LC+r7hLJJNHX4E9Ya80zhGnRPq6nYmY1kalJya7PFh CrVkD7EI4R7sOO5pMkGZuUQDNS3w9hdlWCIIIgU2EJ8O5wk9mLdj1KydtjbkJWmjMu1I tn9Q== X-Gm-Message-State: AOJu0YxjXxamHxh/HQ2/p2m6PdyD/FaX3e6Mb2e4OZGVOmyVKzkeQLpL /fSFaqcAnxD0eurSEhyT7pwSucla5GhoQCyiWlUM+4Ev1oWp6Ezg5pJcUCEeVtzPjHAs+ZJ2WcH dibuU3bGEr8pG6wnO7tWy4kIlmCeM0FJSlLxYk7QEIpBbfV/IJSOEzidu/H7GKWfp0T946HFNjA q3bWeGukkGz4nj9axJ9SgcLKeGSy8JiYBE0lUPkkn/ X-Gm-Gg: ASbGncslhrxsFsqBAI2N4w4SM+zkpVLpZmgYAPoR/8M89TbwwSDhBbkszEb+vGivo+A 064wX9LHb2fcMeEhf0ED4QjFtJPGKNjQpgr8DppvE+ktpjkCkwP+fh+pSkOgji7LrbB6HqzBiP/ 4C5ALmOpvS0tIFsVe7dSBccDUl/pNGrRj+QC7yHGGwykAbn6CbrDoGadsBDuoZ+VCaV5NaeLIXH wJ5AIDZMSOCDlzd0/L+PtK/aogY0p1dtqoUjQGSLYuVp0f/7kurQ3ScvGcOzYcE7t/Y+1fkOcDl hBjN5PzKhWNloHhUti/Aa+Jt+xY5cgWUBYVt3syj9+Vok1o60sfmj1TV8zpq1kLCol0ZXWCLVVt bdOKZETPoz9mvk3o3ohEzTr67MEEk+/vub63uLp1IF4ijlPuxajyXoM9jUD2FulGdaIaTmwaPwE LFtw0IPwyHmI0cD0c= X-Received: by 2002:a05:600c:1d26:b0:471:1717:411 with SMTP id 5b1f17b1804b1-477b9e2bcb6mr3364035e9.24.1763597827624; Wed, 19 Nov 2025 16:17:07 -0800 (PST) X-Google-Smtp-Source: AGHT+IGx0xBXdzhYssstaWGDspIPbTnWACy9UO5URc93InfpHidUh/9lE7UG1+Bh7+EnR4fGgmD+tg== X-Received: by 2002:a05:600c:1d26:b0:471:1717:411 with SMTP id 5b1f17b1804b1-477b9e2bcb6mr3363825e9.24.1763597827191; Wed, 19 Nov 2025 16:17:07 -0800 (PST) From: Paolo Bonzini To: qemu-devel@nongnu.org Cc: =?UTF-8?q?Alex=20Benn=C3=A9e?= Subject: [PULL 07/10] mtest2make: cleanup mtest-suites variables Date: Thu, 20 Nov 2025 01:16:46 +0100 Message-ID: <20251120001649.1085913-8-pbonzini@redhat.com> X-Mailer: git-send-email 2.51.1 In-Reply-To: <20251120001649.1085913-1-pbonzini@redhat.com> References: <20251120001649.1085913-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.129.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1763597880260019100 Remove the "--suite" argument from the .*.mtest-suites variables, and add it only when actually computing the arguments to "meson test". This makes it possible to set ninja-cmd-goals from the set of suites, instead of doing it via many different .ninja-goals.* variables. Reviewed-by: Alex Benn=C3=A9e Tested-by: Alex Benn=C3=A9e Signed-off-by: Paolo Bonzini --- Makefile | 4 +++- scripts/mtest2make.py | 40 +++++++++++++++++++--------------------- 2 files changed, 22 insertions(+), 22 deletions(-) diff --git a/Makefile b/Makefile index 74c2da20372..9fb55dcf330 100644 --- a/Makefile +++ b/Makefile @@ -96,6 +96,8 @@ meson.stamp: config-host.mak =20 # 3. ensure meson-generated build files are up-to-date =20 +ninja-cmd-goals =3D + ifneq ($(NINJA),) Makefile.ninja: build.ninja $(quiet-@){ \ @@ -150,7 +152,7 @@ NINJAFLAGS =3D \ $(or $(filter -l% -j%, $(MAKEFLAGS)), \ $(if $(filter --jobserver-auth=3D%, $(MAKEFLAGS)),, -j1))) \ -d keepdepfile -ninja-cmd-goals =3D $(or $(MAKECMDGOALS), all) +ninja-cmd-goals +=3D $(or $(MAKECMDGOALS), all) ninja-cmd-goals +=3D $(foreach g, $(MAKECMDGOALS), $(.ninja-goals.$g)) =20 makefile-targets :=3D build.ninja ctags TAGS cscope dist clean diff --git a/scripts/mtest2make.py b/scripts/mtest2make.py index 2ef375fc6fb..d7c514243a5 100644 --- a/scripts/mtest2make.py +++ b/scripts/mtest2make.py @@ -8,24 +8,23 @@ import itertools import json import os -import shlex import sys =20 class Suite(object): def __init__(self): self.deps =3D set() - self.speeds =3D ['quick'] + self.speeds =3D [] =20 def names(self, base): - return [base if speed =3D=3D 'quick' else f'{base}-{speed}' for sp= eed in self.speeds] + return [f'{base}-{speed}' for speed in self.speeds] =20 =20 -print(''' +print(r''' SPEED =3D quick =20 -.speed.quick =3D $(foreach s,$(sort $(filter-out %-slow %-thorough, $1)), = --suite $s) -.speed.slow =3D $(foreach s,$(sort $(filter-out %-thorough, $1)), --suite = $s) -.speed.thorough =3D $(foreach s,$(sort $1), --suite $s) +.speed.quick =3D $(sort $(filter-out %-slow %-thorough, $1)) +.speed.slow =3D $(sort $(filter-out %-thorough, $1)) +.speed.thorough =3D $(sort $1) =20 TIMEOUT_MULTIPLIER ?=3D 1 .mtestargs =3D --no-rebuild -t $(TIMEOUT_MULTIPLIER) @@ -34,8 +33,10 @@ def names(self, base): endif .mtestargs +=3D $(subst -j,--num-processes , $(filter-out -j, $(lastword -= j1 $(filter -j%, $(MAKEFLAGS))))) =20 -.check.mtestargs =3D $(MTESTARGS) $(.mtestargs) $(if $(V),--verbose,--prin= t-errorlogs) -.bench.mtestargs =3D $(MTESTARGS) $(.mtestargs) --benchmark --verbose''') +.check.mtestargs =3D $(MTESTARGS) $(.mtestargs) $(if $(V),--verbose,--prin= t-errorlogs) \ + $(foreach s, $(sort $(.check.mtest-suites)), --suite $s) +.bench.mtestargs =3D $(MTESTARGS) $(.mtestargs) --benchmark --verbose \ + $(foreach s, $(sort $(.bench.mtest-suites)), --suite $s)''') =20 introspect =3D json.load(sys.stdin) =20 @@ -72,29 +73,26 @@ def emit_prolog(suites, prefix): print(f'all-{prefix}-targets =3D {all_targets}') print(f'all-{prefix}-xml =3D {all_xml}') print(f'.PHONY: {prefix} do-meson-{prefix} {prefix}-report.junit.xml $= (all-{prefix}-targets) $(all-{prefix}-xml)') - print(f'ifeq ($(filter {prefix}, $(MAKECMDGOALS)),)') - print(f'.{prefix}.mtestargs +=3D $(call .speed.$(SPEED), $(.{prefix}.m= test-suites))') - print(f'endif') + print(f'ninja-cmd-goals +=3D $(foreach s, $(.{prefix}.mtest-suites), $= (.{prefix}-$s.deps))') print(f'{prefix}-build: run-ninja') print(f'{prefix} $(all-{prefix}-targets): do-meson-{prefix}') print(f'do-meson-{prefix}: run-ninja; $(if $(MAKE.n),,+)$(MESON) test = $(.{prefix}.mtestargs)') print(f'{prefix}-report.junit.xml $(all-{prefix}-xml): {prefix}-report= %.junit.xml: run-ninja') print(f'\t$(MAKE) {prefix}$* MTESTARGS=3D"$(MTESTARGS) --logbase {pref= ix}-report$*" && ln -f meson-logs/$@ .') =20 -def emit_suite_deps(name, suite, prefix): +def emit_suite(name, suite, prefix): deps =3D ' '.join(suite.deps) - targets =3D [f'{prefix}-{name}', f'{prefix}-report-{name}.junit.xml', = f'{prefix}', f'{prefix}-report.junit.xml', - f'{prefix}-build'] print() print(f'.{prefix}-{name}.deps =3D {deps}') - for t in targets: - print(f'.ninja-goals.{t} +=3D $(.{prefix}-{name}.deps)') + print(f'.ninja-goals.check-build +=3D $(.{prefix}-{name}.deps)') =20 -def emit_suite(name, suite, prefix): - emit_suite_deps(name, suite, prefix) - targets =3D f'{prefix}-{name} {prefix}-report-{name}.junit.xml {prefix= } {prefix}-report.junit.xml' + names =3D ' '.join(suite.names(name)) + targets =3D f'{prefix}-{name} {prefix}-report-{name}.junit.xml' + if not name.endswith('-slow') and not name.endswith('-thorough'): + targets +=3D f' {prefix} {prefix}-report.junit.xml' print(f'ifneq ($(filter {targets}, $(MAKECMDGOALS)),)') - print(f'.{prefix}.mtest-suites +=3D ' + ' '.join(suite.names(name))) + # for the "base" suite possibly add FOO-slow and FOO-thorough + print(f".{prefix}.mtest-suites +=3D {name} $(call .speed.$(SPEED), {na= mes})") print(f'endif') =20 targets =3D {t['id']: [os.path.relpath(f) for f in t['filename']] --=20 2.51.1 From nobody Thu Nov 20 12:30:01 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=quarantine dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1763597912; cv=none; d=zohomail.com; s=zohoarc; b=l7BkhOjPpLaKh8tDrBUiv9+w/7h9Nc4dLtUkalaTO0eL9SJ9HUhd+LlGi5gXV4Ah/daoAaLRnNaSFX1hMNTb9dO59KYxDC+nSf4ds0Ldiyv/3BNT8w1okC6BdSebNY0/JIVIxXJfhcn3GpEW9Ygc5G7b2tozIQmq7SvLj5LjsaE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1763597912; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=1NK+wIpV+Q2uLt75RKB2mtL15WC7Pac5R8gwVj0dKEA=; b=iMHUMvaPKYCcVnZ+4+sqtYB/PHrJGvTfZOaLW1wG7wTKYGhD84rHa8C+jwdWdxN862mO/FwqggInU5H3kBtnQ7WFgEpoJO3sOo/o6WHtyoIRLeFQEDWrKwCKS8gPyh9Adws+W2jT5bEd+KEd3xuRXZfqP8aDqB9DvMPp9IeuRcA= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1763597912724346.3650325390232; Wed, 19 Nov 2025 16:18:32 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vLsMP-0003BJ-8r; Wed, 19 Nov 2025 19:17:17 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vLsMN-0003AZ-L7 for qemu-devel@nongnu.org; Wed, 19 Nov 2025 19:17:15 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vLsMM-0007Ro-7a for qemu-devel@nongnu.org; Wed, 19 Nov 2025 19:17:15 -0500 Received: from mail-wr1-f71.google.com (mail-wr1-f71.google.com [209.85.221.71]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-542-StYW3iqFPVKEd5Ws7uneoA-1; Wed, 19 Nov 2025 19:17:12 -0500 Received: by mail-wr1-f71.google.com with SMTP id ffacd0b85a97d-429c5da68e5so127775f8f.1 for ; Wed, 19 Nov 2025 16:17:12 -0800 (PST) Received: from [192.168.10.48] ([176.206.119.13]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-42cb7f49a7bsm2035124f8f.19.2025.11.19.16.17.07 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 19 Nov 2025 16:17:08 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1763597833; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=1NK+wIpV+Q2uLt75RKB2mtL15WC7Pac5R8gwVj0dKEA=; b=EFIfDTSFg9xm5rt7r2DeJ+kXAxHBwLLNZHfSVMdUzU1zFu/YAURNSe4Cb4pwEtRBwmXoG+ xib7ftiEsE89cjB3aDqBlXQnDu/1YKKDYowGwZy/DiT0N5y+c7Q63S8GNGE3tZOzmpcstr 3+UvVATJFLvr/AyRG90MsHrs9iJtGWo= X-MC-Unique: StYW3iqFPVKEd5Ws7uneoA-1 X-Mimecast-MFC-AGG-ID: StYW3iqFPVKEd5Ws7uneoA_1763597831 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=google; t=1763597831; x=1764202631; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=1NK+wIpV+Q2uLt75RKB2mtL15WC7Pac5R8gwVj0dKEA=; b=I7uQ5OkY8igmg7kXv8w+grkW+2XrmP5ogKWnYrLPw33aATmAadI6OGNAjgKEwNC8iK BhipSZ8yMSTZieaj3QLKPakx2KiSZpfJYgh0PZm6AUFtquLlP6kcHOJP4xAWiQV5GmMq DXVFHXYW/Z9OCBiQLEOQAa3kheiTX9pJezg2i73CvvA5fcJ1ziEmfbccixINXmpgPC3I iCkawF+MRrL+6er7jZgpDZjNJH/p0yN++uPv2OWine2Vrj98R/nzpTQ/UmUXItOwcRoI OAsEhqZF4F4vKVNnuzWVCL0OjbO46C/5AQxaEG5E2eZr+JYCrv9VUcnKCWcLvnzDn3Iq Qlxw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1763597831; x=1764202631; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=1NK+wIpV+Q2uLt75RKB2mtL15WC7Pac5R8gwVj0dKEA=; b=isffgXBIWAQytr9kkjThv4uTY+OF0HtpPrYeiXAThsN0CgTkIsVyYQ4+cXVjcjimQb hQEgKTenmBUeoOn1M+q/Yk2TNP2kUnKvy12hIdgLiAV8EjBWv3qLEZlwcJCWu7298eyb BihZjnV8BgKgBgZC/znr6cG/lUjTWWsZ+4qKAKeUFuJ/9lnlmQ6lIuNtX6iIzflBGrsJ UT4Dsav3Z18iVFvNRkYgk1Rwz9zX91nqNO1DY+WN3b19/YHkFJvVFlWHo5tdgM0skrzR 4I2zUxe2tf0sUwBNjyC/f0lr+JcvStOw05NYLCyS7MhNlKtj6gYCZDdtKKlxQS7jERT0 +xfQ== X-Gm-Message-State: AOJu0YwA0mBANrFvBB6U/ubQjuM4s6lHNNyVcn/ms0wSKY6oN/YfLlWu /1Qglvvd0q3HK/WlERgpKzHCM8b6UFdzSqZcK3lpqEQaN7ofpDIOvI4R2SDU4yt/i6R3rkkLnf2 TV/+gNtIddiRjmCkNJO5Hyfn5nK2ntvRH0IAGPJ5TXZvnon4wgCyIVsj4VCj0ZEYBpbjKOFP0Ni otedXu+FBnEctI5iAgi4CZ3vfZhf+IbE7iYNdY/Q15 X-Gm-Gg: ASbGncvAEV3A09HiluMvfbFX36MDDlzQftnzrkj4f+K88uqMR+QPCp5nlciqrz/36b+ h3ooLvtIBOWuMXtw3K2ZVQLtflsc3mf9pXHpq8oH1CgGCrwP1ddgkg0r+xHzc6R3LrVLYXLNuNx 6zyq9DIrjO3iQTiY19qTDtRtctRPogd6cDeTmbPvKgiCVe4gvcQI0zkeRqGGL+BA+0GqdG/EXHb t9m0DIIIv3Hxa8QumEz7kb1b2hQ6M7IOgqlYTfiu4Uz1sQghu/8Grfq00tnm1bKMdXb20oug8rB +w5wkFfM3z/oNW3HG3ZhoynXtUzEGmMbgkNbzYBcCnQxBNCPWIp1eBr3tWgGd0wPZRqnFhFNzFO qJZdNOPhxEtp+4uZOkDKgyFyW+sLdLJj9XmHBK/qA9fyq6DEQPNrbgn9SELZ3Pw9jeOCVmTZzbv mJ1hCHOaaIAapvVEE= X-Received: by 2002:a05:6000:401e:b0:425:6fb5:2add with SMTP id ffacd0b85a97d-42cba7b3fb8mr406273f8f.19.1763597830655; Wed, 19 Nov 2025 16:17:10 -0800 (PST) X-Google-Smtp-Source: AGHT+IELPpkpOUTkzLgRq/wJ325bdxTrRVpcXzz0M08oUI7v1aIwnE3H9Xk3L0nohQJ9XoYh507rkA== X-Received: by 2002:a05:6000:401e:b0:425:6fb5:2add with SMTP id ffacd0b85a97d-42cba7b3fb8mr406240f8f.19.1763597830136; Wed, 19 Nov 2025 16:17:10 -0800 (PST) From: Paolo Bonzini To: qemu-devel@nongnu.org Cc: =?UTF-8?q?Alex=20Benn=C3=A9e?= Subject: [PULL 08/10] mtest2make: add dependencies to the "speed-qualified" suite Date: Thu, 20 Nov 2025 01:16:47 +0100 Message-ID: <20251120001649.1085913-9-pbonzini@redhat.com> X-Mailer: git-send-email 2.51.1 In-Reply-To: <20251120001649.1085913-1-pbonzini@redhat.com> References: <20251120001649.1085913-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.133.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1763597914256018900 Thorough tests may have more dependencies than faster ones. Dependencies are now looked up based on the suites being executed, not on the suites passed as goals to the makefile. Therefore, it is possible to limit dependencies to the speeds that need them. Reviewed-by: Alex Benn=C3=A9e Tested-by: Alex Benn=C3=A9e Signed-off-by: Paolo Bonzini --- scripts/mtest2make.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/mtest2make.py b/scripts/mtest2make.py index d7c514243a5..38512046d97 100644 --- a/scripts/mtest2make.py +++ b/scripts/mtest2make.py @@ -58,13 +58,13 @@ def process_tests(test, targets, suites): s =3D s.split(':')[1] if s =3D=3D 'slow' or s =3D=3D 'thorough': continue + suites[s].deps.update(deps) if s.endswith('-slow'): s =3D s[:-5] suites[s].speeds.append('slow') if s.endswith('-thorough'): s =3D s[:-9] suites[s].speeds.append('thorough') - suites[s].deps.update(deps) =20 def emit_prolog(suites, prefix): all_targets =3D ' '.join((f'{prefix}-{k}' for k in suites.keys())) --=20 2.51.1 From nobody Thu Nov 20 12:30:01 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=quarantine dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1763597875; cv=none; d=zohomail.com; s=zohoarc; b=bGOUg+0QobvAVHb5Alz6PAv1aBGLAdDKvyP8pe7lXOlfNyl66H9/+AcRyImPtVZh77x+4cM91yZ6GrX1Jk0RRrzQPGFLl2VyMgsKt+CAk0bAs2minBtXMlklOHCjedW526qIqauZylwvRqEXAdGp1EQyon8pMFATZhGXqKxXRi0= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1763597875; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=U+ZM1ZqiMdfgA1oCQRd2zAK+9NPqIfMNQvMcX6iBu/E=; b=D2NxjyqQTo5cVprSQlJu4j08/d3gg3eLu3JqC+rIH1UAihIGYUpYtKzDhkUQ3o2/ugXVdFtRc2XYwO/VkmiJLNJsWMGHeWFEFb7BTINQXw1inaeZVMRyi5cgNOP/0DKXeYPx6mxRjORi1DkpP4vUD3u5tUPErLSC3gzpiVt5Lsc= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1763597875138886.7071395463971; Wed, 19 Nov 2025 16:17:55 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vLsMQ-0003Bk-Uo; Wed, 19 Nov 2025 19:17:18 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vLsMP-0003BK-EF for qemu-devel@nongnu.org; Wed, 19 Nov 2025 19:17:17 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vLsMO-0007SE-18 for qemu-devel@nongnu.org; Wed, 19 Nov 2025 19:17:17 -0500 Received: from mail-wm1-f69.google.com (mail-wm1-f69.google.com [209.85.128.69]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-572-KwwgDqFROXygL7vEul1uEQ-1; Wed, 19 Nov 2025 19:17:14 -0500 Received: by mail-wm1-f69.google.com with SMTP id 5b1f17b1804b1-47496b3c1dcso2841885e9.3 for ; Wed, 19 Nov 2025 16:17:14 -0800 (PST) Received: from [192.168.10.48] ([176.206.119.13]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-477b8314279sm16575225e9.11.2025.11.19.16.17.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 19 Nov 2025 16:17:10 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1763597835; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=U+ZM1ZqiMdfgA1oCQRd2zAK+9NPqIfMNQvMcX6iBu/E=; b=SPDnitet6Iz3fM0EwVLhP6DfsITYpd2qGNr5ZFIvSrllgYoRmJLe9BJoW+l/P226hhWhqa qsw90D3lnQnGTNAbg8F5d8G99Guw1uqFZOpVD1K/WuFzn+LVuYk0sTdjxxa93PlKKnT2us bf7XFyHTXKiQDYfT2lNHuK4hqRvYr3I= X-MC-Unique: KwwgDqFROXygL7vEul1uEQ-1 X-Mimecast-MFC-AGG-ID: KwwgDqFROXygL7vEul1uEQ_1763597833 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=google; t=1763597832; x=1764202632; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=U+ZM1ZqiMdfgA1oCQRd2zAK+9NPqIfMNQvMcX6iBu/E=; b=jPsZWa1fIRizEVYpIxncotY+VKlLnQhLf/NpWF03UrpTSqDxeEYuwgR7jYvttR7tEC UDVfSK7wyEEziVGa3HpUN6cTLDGeKxp+ceVswghi8Y8Zi6LSn7DsWzi3HDqDMi1N9T1J zfog42tbZ9dIkGZQwJ7uHNSHbKPPor6OktpbtyPyd99rTTnTFwa8QNwR3PqDoshduQqC uVxF0njpfcB3M8k4fVZ+cRiPHNprhMPREhm2xuEUM8vjW+0bNHcUt+y8UcgdBWDEskRZ IIFIlbvSuNXCqL+wqs687zRcpi+LWNDVYrkyWaU0bRw2JGU1PikJBWmB8CZ4dlTO71fZ 75Zw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1763597832; x=1764202632; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=U+ZM1ZqiMdfgA1oCQRd2zAK+9NPqIfMNQvMcX6iBu/E=; b=Vax0vLwelAF0NrxbS79IsCox4fag09BpY6nVw7L5LHfl8KX6f3kKyX+0aXHfcgKHzB F7cDtU9cFLt7cP6cweWPbVI/mcmmQZAU8j/ipUSAcKbVRIp49GgESKHPX1AbqBCjJW4U krbczUxBDeVXi3eXG9t1RkhuhkfJkJ38T/Pg29Gz4Emh65pBuwTm8ydAh14feFylO+ux UHjQM+vX1gY10UOi9rpNVkm9t5YWxG7IMPzukb2VOnNIGAOuF+4FwYI9nC2gsyr+uIKl ZXeewxLRnABDlmCgIrmuUj1IdBC6UrzHCgw6Vtmj3f6r8LTCpIX8q7+hM1rxsZBHkhno fepg== X-Gm-Message-State: AOJu0YyYKKr9NxKIO5yUiU4cHhAgw1eIHtnv4U45gUdYbGeccNy85GXW WUIkw34FoGmBDKPSwrfYX5Dc2ECaV9eBeCWuUDG72R4Fvbc+kZLb9UF/r4mxtY9zL5HWtUVFWX5 low93UJOzKK30W7ydPo3+t2w7AVKRWeKMDMbrfx5/LzaUaQy5xR9tI/T1Q/k0Bic5ne97yQTZGh M9WaMZG+eCn58gTautTcL+anQkxX1RzDUg9aebak0C X-Gm-Gg: ASbGncvNzzVy8E0sFLSqPZua6zupFzdqDBBkE6NM5DEKb8YVkUtyMPORSTutrMHFGx7 Q7V9/Nkg0YSIm0dr98yq0tlaOq48wfAIJDFe/DvZL9WLRTSUcNTPbYIqHieAynKMrAIZFFCxcSo ONh0F+GW8VDU2DZZ8jcQX0z/2LsAizLsC3BEWf/k7bp4AyefcNKC8KoYC9df+06x5Xq4t8UNT14 EMQa5SlBmQEy6PtnMiKASR3kDIo/YLLwzRneLbawjFojijEQ0mDfMIEpzZk9u8HSs7A5um3qiSz GIa0HLb40Wku7SeLTerV4G7Dx4v9RHDuub5dR0m6pw9VQXfWqtBTxKxtHC8r4EqjiLu530W+kDx p3b85Z04uvFemEVSgdoBF0pVBq1MIK45S0JLkea/AXN1BczsUm5bS6CdqJ09GWnHfaYKqq9u9Vk M2waiE0xOLoTB5UKw= X-Received: by 2002:a05:600c:3146:b0:477:79cf:89d4 with SMTP id 5b1f17b1804b1-477b9e34890mr3921745e9.31.1763597832325; Wed, 19 Nov 2025 16:17:12 -0800 (PST) X-Google-Smtp-Source: AGHT+IEWpZtOpnMr/YZU3MnOtMC1GMl/WX/5tMEzhayD6CvgLGyPI2lySHH8XdbYBIBys1rm9N491g== X-Received: by 2002:a05:600c:3146:b0:477:79cf:89d4 with SMTP id 5b1f17b1804b1-477b9e34890mr3921535e9.31.1763597831834; Wed, 19 Nov 2025 16:17:11 -0800 (PST) From: Paolo Bonzini To: qemu-devel@nongnu.org Cc: =?UTF-8?q?Alex=20Benn=C3=A9e?= Subject: [PULL 09/10] mtest2make: do not repeat the same speed over and over Date: Thu, 20 Nov 2025 01:16:48 +0100 Message-ID: <20251120001649.1085913-10-pbonzini@redhat.com> X-Mailer: git-send-email 2.51.1 In-Reply-To: <20251120001649.1085913-1-pbonzini@redhat.com> References: <20251120001649.1085913-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.133.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1763597878285019100 There are just two of them (slow and thorough; quick is simply the default). Avoid repeating them for as many times as there are tests. Reviewed-by: Alex Benn=C3=A9e Tested-by: Alex Benn=C3=A9e Signed-off-by: Paolo Bonzini --- scripts/mtest2make.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/scripts/mtest2make.py b/scripts/mtest2make.py index 38512046d97..4b252defc3f 100644 --- a/scripts/mtest2make.py +++ b/scripts/mtest2make.py @@ -13,7 +13,7 @@ class Suite(object): def __init__(self): self.deps =3D set() - self.speeds =3D [] + self.speeds =3D set() =20 def names(self, base): return [f'{base}-{speed}' for speed in self.speeds] @@ -61,10 +61,10 @@ def process_tests(test, targets, suites): suites[s].deps.update(deps) if s.endswith('-slow'): s =3D s[:-5] - suites[s].speeds.append('slow') + suites[s].speeds.add('slow') if s.endswith('-thorough'): s =3D s[:-9] - suites[s].speeds.append('thorough') + suites[s].speeds.add('thorough') =20 def emit_prolog(suites, prefix): all_targets =3D ' '.join((f'{prefix}-{k}' for k in suites.keys())) --=20 2.51.1 From nobody Thu Nov 20 12:30:01 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=quarantine dis=none) header.from=redhat.com ARC-Seal: i=1; a=rsa-sha256; t=1763597921; cv=none; d=zohomail.com; s=zohoarc; b=bZ5AfDxpHnhmrvw6xXrhz/hW0/Lvx6H3uQQkws0baGiehaikibkOnEt7lpxgF68InIcDzDxsKgnkjGETKpM+CGEQ+HCDm5fpyHPXcOVbv5vrE9wTZXDCqSPAnV+2hFs4xsxzybaU8bbK81p5/l+8FXWSgjVRwsoX/jyzzGv+//E= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1763597921; h=Content-Transfer-Encoding:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To:Cc; bh=ooMz4PrdRjFfvcta9qVRDqisJIaUtfGy+SneeR0CR/c=; b=FFXlJScWrYIU4yNO2/QQjFOw2vkHzw7xMijL4imUqL0XMcvvnjmL603UYDiylpuLu9a0w+yI75f+gVaw8il6mK51OAfGOn6CduLh+fr7psWvxkE4g8Nsvyn3u0W/3sgpm4WPk+QKqeZxeYBk6ADZD4dm7OSLWV9H+D732AAyCng= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=quarantine dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1763597921542419.59689934950586; Wed, 19 Nov 2025 16:18:41 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1vLsMX-0003Cr-Di; Wed, 19 Nov 2025 19:17:25 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vLsMV-0003CO-9B for qemu-devel@nongnu.org; Wed, 19 Nov 2025 19:17:23 -0500 Received: from us-smtp-delivery-124.mimecast.com ([170.10.133.124]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1vLsMT-0007Sc-JS for qemu-devel@nongnu.org; Wed, 19 Nov 2025 19:17:23 -0500 Received: from mail-wm1-f69.google.com (mail-wm1-f69.google.com [209.85.128.69]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-558-TP2Np0ocNmCVkN4zHUrrmQ-1; Wed, 19 Nov 2025 19:17:16 -0500 Received: by mail-wm1-f69.google.com with SMTP id 5b1f17b1804b1-47754e6bddbso1808335e9.3 for ; Wed, 19 Nov 2025 16:17:16 -0800 (PST) Received: from [192.168.10.48] ([176.206.119.13]) by smtp.gmail.com with ESMTPSA id 5b1f17b1804b1-477b831ad9dsm16388175e9.13.2025.11.19.16.17.12 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 19 Nov 2025 16:17:12 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1763597841; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=ooMz4PrdRjFfvcta9qVRDqisJIaUtfGy+SneeR0CR/c=; b=Uh02OafQEdOhRiBBH0AvN0Yot60t/LND7OfmnzgdM8WOce5hRMT8ySCX4Y+sZwVFaP0hpg 6TXBpircxm61d038tY+iBOTQ3R4wMGASsW+BsuIouu96mmdDY0zoNA+BhTaNlBsECv3BMD rOShmaa2kpu/2IuqXJgdVj920t5hzKo= X-MC-Unique: TP2Np0ocNmCVkN4zHUrrmQ-1 X-Mimecast-MFC-AGG-ID: TP2Np0ocNmCVkN4zHUrrmQ_1763597835 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=google; t=1763597835; x=1764202635; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:from:to:cc:subject:date:message-id :reply-to; bh=ooMz4PrdRjFfvcta9qVRDqisJIaUtfGy+SneeR0CR/c=; b=nhmzj+/rLgWjvuq+yoYcXhJsvkF639CU60ozSdwYUBILL0/XBOZ7abQHWXH2tnbAOk w85UKMTY+w8S4EUiQ0T20ynvxCWSIz2mMbDYYCcFyPDk3f0JGvpVeXq0/7QQkxO6poYt G+O8UaB8yoTfDuIcQIsfx8vTsR2NQ1w/xss67awbGocpd0OgJ23wJqcfeQacajyv0YOT +JDELYkPPedtZ3Rt9F1+ByApXi03q1o21dMWFQc0SFrzrP6imvesrzbDCQV5UhyakFmE 1kzP/cS9UJI6HA+It8Pw++H/cJhQ6wUZcLcJ05za5+qaZ4cByJ8TO5EXJMxBM+UNThAC BM7A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1763597835; x=1764202635; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:to:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=ooMz4PrdRjFfvcta9qVRDqisJIaUtfGy+SneeR0CR/c=; b=bds4Cn6Q5ZgsFqxTqniJiSsK9yTP55jcNWOJKNtvPuF31PvfDoLRxQbN+ztg3ejHG9 Pbna+Fq2IsXA9slnTkrlx3doG7jRiSFobP59HIBRnkXPQ82r4BjU7FpkXVhXM5GWd7p2 fw2S7QHfbgOmKy5Oluc8vqBoUkd2RQ6OpcP5im7xOLC0jPy4W8ecX7ACtvFrgHFEmAwO wyYuJDDYfRbqNeCLmtm01XsVNLG5TsLad2qeoqBbzjI/idUUSFPgCrk3UOzKmt8R2KhX pLWNH/TrUl/p3WgmfVQ3Z3vkCIeKErDWkP6JinsuEWGLGugpiqP2upaXi/4eZx7PnAMw VgSw== X-Gm-Message-State: AOJu0YydpVsYDjsOPcsz6RucjoeTZRsag7CTeoDzFguAEHbukZVcxZOi MvxyhOZmbbnzRSaO3dXMPVAnAwXfTRJPXqQ87cXOz6VJGVpLY2/h/GEhdCog1UdOTmRf9+UEXwN 4UZ3uPgkyasRXq3W228xifPKqg3kWCzF4bJeMly5a6ybvSdc5aCRnuDYTM9h+SCTLyf8vnfgOv2 PhUHCu2XlrHfsOHEZ2Dh8zT8AgdSoRDf6KbXz7uZzh X-Gm-Gg: ASbGnctI+4g8hue1SCMi8GoiNrC6jmutjvMGTgM9VtyMvfDP5vOcXKWT47p+llHwHcG blDlzzyaWwvStDOPg2TVqdJOs+YL60ueO8PKAPiX+tu51ehAj0XNxHvNJv8EhNUoeKJ4WXFjYSL Sd9lIPy+tPRoJXgG3PkPomyWjaeU2e9DaUY9zQGXHn/MQ3mTFup9fpnk9tp3Hec/9fkkEYZJXSB qb8R3nWrRn+E816qVLkqxNEH/G+RYh/4hGvM5pcyFN5+uCWlG+yhdn2OBaeIKRRlTksHXi6NlEc GyhtSe/v9onvyzd/RIfEs9ZwWyzGA+zag2OeMkygw7TO2sojjAnLwpQfQsxuRB/55GD9iGnJ8ec UO2MfQkxT8cUlZ/+DCm2iNiLR+2XX1j1q+mhQzJx5nVHFvqhHVvPTcL+nKysPvrhz3Tp9c2b0hr Ops7EKIVt1lzs6qBs= X-Received: by 2002:a05:600c:c4b7:b0:46e:74cc:42b8 with SMTP id 5b1f17b1804b1-477b8a8a540mr10184685e9.17.1763597834703; Wed, 19 Nov 2025 16:17:14 -0800 (PST) X-Google-Smtp-Source: AGHT+IEtcOgkrvdBo25XbutC8v5nEhUCv2A8hluiiN5SibaKQFPhv0Nl/MllGBo+QGXOnAq3xBX6XA== X-Received: by 2002:a05:600c:c4b7:b0:46e:74cc:42b8 with SMTP id 5b1f17b1804b1-477b8a8a540mr10184605e9.17.1763597834250; Wed, 19 Nov 2025 16:17:14 -0800 (PST) From: Paolo Bonzini To: qemu-devel@nongnu.org Subject: [PULL 10/10] replay: add tracing events Date: Thu, 20 Nov 2025 01:16:49 +0100 Message-ID: <20251120001649.1085913-11-pbonzini@redhat.com> X-Mailer: git-send-email 2.51.1 In-Reply-To: <20251120001649.1085913-1-pbonzini@redhat.com> References: <20251120001649.1085913-1-pbonzini@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=170.10.133.124; envelope-from=pbonzini@redhat.com; helo=us-smtp-delivery-124.mimecast.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @redhat.com) X-ZM-MESSAGEID: 1763597924377019100 Content-Type: text/plain; charset="utf-8" The replay subsystem does not provide any way to see what's going on and how the replay events interleave with other things happening in QEMU. Add trace events to improve debuggability; to avoid having too many events reimplement all functions in terms of (non-traced) replay_getc and replay_putc and add a single trace event for each datum that is extracted or written. Signed-off-by: Paolo Bonzini --- meson.build | 1 + replay/trace.h | 1 + replay/replay-internal.c | 70 ++++++++++++++++++++++++++++++---------- replay/trace-events | 12 +++++++ 4 files changed, 67 insertions(+), 17 deletions(-) create mode 100644 replay/trace.h create mode 100644 replay/trace-events diff --git a/meson.build b/meson.build index df4460035c3..95fcec9ba15 100644 --- a/meson.build +++ b/meson.build @@ -3678,6 +3678,7 @@ if have_system 'hw/gpio', 'migration', 'net', + 'replay', 'system', 'ui', 'hw/remote', diff --git a/replay/trace.h b/replay/trace.h new file mode 100644 index 00000000000..39ff481742e --- /dev/null +++ b/replay/trace.h @@ -0,0 +1 @@ +#include "trace/trace-replay.h" diff --git a/replay/replay-internal.c b/replay/replay-internal.c index c2a7200339f..4839f2b6321 100644 --- a/replay/replay-internal.c +++ b/replay/replay-internal.c @@ -15,6 +15,7 @@ #include "replay-internal.h" #include "qemu/error-report.h" #include "qemu/main-loop.h" +#include "trace.h" =20 /* Mutex to protect reading and writing events to the log. data_kind and has_unread_data are also protected @@ -44,7 +45,7 @@ static void replay_read_error(void) exit(1); } =20 -void replay_put_byte(uint8_t byte) +static void replay_putc(uint8_t byte) { if (replay_file) { if (putc(byte, replay_file) =3D=3D EOF) { @@ -53,29 +54,45 @@ void replay_put_byte(uint8_t byte) } } =20 +void replay_put_byte(uint8_t byte) +{ + trace_replay_put_byte(byte); + replay_putc(byte); +} + void replay_put_event(uint8_t event) { + trace_replay_put_event(event); assert(event < EVENT_COUNT); - replay_put_byte(event); + replay_putc(event); } =20 =20 void replay_put_word(uint16_t word) { - replay_put_byte(word >> 8); - replay_put_byte(word); + trace_replay_put_word(word); + replay_putc(word >> 8); + replay_putc(word); } =20 void replay_put_dword(uint32_t dword) { - replay_put_word(dword >> 16); - replay_put_word(dword); + int i; + + trace_replay_put_dword(dword); + for (i =3D 24; i >=3D 0; i -=3D 8) { + replay_putc(dword >> i); + } } =20 void replay_put_qword(int64_t qword) { - replay_put_dword(qword >> 32); - replay_put_dword(qword); + int i; + + trace_replay_put_qword(qword); + for (i =3D 56; i >=3D 0; i -=3D 8) { + replay_putc(qword >> i); + } } =20 void replay_put_array(const uint8_t *buf, size_t size) @@ -88,7 +105,7 @@ void replay_put_array(const uint8_t *buf, size_t size) } } =20 -uint8_t replay_get_byte(void) +static uint8_t replay_getc(void) { uint8_t byte =3D 0; if (replay_file) { @@ -101,36 +118,52 @@ uint8_t replay_get_byte(void) return byte; } =20 +uint8_t replay_get_byte(void) +{ + uint8_t byte =3D replay_getc(); + trace_replay_get_byte(byte); + return byte; +} + uint16_t replay_get_word(void) { uint16_t word =3D 0; if (replay_file) { - word =3D replay_get_byte(); - word =3D (word << 8) + replay_get_byte(); + word =3D replay_getc(); + word =3D (word << 8) + replay_getc(); } =20 + trace_replay_get_word(word); return word; } =20 uint32_t replay_get_dword(void) { uint32_t dword =3D 0; + int i; + if (replay_file) { - dword =3D replay_get_word(); - dword =3D (dword << 16) + replay_get_word(); + for (i =3D 24; i >=3D 0; i -=3D 8) { + dword |=3D replay_getc() << i; + } } =20 + trace_replay_get_dword(dword); return dword; } =20 int64_t replay_get_qword(void) { - int64_t qword =3D 0; + uint64_t qword =3D 0; + int i; + if (replay_file) { - qword =3D replay_get_dword(); - qword =3D (qword << 32) + replay_get_dword(); + for (i =3D 56; i >=3D 0; i -=3D 8) { + qword |=3D (uint64_t)replay_getc() << i; + } } =20 + trace_replay_get_qword(qword); return qword; } =20 @@ -172,10 +205,12 @@ void replay_check_error(void) =20 void replay_fetch_data_kind(void) { + trace_replay_fetch_data_kind(); if (replay_file) { if (!replay_state.has_unread_data) { - replay_state.data_kind =3D replay_get_byte(); + replay_state.data_kind =3D replay_getc(); replay_state.current_event++; + trace_replay_get_event(replay_state.current_event, replay_stat= e.data_kind); if (replay_state.data_kind =3D=3D EVENT_INSTRUCTION) { replay_state.instruction_count =3D replay_get_dword(); } @@ -246,6 +281,7 @@ void replay_advance_current_icount(uint64_t current_ico= unt) int diff =3D (int)(current_icount - replay_state.current_icount); =20 /* Time can only go forward */ + trace_replay_advance_current_icount(replay_state.current_icount, diff); assert(diff >=3D 0); =20 if (replay_mode =3D=3D REPLAY_MODE_RECORD) { diff --git a/replay/trace-events b/replay/trace-events new file mode 100644 index 00000000000..e9c887a6c57 --- /dev/null +++ b/replay/trace-events @@ -0,0 +1,12 @@ +replay_put_byte(uint8_t event) "%02x" +replay_put_event(uint8_t event) "%02x" +replay_put_word(uint16_t event) "%04x" +replay_put_dword(uint32_t event) "%08x" +replay_put_qword(uint64_t event) "%016" PRIx64 +replay_get_byte(uint8_t byte) "%02x" +replay_get_word(uint16_t word) "%04x" +replay_get_dword(uint32_t dword) "%08x" +replay_get_qword(uint64_t qword) "%016" PRIx64 +replay_fetch_data_kind(void) "" +replay_get_event(uint32_t current, uint8_t data) "#%u data=3D%02x" +replay_advance_current_icount(uint64_t current_icount, int diff) "current= =3D%" PRIu64 " diff=3D%d" --=20 2.51.1