From nobody Sat Nov 15 10:42:24 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; arc=pass (i=1 dmarc=pass fromdomain=amd.com); dmarc=pass(p=quarantine dis=none) header.from=amd.com ARC-Seal: i=2; a=rsa-sha256; t=1753339775; cv=pass; d=zohomail.com; s=zohoarc; b=J/cD3FnLbvW9hLTcwR+g80aioC7+CHmEuaqjnkpIn31v/n0sO9pj6CIA9Sr7n0lNEE8ixdFh8rPPYdXZ7LEbVL35qmBDxBi6STE/PVMnFYD133E4ouhm90A7SIMgqLTp+i56nQZmLxvwJhh9JH1omOqJ9gu8AVon/uBzkneHmoM= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1753339775; 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=gwZZeimT0/CqOGxgg+ZzqGzm85H16sSm/32yevOcgqo=; b=bFXNdjgoWqyum7XGxXKR7v7+sRKkNearP2nNWGwOgGex0c65M9RH8YHBXut9jgQRrtP3rnfpOQ834D+EJRkL9zYtWU/YXjpIJI1/mHsHSxwWb2mHzRY4HRIP/oimQzPly5f9W26s9i2DDjavfSmtw3TdO/JLe6oQTYsldqIJjGk= ARC-Authentication-Results: i=2; 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; arc=pass (i=1 dmarc=pass fromdomain=amd.com); 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 1753339775205189.36143557722312; Wed, 23 Jul 2025 23:49:35 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uepkp-00074m-9s; Thu, 24 Jul 2025 02:48:37 -0400 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 1uepkm-00072P-Eo for qemu-devel@nongnu.org; Thu, 24 Jul 2025 02:48:32 -0400 Received: from mail-mw2nam12on2062a.outbound.protection.outlook.com ([2a01:111:f403:200a::62a] helo=NAM12-MW2-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uepkg-0002vu-69 for qemu-devel@nongnu.org; Thu, 24 Jul 2025 02:48:31 -0400 Received: from MW4PR03CA0145.namprd03.prod.outlook.com (2603:10b6:303:8c::30) by CH3PR12MB9395.namprd12.prod.outlook.com (2603:10b6:610:1ce::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8964.21; Thu, 24 Jul 2025 06:48:18 +0000 Received: from SJ5PEPF000001CF.namprd05.prod.outlook.com (2603:10b6:303:8c:cafe::a8) by MW4PR03CA0145.outlook.office365.com (2603:10b6:303:8c::30) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8964.21 via Frontend Transport; Thu, 24 Jul 2025 06:48:17 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by SJ5PEPF000001CF.mail.protection.outlook.com (10.167.242.43) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.8964.20 via Frontend Transport; Thu, 24 Jul 2025 06:48:17 +0000 Received: from BLR-L1-SARUNKOD.amd.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Thu, 24 Jul 2025 01:48:12 -0500 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=IihVwLjv1F4/IELC70GvYQ3yaNhuLzJNt7+2ptrFREl+jgotjCfMT8XAuNWXlkScVLPI03SHT6K/lPksS5pXSJkoBG9w2kSWr3PB1Dvbmdvpa4UNl902KjCr5hFJdPHStkREpmMEWwp+yyyp/vDZTbl4cQgkxDslPu7Ct9Fz4AHwOWNgvYGusJ8Kidixgji/Iuw6P/NiZYJeCU2PVPnm7bxhCEO3Z9LfLhi9HXeGBQKu/FmviAplnyxyJqN8VLBV9nWmA/aZYR/zT1KKIkugFF+1PfmWOWJE1fJemLcXr0U7zB47rCPvCj7GsrFcPpXFzAIYawwF9SGxwp07X27fMQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=gwZZeimT0/CqOGxgg+ZzqGzm85H16sSm/32yevOcgqo=; b=YdYdCroWII+1E7du+OFnqaNMY3Sky1vTQTz3KEvyRCADCqyptvP3QOsevklpmjYR90PpGVmXOwvcvshQop4kRy6OYI4gTbLXjWr4MMr/8ymd5Bdwl4CaHXMPxA6XqAoqevCd15h/kcVcdPSqTuzJNgeEFHP7c5ZRQD1n5nnSbRHX6bOWoD1s0zp/uMyfVxdaBWR+hOahtOh6tYFbmWoiU0gOTvD6PaR9dY2fCj9XbOdPsDjIqfG8ekqO8q2fIJefGgQTc+6JAxjTD5mXvFESx6VZoZ5N/09h2yL4Oldm96zLRdQRf2pHOXn2xwTr+lFt2MfLM6LJrxGgav/7DUMNPA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=nongnu.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=gwZZeimT0/CqOGxgg+ZzqGzm85H16sSm/32yevOcgqo=; b=r6F9rfJZ8E9l48rz1zq/ghhvf517xX/5hsv5MK2+KhUImVx2H0Iuw51r/C0ZMPJ3JAnAYOy2Fr8YRgPEc4DwCO/kzJRlhFXuaSCG20amzCZYC/SSm3PrS1sHpTddNH1pCWbLpmz/BtcD4QIqCOrDDgn3Ifjbf/2x/YEjYSH6voE= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; 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 (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C From: Sairaj Kodilkar To: CC: , , , , , , , , Sairaj Kodilkar Subject: [PATCH v2 1/6] hw/i386/amd_iommu: Fix MMIO register write tracing Date: Thu, 24 Jul 2025 12:17:40 +0530 Message-ID: <20250724064745.4091-2-sarunkod@amd.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250724064745.4091-1-sarunkod@amd.com> References: <20250724064745.4091-1-sarunkod@amd.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ5PEPF000001CF:EE_|CH3PR12MB9395:EE_ X-MS-Office365-Filtering-Correlation-Id: 5f766c53-ae84-4472-88af-08ddca7e1247 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|1800799024|36860700013|376014|82310400026; X-Microsoft-Antispam-Message-Info: =?utf-8?B?L09ya1FHT3UzdmEwOU1lbUQ1LzRYakhjZ0l5cnduQjVOQVlHTGU0YVlyL3U3?= =?utf-8?B?Vis1cjVXeThaYUh2bS9NREduUEJpS3NYVXpDNjkwek1LQVhFR2M3L1NDUzFx?= =?utf-8?B?TVZzNmNpejNhWnErVldCZVIrbzd0d0N4dndkK25PRm5YdnpZc0tnaUgxbTdn?= =?utf-8?B?d3dDUFlJWGczQXE3Z3o3by9wb0VEd2pRSEM5YlNGR1pQcTk5ejNGWGdROStv?= =?utf-8?B?aG1GeUVHZTZVQ3UxYW9xKzhjVkJ3Z2poRVc1WVZYSkJ2YlN4bm5GOHl1bDNQ?= =?utf-8?B?R3pWOXh3YmFaVlZaZVdNd0hGOFBWYTh1NHlpMzZ2alV5UlM0T1Y3ZlRldDRX?= =?utf-8?B?ZWJpSlBNblpXL1JqMHkzRCszT1RHMnNHckpTazdHYlZERzdZQWltN0JoeWQ4?= =?utf-8?B?d3hYakVTYVY1SEhUZzF4WlZES0lPajRBdG85emxKWnBISFd5QjNyMm4yVXJT?= =?utf-8?B?WTc5UXBuelZLMEpnWnVVbEI5UTd2VGFOY2laUTR0QjRZRVJtRklyTTNQUTJH?= =?utf-8?B?bHpzUEppOGszRnhtU1hzaTMyc2J6R0kzL3VaYVlyRmJDa2VyYk1oT0hhN1Vy?= =?utf-8?B?ZzBQelZObEZhS0c4cXhnMTU3M0hTamxVS3ZVVzNWOGtTWEx5emloamJkeUZk?= =?utf-8?B?Z01naTdsMWc1Q2Uycy83cy9uNnVRbDFTTEtYYXljbXNKUUYvQVA1TzFjcFFw?= =?utf-8?B?eitMTVVLMldqZXdvVldWek54SSt2MFdPcUJVYndkSDFLeFpjZGgvYjd0Z0c5?= =?utf-8?B?cXlVRTFJcU5wazE1YnI1VS9NdTl6eTk0STdDK3BlVGFGM3dyNTBMSzB5UlVo?= =?utf-8?B?ZFRncDRWOURaTGlsbXBSVk1aOEpoYnJKb0pzbFE2WDdVSW8xQnoxSVZTekU1?= =?utf-8?B?T0dsN2V0ZGM2aHpvSW5rTXlFYTJXTjkycTA5bkNsVkZiTUxQeFhMdW5INzJU?= =?utf-8?B?SDl1aWxpTDd4OERVUGJ0REtWS21YV2hxbkhBQ0VFSkIvY0lBYzE3a0dOV2oy?= =?utf-8?B?ekYvNXI5bjM2VDhWVWhWYldmYnFDa3BwdlhQMWtFQldBOGRnZzRrMXdja1ky?= =?utf-8?B?UjBvdC9ac0RZSUlRazR4YlJhQ0FTRCtYK29LZlkvTUNTOHZUOUtUU0FCdi8x?= =?utf-8?B?RmU5UnhVOUQ5SFpVM1V4Zzc5YlRXRFBGRjVVMGx1ZGNhV1NzTHUvWkJlaTFM?= =?utf-8?B?QjhsaGdEUFdCTjlyTHpLazNERlJiYTFaSmVqeWU1N1d6RFRaZ2pOei9rNDVJ?= =?utf-8?B?NnFqaFArU3QvZXZiZk85WVZhYnJzYzBCYk55L2h0MjIvOUs0N3pKaFl4RzZG?= =?utf-8?B?OWtiWU9QWDY4T3dGZno1SnRMTHZvdkcyUTRrZnl5Y0FaL2pCMGJ0Slo5Vjc3?= =?utf-8?B?TUVRdkFDOHU4eXQrdUNiWjcxVnBZNjBlYmdqVkpEdEs1MlZvSVlaczYwWUZN?= =?utf-8?B?UG1iRzhiOFRGek1WY3d1cU1lVnFIMTcrM3h4NnYwRUgvY2RQS0xSeTFmakQx?= =?utf-8?B?aWdoWmNLeFdCaXlkaTN0ekYyYTZPdnJSWUU0RFFzRzdSS3lzbmZ3MEJIbHhK?= =?utf-8?B?SElBR0xYbmF4aU4yOWwxVFp0Vk1xMDlmRVNWU0QyeDRFMHhrVENaZEtOSmtY?= =?utf-8?B?WHJYdVkxblhLcTJXc0NNRDhheElSUTE5ZyswK1lNUE11R3ovaTFKRmExdDl4?= =?utf-8?B?MDN1WXRqTnM0STc4ZFRMNExJR2phMk1iTW53cmdBTWk3bllYLytPSXVTTFJs?= =?utf-8?B?WUlkZXVTRHR3bGlUWVlJenp5UHBaRmRnemZhelRKWDd5cmR1enV5UWVHYjlW?= =?utf-8?B?T0U2L1BHNlN3VTRaZEJHNE16V3dMbnBYai9Da0N4WE52TEhpY2ZPdkJBbFFz?= =?utf-8?B?NDdKVXZ1R2RqdjgxQzk0UTM4cUlQQUwzZll1djMyN0MweGljQXZ6aG4zcEtZ?= =?utf-8?B?WjdrZ1dmK1hyNWFjWU9UYS9MR3oreGZNZmd3WHhVYUMwOVJQcVcwUFR1M2Vy?= =?utf-8?B?bjJqV2p4d3Y4bEVjNzJhcFJNL1lKRHhnRGpuVFNNVDFIOFVDT0w5aVVHVHB4?= =?utf-8?Q?4eHqDp?= X-Forefront-Antispam-Report: CIP:165.204.84.17; CTRY:US; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:SATLEXMB04.amd.com; PTR:InfoDomainNonexistent; CAT:NONE; SFS:(13230040)(1800799024)(36860700013)(376014)(82310400026); DIR:OUT; SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Jul 2025 06:48:17.6512 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 5f766c53-ae84-4472-88af-08ddca7e1247 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d; Ip=[165.204.84.17]; Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: SJ5PEPF000001CF.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH3PR12MB9395 Received-SPF: permerror client-ip=2a01:111:f403:200a::62a; envelope-from=Sairaj.ArunKodilkar@amd.com; helo=NAM12-MW2-obe.outbound.protection.outlook.com X-Spam_score_int: -24 X-Spam_score: -2.5 X-Spam_bar: -- X-Spam_report: (-2.5 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.377, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, 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 @amd.com) X-ZM-MESSAGEID: 1753339776875116600 Define separate functions to trace MMIO write accesses instead of using `trace_amdvi_mmio_read()` for both read and write. Signed-off-by: Sairaj Kodilkar Reviewed-by: Vasant Hegde Reviewed-by: Philippe Mathieu-Daud=C3=A9 --- hw/i386/amd_iommu.c | 23 ++++++++++++++++++----- 1 file changed, 18 insertions(+), 5 deletions(-) diff --git a/hw/i386/amd_iommu.c b/hw/i386/amd_iommu.c index 5a24c17548d4..7fb0bb68f008 100644 --- a/hw/i386/amd_iommu.c +++ b/hw/i386/amd_iommu.c @@ -592,18 +592,31 @@ static void amdvi_cmdbuf_run(AMDVIState *s) } } =20 -static void amdvi_mmio_trace(hwaddr addr, unsigned size) +static inline uint8_t amdvi_mmio_get_index(hwaddr addr) { uint8_t index =3D (addr & ~0x2000) / 8; =20 if ((addr & 0x2000)) { /* high table */ index =3D index >=3D AMDVI_MMIO_REGS_HIGH ? AMDVI_MMIO_REGS_HIGH := index; - trace_amdvi_mmio_read(amdvi_mmio_high[index], addr, size, addr & ~= 0x07); } else { index =3D index >=3D AMDVI_MMIO_REGS_LOW ? AMDVI_MMIO_REGS_LOW : i= ndex; - trace_amdvi_mmio_read(amdvi_mmio_low[index], addr, size, addr & ~0= x07); } + + return index; +} + +static void amdvi_mmio_trace_read(hwaddr addr, unsigned size) +{ + uint8_t index =3D amdvi_mmio_get_index(addr); + trace_amdvi_mmio_read(amdvi_mmio_low[index], addr, size, addr & ~0x07); +} + +static void amdvi_mmio_trace_write(hwaddr addr, unsigned size, uint64_t va= l) +{ + uint8_t index =3D amdvi_mmio_get_index(addr); + trace_amdvi_mmio_write(amdvi_mmio_low[index], addr, size, val, + addr & ~0x07); } =20 static uint64_t amdvi_mmio_read(void *opaque, hwaddr addr, unsigned size) @@ -623,7 +636,7 @@ static uint64_t amdvi_mmio_read(void *opaque, hwaddr ad= dr, unsigned size) } else if (size =3D=3D 8) { val =3D amdvi_readq(s, addr); } - amdvi_mmio_trace(addr, size); + amdvi_mmio_trace_read(addr, size); =20 return val; } @@ -770,7 +783,7 @@ static void amdvi_mmio_write(void *opaque, hwaddr addr,= uint64_t val, return; } =20 - amdvi_mmio_trace(addr, size); + amdvi_mmio_trace_write(addr, size, val); switch (addr & ~0x07) { case AMDVI_MMIO_CONTROL: amdvi_mmio_reg_write(s, size, val, addr); --=20 2.34.1 From nobody Sat Nov 15 10:42:24 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; arc=pass (i=1 dmarc=pass fromdomain=amd.com); dmarc=pass(p=quarantine dis=none) header.from=amd.com ARC-Seal: i=2; a=rsa-sha256; t=1753339795; cv=pass; d=zohomail.com; s=zohoarc; b=aQ0JmbawEVRCwL2H/uLCOjwayad2zhWKNn5n0PAzmxRz24Vqv3JxhNsN/LaxEMUzcD+KoAteqEOgptkJQUlqrqzeBz2OgnQ8kJd6bvH7PhzpzK7cc9+mMjC0uiJROiR3adzYn6IadT8ZLitp8gPmPmW0YnfxAQSegpTfKykUtHg= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1753339795; 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=0wiGQtBPrJPxrFmR78Sey4wafy2fm5zo4JG9LXRWPJQ=; b=PChHdGJ/tcpkxnolVDNsV8LmaFa0AT8QCxOQSmtijxB6uLoP72zkqhQ1Dj/MnDsKkdM2f6M2N6OERKq/cp9h8EESOpDyId6tHcshRNEpq5FwrUUBiFXZd4nBpCYf/cTPTtrcPvkahBOL9Kdd4tZe5hHYhfzpTGMCDiwWC2f+dtg= ARC-Authentication-Results: i=2; 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; arc=pass (i=1 dmarc=pass fromdomain=amd.com); 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 1753339776060769.7566961735314; Wed, 23 Jul 2025 23:49:36 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uepl3-0007E6-FT; Thu, 24 Jul 2025 02:48:49 -0400 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 1uepl1-0007BW-8s for qemu-devel@nongnu.org; Thu, 24 Jul 2025 02:48:47 -0400 Received: from mail-dm6nam10on20619.outbound.protection.outlook.com ([2a01:111:f403:2413::619] helo=NAM10-DM6-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uepky-0002yX-W2 for qemu-devel@nongnu.org; Thu, 24 Jul 2025 02:48:47 -0400 Received: from MW4PR03CA0127.namprd03.prod.outlook.com (2603:10b6:303:8c::12) by SJ1PR12MB6220.namprd12.prod.outlook.com (2603:10b6:a03:455::11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8943.30; Thu, 24 Jul 2025 06:48:39 +0000 Received: from SJ5PEPF000001CF.namprd05.prod.outlook.com (2603:10b6:303:8c:cafe::a2) by MW4PR03CA0127.outlook.office365.com (2603:10b6:303:8c::12) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8964.21 via Frontend Transport; Thu, 24 Jul 2025 06:48:39 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by SJ5PEPF000001CF.mail.protection.outlook.com (10.167.242.43) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.8964.20 via Frontend Transport; Thu, 24 Jul 2025 06:48:39 +0000 Received: from BLR-L1-SARUNKOD.amd.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Thu, 24 Jul 2025 01:48:34 -0500 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=YnpkBkpbJDdIeZ8/qhSORdza58JHd8J1iGOWtyaVIeV1rZrTriH2yRU/rQ+Juk42p/+OCzdBV1r8FT+oLPMEXNzcC+10hxjRcSiWETH/aqLwDm6OxewecUTwFNx221q6unkGw2lqeForirPnxBStsVXVJWoMKz7pcBLK5Ue6TleiCdPDWkt6OEcqrEtruJSYsBGPGjXJAaYviQkySfhUa837fhVxacih6wu/UTCr2Iap/c+MwDxr8wnUbzvtQ0UCwNBA54NXDxglT6PwFSV3n8CjmpJRX6cydylyC9SATK9mlMN+JoIN6jQLj2N0CV0QMhVN4AxLcnsaym7ygxeaGw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=0wiGQtBPrJPxrFmR78Sey4wafy2fm5zo4JG9LXRWPJQ=; b=qtNXCLZFy8SQ4HJPb037IJNUp9/5jPra2+vnbTQ3qY4Er6DJOhbrui27dJCTiTPbhnaK0itpSIWt6TF7LnPsQXsEtl37iyUt8PLHzDoGPCmAlWtX9LJZnLrzHrajLtHhQcDldqoo3Bd+OFfQolj+YYi+N9sdJMwe7gNwDIvUwo/pN50C2k6QjWMOm8afh5RutZJP670BsX4xKgYnWXFBNh+WrtA2VOW2HFAbspJN0eUZYb8xeQv3PzTbeiE/THfM41PYmEO2ZANO5pWDXVeNJ0KkJarKHjSGnYoMZZwQqH7CnNEXuWrAfBz4VY5PJh/Z6TxPdPJqKvMXmRxqpwHpBg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=nongnu.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=0wiGQtBPrJPxrFmR78Sey4wafy2fm5zo4JG9LXRWPJQ=; b=X/Sszd8qhFYIe47Lnr30nmiWlUJ1EGUQ+obS46aVjjEunQ+iP45TtMzBkfgXva/cKYIXrvixivlY4SlkdZg4RZqwUQ1DhexC2jjqBS1o21iIDtWPC65mGBsyHk4NytR3NsENsK0PCBBhB7V919BwcYpFZBYAYdRzL3487Hy4yl4= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; 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 (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C From: Sairaj Kodilkar To: CC: , , , , , , , , Sairaj Kodilkar Subject: [PATCH v2 2/6] hw/i386/amd_iommu: Remove unused and wrongly set ats_enabled field Date: Thu, 24 Jul 2025 12:17:41 +0530 Message-ID: <20250724064745.4091-3-sarunkod@amd.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250724064745.4091-1-sarunkod@amd.com> References: <20250724064745.4091-1-sarunkod@amd.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ5PEPF000001CF:EE_|SJ1PR12MB6220:EE_ X-MS-Office365-Filtering-Correlation-Id: 0d60b223-bd15-42aa-bd87-08ddca7e1f32 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|82310400026|1800799024|376014|36860700013; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?TOI8nPvjhurhDFIz+ZZTyoxZHsGbCsHXXvvNrOVYbVCzDOvXDVao4/S7YI3H?= =?us-ascii?Q?aImvIUKJ5na8BGnFGkkUBBuNbyNLwEnPVeKV+D5/LYxVSF9Rl2iiMEvsjMBc?= =?us-ascii?Q?99Iahj3tAyW8/eyDSuoDJnSMoK4fvy4OyLv3lp9R37w2tXRY2yeMffVJbhUA?= =?us-ascii?Q?ZI6DcLYopda0EBaLdWWAiEoHPJSBJUk9WEa1yduBTygcbEiyOhM6/CTn55Pq?= =?us-ascii?Q?tIhrHdXbY3rekG0zttxHKbThJoi6bVXrADgOdyv83nOnHWxhi0R+mSibjdxe?= =?us-ascii?Q?ITzPpjKB98QYMsXSiplAjQkN2au6UCLG5Mq4Sp62HjzJTOm+Az4c0cig8G7d?= =?us-ascii?Q?AbdCoJ54Ejjic3O36sWxEVL/Br0XB6UPb8l+bJxgAKn3KlwTGshuLg6CNDKR?= =?us-ascii?Q?KLQHVhHlwaygnwjYv5WkS67VI1BL70tV/r7YW6I2gy0Sj0bRkuYiDVi5itax?= =?us-ascii?Q?k05WSIr1Az2hwsWebRS++q5uoFG1vZYJJNY4hFI2k0Ev6BZL34MZLW3vTfav?= =?us-ascii?Q?CejRAXhNYEIBwDxf3+TRAI90X1ReJm6W6LgC4KHf165RHAxcUXsOMNEJBENy?= =?us-ascii?Q?BeMbss2rjLXwQrO5Hr6yP3UjIbCsi2W3LLjzp/n2CcCCRIBb26enCwx50Iof?= =?us-ascii?Q?du4CDV+wvSAdWYka7Sc0Wv+c6hyFebg8PFPyo9p8vFygJiwouCeHc8SiqiaJ?= =?us-ascii?Q?1b5MeZo+U4/Y5Q20YzJ1SsuYlp+NcKHBuBENuPVoNirOqPQitXqXx+djP0ML?= =?us-ascii?Q?ZcyWeSJZt9LgBf+DUWzim4dFEql4Z9ivNWOozGAHB7TyjE2oAQgHoffLVqbX?= =?us-ascii?Q?N14t37x2qJKvMfRhRggY9aiotskQIF3jZ9cWzLvo66Dp3JTgVRqjcoe3/i3x?= =?us-ascii?Q?0DHTqH+PGbsLTJ7eP0ykBPlNarKFHyqoK1yuAtGS+mKDSL6GfVO5GRXIrCr5?= =?us-ascii?Q?f6Klzumco+vhlvopOWiVlPC+y67hgiiBdvVNDQoKfumhAqwduMt8H9VW8OKA?= =?us-ascii?Q?0qGxv34RMDaAaH4cM7s7esO5U+s/kJtWb2C30vGy8VKyfrLqNNN65zTA696K?= =?us-ascii?Q?Wh2HyaRbTDT/0772Nv6nsQifQw/0VWZu+Q3RKUSzpqXuxTPSKwooxzMRNxjY?= =?us-ascii?Q?EvM9lNeDbX1sqe8c1ZwyhvOw8QRmEhGe6HKbzUULRdtRm792BzHwjjrN96UO?= =?us-ascii?Q?bxOXbj+CPs9B6caMsmFXBu4iO4thRoQxSr5d2L0PqBI2zLdqycCoIl5r0Hgr?= =?us-ascii?Q?wCaGurnbm4nDQjEqtj5ZT7sknQnmTTStSHlAQ7acglTQ+EuGa0sfEUTSYqVM?= =?us-ascii?Q?y6TgZLXAApsSsLh7FQOiJNGfElJlDuACoWUfcep4OXsIo0peDAfcldSIp70B?= =?us-ascii?Q?sijBMJG56y6Qd+F1Em0OEypXP79UyTfkhkzMzTLwq0gfiOMpHbyWyY6VyBIo?= =?us-ascii?Q?SNpRxTpItraCB6SE7h4uXVPpLAt8zNb0JMF3R/NggA75P1a38kBlwHQfVeia?= =?us-ascii?Q?rS1BADOyUJHciwxvOBah2BmFuIoGMxs2R0F6?= X-Forefront-Antispam-Report: CIP:165.204.84.17; CTRY:US; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:SATLEXMB04.amd.com; PTR:InfoDomainNonexistent; CAT:NONE; SFS:(13230040)(82310400026)(1800799024)(376014)(36860700013); DIR:OUT; SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Jul 2025 06:48:39.3230 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 0d60b223-bd15-42aa-bd87-08ddca7e1f32 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d; Ip=[165.204.84.17]; Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: SJ5PEPF000001CF.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ1PR12MB6220 Received-SPF: permerror client-ip=2a01:111:f403:2413::619; envelope-from=Sairaj.ArunKodilkar@amd.com; helo=NAM10-DM6-obe.outbound.protection.outlook.com X-Spam_score_int: -24 X-Spam_score: -2.5 X-Spam_bar: -- X-Spam_report: (-2.5 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.377, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, 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 @amd.com) X-ZM-MESSAGEID: 1753339803000116600 Content-Type: text/plain; charset="utf-8" The ats_enabled field is set using HTTUNEN, which is wrong. Fix this by removing the field as it is never used. Fixes: d29a09ca68428 ("hw/i386: Introduce AMD IOMMU") Signed-off-by: Sairaj Kodilkar Reviewed-by: Vasant Hegde --- hw/i386/amd_iommu.c | 3 --- hw/i386/amd_iommu.h | 1 - 2 files changed, 4 deletions(-) diff --git a/hw/i386/amd_iommu.c b/hw/i386/amd_iommu.c index 7fb0bb68f008..39bb04fd9b18 100644 --- a/hw/i386/amd_iommu.c +++ b/hw/i386/amd_iommu.c @@ -646,7 +646,6 @@ static void amdvi_handle_control_write(AMDVIState *s) unsigned long control =3D amdvi_readq(s, AMDVI_MMIO_CONTROL); s->enabled =3D !!(control & AMDVI_MMIO_CONTROL_AMDVIEN); =20 - s->ats_enabled =3D !!(control & AMDVI_MMIO_CONTROL_HTTUNEN); s->evtlog_enabled =3D s->enabled && !!(control & AMDVI_MMIO_CONTROL_EVENTLOGEN); =20 @@ -1555,7 +1554,6 @@ static void amdvi_init(AMDVIState *s) s->excl_allow =3D false; s->mmio_enabled =3D false; s->enabled =3D false; - s->ats_enabled =3D false; s->cmdbuf_enabled =3D false; =20 /* reset MMIO */ @@ -1626,7 +1624,6 @@ static const VMStateDescription vmstate_amdvi_sysbus_= migratable =3D { /* Updated in amdvi_handle_control_write() */ VMSTATE_BOOL(enabled, AMDVIState), VMSTATE_BOOL(ga_enabled, AMDVIState), - VMSTATE_BOOL(ats_enabled, AMDVIState), VMSTATE_BOOL(cmdbuf_enabled, AMDVIState), VMSTATE_BOOL(completion_wait_intr, AMDVIState), VMSTATE_BOOL(evtlog_enabled, AMDVIState), diff --git a/hw/i386/amd_iommu.h b/hw/i386/amd_iommu.h index 8b42913ed8da..67078c6f1e22 100644 --- a/hw/i386/amd_iommu.h +++ b/hw/i386/amd_iommu.h @@ -322,7 +322,6 @@ struct AMDVIState { uint64_t mmio_addr; =20 bool enabled; /* IOMMU enabled */ - bool ats_enabled; /* address translation enabled */ bool cmdbuf_enabled; /* command buffer enabled */ bool evtlog_enabled; /* event log enabled */ bool excl_enabled; --=20 2.34.1 From nobody Sat Nov 15 10:42:24 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; arc=pass (i=1 dmarc=pass fromdomain=amd.com); dmarc=pass(p=quarantine dis=none) header.from=amd.com ARC-Seal: i=2; a=rsa-sha256; t=1753339793; cv=pass; d=zohomail.com; s=zohoarc; b=E+YWuGKYT6VcyqBsYtAcfvpWuLBlyVnqPegaoO5+LpJSMVxUEFXcUr4cVet3JlgAWqx7sMwh5AuX2AgP43witP7LLb6uOcFs+rTbyxbewAm//sEq4Ykp6t5Zq3Rid3mR9J6oG9XVaNlp2vOk9mXtodKPGgUbn9HJ7JF01FoeYf8= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1753339793; 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=OajnXpkteswnnVqvPrcK1t0zb9OWc48/R6TnAR+nkcY=; b=NmPzUnV4UW41GWNk5lZv2U6ZLGoZoPLuny+LZtzO7HKAo5pqWYyRSOZrJVreqpNk7p1eNV0hp1SIdRbh2eAVe2LsWM/vBImaJEdVH/EJEv9mQ+JuW9ILfvN0uz0YnTRocbCq3ItLmoUEeb3tCMMKlmDRTyEGqRw08CM4o/pDgtg= ARC-Authentication-Results: i=2; 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; arc=pass (i=1 dmarc=pass fromdomain=amd.com); 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 1753339793418544.0027954980243; Wed, 23 Jul 2025 23:49:53 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ueplO-0007QR-Ep; Thu, 24 Jul 2025 02:49:10 -0400 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 1ueplI-0007N2-IP for qemu-devel@nongnu.org; Thu, 24 Jul 2025 02:49:04 -0400 Received: from mail-mw2nam10on2061a.outbound.protection.outlook.com ([2a01:111:f403:2412::61a] helo=NAM10-MW2-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ueplG-000384-9F for qemu-devel@nongnu.org; Thu, 24 Jul 2025 02:49:04 -0400 Received: from BYAPR03CA0029.namprd03.prod.outlook.com (2603:10b6:a02:a8::42) by CH3PR12MB9195.namprd12.prod.outlook.com (2603:10b6:610:1a3::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8943.25; Thu, 24 Jul 2025 06:48:57 +0000 Received: from SJ5PEPF000001C8.namprd05.prod.outlook.com (2603:10b6:a02:a8:cafe::a8) by BYAPR03CA0029.outlook.office365.com (2603:10b6:a02:a8::42) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8964.22 via Frontend Transport; Thu, 24 Jul 2025 06:48:56 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by SJ5PEPF000001C8.mail.protection.outlook.com (10.167.242.36) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.8964.20 via Frontend Transport; Thu, 24 Jul 2025 06:48:56 +0000 Received: from BLR-L1-SARUNKOD.amd.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Thu, 24 Jul 2025 01:48:51 -0500 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=xb0i0x6KdkImcz6MMBFQFcL8+LN5FzmaCs+OumbHc7a1JxuvSTXBw/mKGRJV1WXJ6+O2cKDVp+LDnlQQKL1hqyVAGyqDtR1GxDswYwS1kEzdXd0tGMZqUrHKP1VS00SeyK7M+sGN9jG3Mvhb0TiXIZfiETxksYB6CeM4tjBinuGiWbw3mMuspOL3f8D+FWa8F2a/jwya8pQXH6MWg9vGa9IpqVbKxHacv5TkKu7a10v92p1IMVg4dNNIbhuw6bGEVxHhhHAfu4qmkjMO7yqf2Hs6C02ssapRjXRt0nwjs5j/9fQpFZCkV7PlHwP5CE0rpsMDDkwn1YvQa0tIDkQ1bQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=OajnXpkteswnnVqvPrcK1t0zb9OWc48/R6TnAR+nkcY=; b=s6KgEtQ0XbIkJWA4eGYgfRtLMtESk5s2rCw9rhsW3CtLyenl4J2egC57r+zrBVPcrMvwHY+98kUBPqS6xBKh9gP1Wl9sWSW1ZcGqRgJPd0WKg0mMd6sz8LgLPsKlVio1Q6E6lrm5VEuE7l5asb6ZSy7bigkk/fz28vqC4l/ZaLyw0CWDkCPBN5MSEla/it6endvu6UYFfRyoYgPplbsnPc6+CZlKcfEOG0Ohjvek0yH5xlI472MiuDjpjZVR7HqOwmmTwt5WsYQfoQBrCvAj0gIKgv42kvUM8LaW6v4lcEBY5pU8DV2G5xKwDWNADQZe4aWTfyKbJseZxofEjY1nCg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=nongnu.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=OajnXpkteswnnVqvPrcK1t0zb9OWc48/R6TnAR+nkcY=; b=stgL91QNX+rhGyaYeYSSG/curq/TNTbb6g7NyTe8i0jD+YTDAvZk3t6x6LZTSSyirsc4WunZMI6ItCyJFfDKfSTXRI7r6vp0S34NMjIsHyLtt7k8bPBpxTGDsW8UKNOUFC9DbrHCbbSlkOGuheqFMidxf08uSRmzrlB/FiezOUQ= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; 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 (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C From: Sairaj Kodilkar To: CC: , , , , , , , , Sairaj Kodilkar Subject: [PATCH v2 3/6] hw/i386/amd_iommu: Move IOAPIC memory region initialization to the end Date: Thu, 24 Jul 2025 12:17:42 +0530 Message-ID: <20250724064745.4091-4-sarunkod@amd.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250724064745.4091-1-sarunkod@amd.com> References: <20250724064745.4091-1-sarunkod@amd.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ5PEPF000001C8:EE_|CH3PR12MB9195:EE_ X-MS-Office365-Filtering-Correlation-Id: 9cd18d47-f933-458a-cf36-08ddca7e2987 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|376014|1800799024|82310400026|36860700013; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?E4pPeM8SfvmuEkkjY6/ymXLU+UDat53ygJpD17blmZuXQ2doWW0NPcDyQNs+?= =?us-ascii?Q?ynd0Fs1Lg5AJD1i2izpf6empaXvseEnr7T+qROY3+MeTTv5/FX8O31ZPjVit?= =?us-ascii?Q?M+nzWsiWsndE1F7vajaUafT3RmT/qQQlAdmXkfWBbhgPSp/dw3zAAcY83iQR?= =?us-ascii?Q?kHFQfeGZE+p1zf4sX1Zhsi+xxDTk7pd7uakAdApmXW1nseTDmCvvNJ3NtOp4?= =?us-ascii?Q?a3P5buscQble8VYtzD2Xbu+1i1KJRx8WJGRhzSCRLk15aomCRVTPrG30idPA?= =?us-ascii?Q?tri0602rd2sO2XHAMy1jfaproQLUWUJi1scCM16E77QUgn9jnH2uMf9KL23U?= =?us-ascii?Q?82Mr7E5cg8NfNoEFaltJ7o+MutCxdbuodsAVGNqGqtY2tsnS1C5hrWnZDkbv?= =?us-ascii?Q?jqAHkunv8EMwrEprOvzJhaKEDLgvffthJnvSWrayiZZad7dMJN4Rdl6iIdRq?= =?us-ascii?Q?5DAAVfspUl0Ni+EIAwGbUcpBP4r8ryTK2RnnV4z6Af/K3Jq6SQdDaeyzn8nI?= =?us-ascii?Q?XQ4Ogp2RTxiuXQLqS2SfydO7Ktblu0VELsrKBqOeLCpIOhS2SwJOPcR0HygM?= =?us-ascii?Q?Yc0QVhNK9au253ZfXUYZ0puNHv/Zf49ZU21rFsxZF5WwmUhQA+kUdw8ssX+j?= =?us-ascii?Q?2wTAV9QVxQHZ1gCxbTrl9NyNlK477LIUbTcxlThRbvY4WJK4NEJQbFeqcCE0?= =?us-ascii?Q?SQ6xKufbqaYnF6a+CfqKvG4F9MmRlQWugj3nbGQJjhNnkW8vG2+Tew4IYB1r?= =?us-ascii?Q?93LwfDGqchFjcXh71aW+pyqYEt5RJiLMJlgyMqp2fw6e7yVFJOUeApIxrjNl?= =?us-ascii?Q?wiXrpBGiTDmKak4urrpgg1jTAvc8dC8gzLQgSzfjFkl7/Z0qfMEkHBAFtkcR?= =?us-ascii?Q?ACTCstJM7u0IJ/dw6ikAy/f4R/idqBfdQ5vputOvxTRA/RFHXfHR5DCNataT?= =?us-ascii?Q?EBoqx4QvbHGBEvFAgYAfa2KUV3y1t3Cq8ltHhmDU70bpj2pxUMKIV6sU4AwX?= =?us-ascii?Q?qf2ZS2n+12uunxdWyobVYAwDY4W6bUgUDiRKEEztkyRAZn6UG1ixdcxH3ktA?= =?us-ascii?Q?r6+gcqmtpMapOxolKLNXAVUQx/T1bCcu9V47H8P47+BhO3G/ONqrd7z/6yg3?= =?us-ascii?Q?qOWdUSoB1Km6gCThcHvpZ2rMGE4BnDtIFfd/6LXfObzo4GD2Bn3k2TTECPMh?= =?us-ascii?Q?14MR3Oh+EVWx1xrN4bqQpEF56kH5nqmc2U7HPIAty3ZFoQh8PPKpQpz6LrBe?= =?us-ascii?Q?tOQcLUT0EHREBusqAyGI7iLS/cAj/gRz1hP3nb9JtV5tr9CPDYcOhaonbdue?= =?us-ascii?Q?ubyrtFmB45V9dXNXwtmrHtP+JgZJL40uvvxTzWhOcOMmkhKnwlb98C/5LLah?= =?us-ascii?Q?4zqZcL3H8JfMhCYTqN+C3I9sW6yEF06PfPyVQsbHFyeq+SVqRjmgs6BXwTvS?= =?us-ascii?Q?dLfRgl2nRecDPgGLVCNT4nii1vCduXYiG/xyBtY0Ju6WALBCcFa4flpqlviw?= =?us-ascii?Q?wqnOKabosaEuB0xcCVrRBoKkQiA4oc6TJFnv?= X-Forefront-Antispam-Report: CIP:165.204.84.17; CTRY:US; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:SATLEXMB04.amd.com; PTR:InfoDomainNonexistent; CAT:NONE; SFS:(13230040)(376014)(1800799024)(82310400026)(36860700013); DIR:OUT; SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Jul 2025 06:48:56.6572 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 9cd18d47-f933-458a-cf36-08ddca7e2987 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d; Ip=[165.204.84.17]; Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: SJ5PEPF000001C8.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH3PR12MB9195 Received-SPF: permerror client-ip=2a01:111:f403:2412::61a; envelope-from=Sairaj.ArunKodilkar@amd.com; helo=NAM10-MW2-obe.outbound.protection.outlook.com X-Spam_score_int: -24 X-Spam_score: -2.5 X-Spam_bar: -- X-Spam_report: (-2.5 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.377, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, 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 @amd.com) X-ZM-MESSAGEID: 1753339794863116600 Content-Type: text/plain; charset="utf-8" Setting up IOAPIC memory region requires mr_sys and mr_ir. Currently these two memory regions are setup after the initializing the IOAPIC memory region, which cause `amdvi_host_dma_iommu()` to use unitialized mr_sys and mr_ir. Move the IOAPIC memory region initialization to the end in order to use the mr_sys and mr_ir regions after they are fully initialized. Fixes: 577c470f4326 ("x86_iommu/amd: Prepare for interrupt remap support") Signed-off-by: Sairaj Kodilkar Reviewed-by: Vasant Hegde --- hw/i386/amd_iommu.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/hw/i386/amd_iommu.c b/hw/i386/amd_iommu.c index 39bb04fd9b18..2183510d227c 100644 --- a/hw/i386/amd_iommu.c +++ b/hw/i386/amd_iommu.c @@ -1696,9 +1696,6 @@ static void amdvi_sysbus_realize(DeviceState *dev, Er= ror **errp) s->iotlb =3D g_hash_table_new_full(amdvi_uint64_hash, amdvi_uint64_equal, g_free, g_free); =20 - /* Pseudo address space under root PCI bus. */ - x86ms->ioapic_as =3D amdvi_host_dma_iommu(bus, s, AMDVI_IOAPIC_SB_DEVI= D); - /* set up MMIO */ memory_region_init_io(&s->mr_mmio, OBJECT(s), &mmio_mem_ops, s, "amdvi-mmio", AMDVI_MMIO_SIZE); @@ -1721,6 +1718,9 @@ static void amdvi_sysbus_realize(DeviceState *dev, Er= ror **errp) memory_region_add_subregion_overlap(&s->mr_sys, AMDVI_INT_ADDR_FIRST, &s->mr_ir, 1); =20 + /* Pseudo address space under root PCI bus. */ + x86ms->ioapic_as =3D amdvi_host_dma_iommu(bus, s, AMDVI_IOAPIC_SB_DEVI= D); + if (kvm_enabled() && x86ms->apic_id_limit > 255 && !s->xtsup) { error_report("AMD IOMMU with x2APIC configuration requires xtsup= =3Don"); exit(EXIT_FAILURE); --=20 2.34.1 From nobody Sat Nov 15 10:42:24 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; arc=pass (i=1 dmarc=pass fromdomain=amd.com); dmarc=pass(p=quarantine dis=none) header.from=amd.com ARC-Seal: i=2; a=rsa-sha256; t=1753339802; cv=pass; d=zohomail.com; s=zohoarc; b=EUJpqom08us1r2bQMRRkUzQUFseDb0KeD3zdxN9iIFTDWH5uTCIKdgePM682U73QAwNGwP5Bcqeun+5MLtxv4oL8rp0EPhpOd5eXwhJ7w0Ri0i5UWrChA4Y4yDdGf6I3rz+qhHOAmk0HiT3BGmdYGM6pyoxYlIsRkcWm8zL/Zrw= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1753339802; 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=lbwOfif7VvdRWSMK7RhVNMW++0YFvOrRo1FM/srT4Tw=; b=AfZXFg1Fc5WYERHSrakHxjCqpsb3diR5JUQJMCfNcGdOph3DIYC4bwMKc9T4PfAkm8TCRvLALFMMDA9t4qDCF33lY7bT407+fkyn5OxN9m3Tf9rfoRblTOFNrjqD0EO+Y9jn75fiTH68BzufqIyA7TkFi5co2GklWCQ+DleWrfY= ARC-Authentication-Results: i=2; 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; arc=pass (i=1 dmarc=pass fromdomain=amd.com); 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 1753339802291738.414923370434; Wed, 23 Jul 2025 23:50:02 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1ueplr-0007gl-9V; Thu, 24 Jul 2025 02:49:39 -0400 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 1uepld-0007TA-FX for qemu-devel@nongnu.org; Thu, 24 Jul 2025 02:49:29 -0400 Received: from mail-dm6nam11on20608.outbound.protection.outlook.com ([2a01:111:f403:2415::608] helo=NAM11-DM6-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ueplb-0003Sb-Es for qemu-devel@nongnu.org; Thu, 24 Jul 2025 02:49:25 -0400 Received: from BYAPR01CA0027.prod.exchangelabs.com (2603:10b6:a02:80::40) by SA3PR12MB9179.namprd12.prod.outlook.com (2603:10b6:806:3a1::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8943.30; Thu, 24 Jul 2025 06:49:14 +0000 Received: from SJ5PEPF000001CA.namprd05.prod.outlook.com (2603:10b6:a02:80:cafe::60) by BYAPR01CA0027.outlook.office365.com (2603:10b6:a02:80::40) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8964.22 via Frontend Transport; Thu, 24 Jul 2025 06:49:48 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by SJ5PEPF000001CA.mail.protection.outlook.com (10.167.242.39) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.8964.20 via Frontend Transport; Thu, 24 Jul 2025 06:49:13 +0000 Received: from BLR-L1-SARUNKOD.amd.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Thu, 24 Jul 2025 01:49:07 -0500 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=pixokpiZVH0kpl7Dszir8SzLffYyo/UiTmfb3BBw95apsNb3EHDwupt4ahB7pYhDYO1r4abWsCpUv/u4AH7sasbKIr7ivbIkAoeqAsEQYCAV2BcpvqgzPGn5c53hRCiXru3Rb+kecr32rBLAspoNm6jyPRqqs2vJEEQGhRUJz2qCyVHuR/MP61uK5B3CgTl09g13O7+kYIgWvYbwGc/7xtPob863lOemq0tbFvHdtLjSwmtFagaj7/O+oCam1oEjhx27tBImJWj+A3jhxc/GzelsJSF0oHxx6QqHDTkJaiJP4QEz2Q5jO6H7T/MAWF9fYqEl9FyXQ4Gc3KPQaVRniA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=lbwOfif7VvdRWSMK7RhVNMW++0YFvOrRo1FM/srT4Tw=; b=rvtFkACTS83KC7Y+wD63ueEbzwsyenu/lx81ZdoMiP+eao1VREFw/5iLLPHbHa3+7kD/4XJ3c9DVQgrb2dJaGg14O3B4X5kWw+doE3Hjv3/x2k0LX3NhQP9+UIFYpszg5yQX0TArGYrEsM/iyfmlUA+iKRq1qm3fvdrGYtSdfYJwxF/6tBMD8rJfQZvo0T4FwNCecO55P52zKC8z0i7ZB5n+msZwLWt49XyNT/plaN5N7IDHXB8+iF87Fnzoe/ONHxo3dCY7dh+jiukA54fTCWwgGSQp1GgA3UZesGp8TDKhvo50DkI5APsehIrzhtwsO5kl0mZHu7Vt2JjzZjZDVA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=nongnu.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=lbwOfif7VvdRWSMK7RhVNMW++0YFvOrRo1FM/srT4Tw=; b=WNnvv4XW1dNy6zeUvM1TmfuuTURcq5tghtZsAeOPK8cuKWOP7F+qQolJ2WoY6hoDXwdCvM0zv9ZhJSV6MWMwH6g/3yd42z2UJ5t4TIWW8bGcViNgJEVama6zzXo8Gqy0OgUBsVNBtwFIWqNEb/IaKOrAjMtHBLkjeXwnznkxAu4= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; 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 (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C From: Sairaj Kodilkar To: CC: , , , , , , , , Sairaj Kodilkar , Ethan MILON Subject: [PATCH v2 4/6] hw/i386/amd_iommu: Fix amdvi_write*() Date: Thu, 24 Jul 2025 12:17:43 +0530 Message-ID: <20250724064745.4091-5-sarunkod@amd.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250724064745.4091-1-sarunkod@amd.com> References: <20250724064745.4091-1-sarunkod@amd.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ5PEPF000001CA:EE_|SA3PR12MB9179:EE_ X-MS-Office365-Filtering-Correlation-Id: 4ede8364-b57a-4227-5c93-08ddca7e3373 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|36860700013|1800799024|82310400026|376014; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?thgu5knym+Rhd52fwPhdsd5yudH4i9ZZkQsyZ+5CWLyhlaZInMZHAnN5BM/g?= =?us-ascii?Q?g5ymNxXrFzbW+dQ02p/yAwrHQ+fbhGWfoz+bzCuqgxoARZTjjqjHXX+wSoZp?= =?us-ascii?Q?U3By40J36ThNlbUkVLM94tPVSNaN+1Gdc+6aJUe5krf2aRvalYLsac8S7MJM?= =?us-ascii?Q?tdJawkLdkoJnc8IM17BHvpITRziT6VvtVjc4IPFU0pY2DcW+cpE2Bhzj9xa0?= =?us-ascii?Q?a3coB9yunn1H9Riy+yflKL3Eqrz+NnYz7S0c4z+PYeHGatyWJNLTLmxdXIcK?= =?us-ascii?Q?/Z6cgi3qUndFwiAisIqoJqrlZoPMjpVLQfMhnH6BgaZRg2Jyq6pV6pwKI90S?= =?us-ascii?Q?+EgI7eKk00Gr37RhyE8IZw2XtoJS8i+nJZjnMAlBkgCgafdNjiybRU4MAd8R?= =?us-ascii?Q?uTgjFzBtY+Vq1dWx1JEEefBupWm17ZDms4gEXIMvjGD1IdJU3ZNn96OTTY0X?= =?us-ascii?Q?jG0LYke8O4m5dS/9FQiEJF/W05yjQKHN+hVESmyV0b22yOjb4GXew1IESxMe?= =?us-ascii?Q?mLu8pCBXodQz7SpJ29fdlHkbmRrda/IdCGfQz27PDB5Ly/j6lZyImeRzjATK?= =?us-ascii?Q?PjyiEyaLwCsng4xT5CmztglY3pvxWxjzD0341LAU4GhhQFCJ0f4KM/TGKvxf?= =?us-ascii?Q?4YJ29NhE3IVEtAv3+xUZaQA4FRSJH0G87wJiJ9pneJutVDFmqxitKovFY6Q6?= =?us-ascii?Q?p0F/gqCEMBhSB/5WIPGcZWVi/RhKHyz42RMRbkJftKEtbcTKnk629ZacnDTt?= =?us-ascii?Q?oWJXBSohAvYiwURyz9feR/1FEh1tKNX48rvvkd9ebxAkVKjD70tDuXIEgPby?= =?us-ascii?Q?EL9x/VfvIx5QnaVyUECelvODt622YSBRuB5Sm+P92HNof/LWyI0xqVy/P1ud?= =?us-ascii?Q?z1MMcwyB/mTH0xZCPy2jlv7lo/hQ1ouxt2DbHjpUYATCvmeSziWJcRafYmR6?= =?us-ascii?Q?Y4/v3+ZgV3ptpcNMm0qTAo05b2mdkkhxx/FuS1LMAxz/EJfTXLXcppMLVzyK?= =?us-ascii?Q?Mgym9Z8tu32J2p0ZIGTe3T/Z8aBzw6K8NRuzfh03Dhgizq104Stz6DoezYej?= =?us-ascii?Q?ZnffWgE5HGeUBm7HTSEtMmjTQilZn+vu6TC0ppc3OSenfRVMMra766GRpDyI?= =?us-ascii?Q?6RJ32NDhHweD6xIqhRtL6/JOHNRzvu75za5MpEq0aHb5IqE4G3rVf+yha4n0?= =?us-ascii?Q?hD0aZ1RqS+rm9HypC6gIhEghKeZx8YH1oAoQNWWwuJPtWD0puN6KG1+eSWuL?= =?us-ascii?Q?NnILhNmD+XhyKt7SVOBsKY/ZANpX/RaGIrRdN2mVODZiQWqeiOdvOMkPNbE9?= =?us-ascii?Q?Y//W4BAim3+pgYbHNIT97Mt7WdjZ7GzApLGckfalcr3GoToGPCPHQC+Of/tz?= =?us-ascii?Q?US7Db4peXrOYZ+BeUYEW327ZP95H9PL+I3pqWvVbNRjEvNlEi74Uo7DE9X0i?= =?us-ascii?Q?hS8KWNQIR/+fhZy/OJUilz8CY2d86zJcp290EBRlWeDKizAeMHsIpDaGSHAb?= =?us-ascii?Q?qSoa3uw2BHu1Ikp97sD5hp+DBqCJsygO5Gel?= X-Forefront-Antispam-Report: CIP:165.204.84.17; CTRY:US; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:SATLEXMB04.amd.com; PTR:InfoDomainNonexistent; CAT:NONE; SFS:(13230040)(36860700013)(1800799024)(82310400026)(376014); DIR:OUT; SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Jul 2025 06:49:13.3023 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 4ede8364-b57a-4227-5c93-08ddca7e3373 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d; Ip=[165.204.84.17]; Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: SJ5PEPF000001CA.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA3PR12MB9179 Received-SPF: permerror client-ip=2a01:111:f403:2415::608; envelope-from=Sairaj.ArunKodilkar@amd.com; helo=NAM11-DM6-obe.outbound.protection.outlook.com X-Spam_score_int: -24 X-Spam_score: -2.5 X-Spam_bar: -- X-Spam_report: (-2.5 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.377, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, 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 @amd.com) X-ZM-MESSAGEID: 1753339803088116600 Content-Type: text/plain; charset="utf-8" amdvi_write*() function do not preserve the older values of W1C bits in the MMIO register. This results in all W1C bits set to 0, when guest tries to reset a single bit by writing 1 to it. Fix this by preserving W1C bits in the old value of the MMIO register. Fixes: d29a09ca68428 ("hw/i386: Introduce AMD IOMMU") Suggested-by: Ethan MILON Signed-off-by: Sairaj Kodilkar --- hw/i386/amd_iommu.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/hw/i386/amd_iommu.c b/hw/i386/amd_iommu.c index 2183510d227c..bbffd07b4e48 100644 --- a/hw/i386/amd_iommu.c +++ b/hw/i386/amd_iommu.c @@ -124,7 +124,8 @@ static void amdvi_writew(AMDVIState *s, hwaddr addr, ui= nt16_t val) uint16_t w1cmask =3D lduw_le_p(&s->w1cmask[addr]); uint16_t oldval =3D lduw_le_p(&s->mmior[addr]); stw_le_p(&s->mmior[addr], - ((oldval & romask) | (val & ~romask)) & ~(val & w1cmask)); + ((oldval & (romask | w1cmask)) | + (val & ~romask)) & ~(val & w1cmask)); } =20 static void amdvi_writel(AMDVIState *s, hwaddr addr, uint32_t val) @@ -133,7 +134,8 @@ static void amdvi_writel(AMDVIState *s, hwaddr addr, ui= nt32_t val) uint32_t w1cmask =3D ldl_le_p(&s->w1cmask[addr]); uint32_t oldval =3D ldl_le_p(&s->mmior[addr]); stl_le_p(&s->mmior[addr], - ((oldval & romask) | (val & ~romask)) & ~(val & w1cmask)); + ((oldval & (romask | w1cmask)) | + (val & ~romask)) & ~(val & w1cmask)); } =20 static void amdvi_writeq(AMDVIState *s, hwaddr addr, uint64_t val) @@ -142,7 +144,8 @@ static void amdvi_writeq(AMDVIState *s, hwaddr addr, ui= nt64_t val) uint64_t w1cmask =3D ldq_le_p(&s->w1cmask[addr]); uint64_t oldval =3D ldq_le_p(&s->mmior[addr]); stq_le_p(&s->mmior[addr], - ((oldval & romask) | (val & ~romask)) & ~(val & w1cmask)); + ((oldval & (romask | w1cmask)) | + (val & ~romask)) & ~(val & w1cmask)); } =20 /* OR a 64-bit register with a 64-bit value */ --=20 2.34.1 From nobody Sat Nov 15 10:42:24 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; arc=pass (i=1 dmarc=pass fromdomain=amd.com); dmarc=pass(p=quarantine dis=none) header.from=amd.com ARC-Seal: i=2; a=rsa-sha256; t=1753339917; cv=pass; d=zohomail.com; s=zohoarc; b=AJbUq/Zz+BdQ1VD/Ac38jpxbBt1rmBWKUu2ars0Qqy3QCWmIxNrc2OGoyM5j+DBQaG50allrF6VRJbGen/cGy2ywbDVkkw28gSi3TclG0YO6NOLBayWX6uM7zh3LHmRUwT+d4SjSxjTEQZXo8L5ocwaoCwElcrzXNL7oceJ2oZE= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1753339917; 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=INdmkIJ2kVyjQtWchIEIFsEqRw5cfVpN28DIfIixNIM=; b=BhLSjnf2fx+72LrGgAZu73Wqi/ItPZaiTHKAnu4h14WZsoki7sWlpj7iKnd9171CzPuuLKXFfBFS1SD9tR9npAArClzXyks3bKKoiFlu5wEPBUvwPfeiQnKdHhDtbM4wRNE1MdQjKq6FWPacDhqXB5Y0XgecNwt+ZeySOsMSC6I= ARC-Authentication-Results: i=2; 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; arc=pass (i=1 dmarc=pass fromdomain=amd.com); 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 1753339916958303.6842498412035; Wed, 23 Jul 2025 23:51:56 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uepm2-000890-Ps; Thu, 24 Jul 2025 02:49:50 -0400 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 1ueplw-0007xn-La for qemu-devel@nongnu.org; Thu, 24 Jul 2025 02:49:46 -0400 Received: from mail-dm6nam11on20616.outbound.protection.outlook.com ([2a01:111:f403:2415::616] helo=NAM11-DM6-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1ueplq-0003h7-TA for qemu-devel@nongnu.org; Thu, 24 Jul 2025 02:49:44 -0400 Received: from SJ2PR07CA0005.namprd07.prod.outlook.com (2603:10b6:a03:505::29) by CY3PR12MB9631.namprd12.prod.outlook.com (2603:10b6:930:ff::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8857.20; Thu, 24 Jul 2025 06:49:34 +0000 Received: from SJ5PEPF000001C9.namprd05.prod.outlook.com (2603:10b6:a03:505:cafe::ab) by SJ2PR07CA0005.outlook.office365.com (2603:10b6:a03:505::29) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8964.22 via Frontend Transport; Thu, 24 Jul 2025 06:49:34 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by SJ5PEPF000001C9.mail.protection.outlook.com (10.167.242.37) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.8964.20 via Frontend Transport; Thu, 24 Jul 2025 06:49:33 +0000 Received: from BLR-L1-SARUNKOD.amd.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Thu, 24 Jul 2025 01:49:29 -0500 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=wTRh4Q0WidOT+GyBkvCX/L6hwp0In5rUxQoWtDEVxfU8bqzLLaInlxB6mofQR+gyxdcZlV+hFcx2mtz5tgp8GrzVM+nVKQdfjOaiE8oaF4ihpsWznHPYOoWjNO5R0TLGvDH7b95qgaU43IoQruVeNvLSaQd9bKepM5La+FLbESufOAj81uM441gowMMGXhkVrcLosjLWttjWVmk/hsiukM/ewWROurIM6IOT8t32y69ssBMo5ta1nvAYZQkof8XmuDCdRE4kdp9+Glgh3DUEZVBjfWXe+fLK86ncczFbR2n0y79L68abh4w+DR9CsPHdlUZGAFkZYhQ6FkVc+86TLg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=INdmkIJ2kVyjQtWchIEIFsEqRw5cfVpN28DIfIixNIM=; b=J+3RbIo3fYLMhtykhdM4om1/DTxtFZ+g2aXk48x+0Vv3sxV5Vc+k+PnYAaiBWoLgDswMO3tO9lRMpmdhXwaNlqxnu3djgvkkSoJvUOwWuBD8nwijpOmRiYlLhOEgZxop4WSv5MncrL1Zvqb1bLeuIq7+cqLKnbpx17Uf1WjAZ0oQY4TZwccsRwWbYRQxycD9Ziju+m5pXyrbqCB7/c3RlgpARkaE0a6U+CL4GkXTHWhOTPmNwrxzLEbt0VEdsIaZ8CLnOOTJABT9ZykpxY/q0o75bzUZFlHwGcmGE2OakqV98kyUhXMNHodvwi7EBnp8suEFj4tattraOvM4fMF16g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=nongnu.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=INdmkIJ2kVyjQtWchIEIFsEqRw5cfVpN28DIfIixNIM=; b=intFx2N6SlRSNd9Fa2BtobLGDdeJsayw+f0GvTy9px0aGi9y/jbLhThXiXDnLLYQjwR+qOW8KPhllwh41R04WapoE72HuGKwd+CnEOT7nrQPaQXtBRr/DhYuxMiObVww0j1hTaiWOVc87FsBTUgSfc3c8JCurRWjk0UVeeZhlh0= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; 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 (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C From: Sairaj Kodilkar To: CC: , , , , , , , , Sairaj Kodilkar Subject: [PATCH v2 5/6] hw/i386/amd_iommu: Support MMIO writes to the status register Date: Thu, 24 Jul 2025 12:17:44 +0530 Message-ID: <20250724064745.4091-6-sarunkod@amd.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250724064745.4091-1-sarunkod@amd.com> References: <20250724064745.4091-1-sarunkod@amd.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ5PEPF000001C9:EE_|CY3PR12MB9631:EE_ X-MS-Office365-Filtering-Correlation-Id: 51f7f525-91c8-49af-c1c9-08ddca7e3f9a X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|376014|36860700013|82310400026|1800799024; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?01Hjf2IviH1sg8f4P4LUQiAOqiHz7D1e8c1v8n29Ok5tIquJCxBxxtg/4sCd?= =?us-ascii?Q?nQKVSjWQJkuU3WS0GH87u3HqSiMyQrWao6u9fKlopzV3fFP3O7iEA6xARD9I?= =?us-ascii?Q?JwJ5OAHiGkV2sw1+AhYx6MibfCj+sKF1jK9zplbKPYIUAvKVjs/X5W93/glK?= =?us-ascii?Q?FoHUDzrUsrjFWX/3MgTopA022LL9iH/nWGzPqQo3J9zM7IfxkJOsdEkwrBUG?= =?us-ascii?Q?2JCRdSr2YpktKny0q2FVeICA3O30ePgG9/x3y0K3LwOUWxOnWhjkvW+I0qx4?= =?us-ascii?Q?J/tcSwNJ+IcgjlbSLqWRBLkKaMxQ7xMPYk5514t5/80iScdxyVPyOeyvViUu?= =?us-ascii?Q?ZDAfVh4Nc8VbZIPq4qMW6GZ0ssPEXDG+5MAQy5NZq+2lpWbXIBJ1BxmA9dYO?= =?us-ascii?Q?y9PGXxLJL1wJmsOC5wbk9qUffmEPlbbMv2sTqPrjnglbshjc7yzMZRd6aBhY?= =?us-ascii?Q?tAFNsiLs6CT+odOkhnKmrC1aHv64WS2AQPpqQlr2d3OVFR7+1kSdMhfjoS7E?= =?us-ascii?Q?Pb1tBJ5S5SsQ68WLKayaX2tZt1DP8kd4hhPtZZDsrxhUIS65aNrgt5buOjEd?= =?us-ascii?Q?XZOBIkgDPLuPO9uAw06SYWREjF9VG/BCYpuMLthuqm/DG0pKkcuN54KcD8AD?= =?us-ascii?Q?eCmgp8JwOJ9vBtwwoSWxpKfsUC5xwxV/ciFMOLz3Pi/hD4VuNTzklu8byeBX?= =?us-ascii?Q?erKEdSPFwkpJEoIt6F3z4ieBUgSGeS4ETBTuwEPlgGbrFKOGWpCj9+n1weg+?= =?us-ascii?Q?7YUwf4KMDg3NlWNUAdTZZQe+5w9a8Lfq2ptKP6uQa3wJQg8zb6Axw92iTQBy?= =?us-ascii?Q?YJz8w95jXPJIX5fahCurVCgKt+D1GCdp6FimqSCXo7O1V9RBfPd8TbZx2uyI?= =?us-ascii?Q?cvwXE/7WNNbGQiqADKKqtz1qtpMaU73sTd3p9DDeGVvOQJC/tH58nSSCqMUc?= =?us-ascii?Q?lnCuXq+ogw/hx+9hMZxNQrheVQJEbuRTeaKDMRMBayhusP0kS2LwOdmQ8ggx?= =?us-ascii?Q?FqpFU8Ht0JILOE8QPjh4t5yicTEOy/h2sBnTaiEbPKRsvsgVIz0ML1/ykg8p?= =?us-ascii?Q?dtzOgSIKZ/WueWPWVEIU1muEpAYAINpYwqfCSQ+gIyq2FUxuW24g8/BINNEU?= =?us-ascii?Q?EoIK96wRWKSh3i4acukwvX/SOJjPJHbGptrJ0kbe9esn7hoXG9CnmZhIeD1N?= =?us-ascii?Q?wO89xLLy0BPlsARnT9L0jB6vDMiNilD4O+xBPsgY5zZNdg1Sp10MqMXlNFRr?= =?us-ascii?Q?b7AZxpZzDeHgY7m1PZ2k1XzYCnKXz29T/CJRkgVjw4/RODO98dwcAHWXbWn4?= =?us-ascii?Q?o2yTzEhpU46TJFVkSV+w06X+VvNHtVLZl6XXu7QToUlKvEjRPBIhKMZe8pGV?= =?us-ascii?Q?skEZ0hynth65xTxeWuK1+o3rljVELQJeYraqyaP/yegT6BCCW+ZhkuPyMTmd?= =?us-ascii?Q?emOIFxL36FFiP57LkuItDgMrVtbGa07QHvEcD+73g/OsFOBViGTiKrCZpx6x?= =?us-ascii?Q?S9AKVFLnqoeldD1Y352XOeAki3bQ4TTUk4JN?= X-Forefront-Antispam-Report: CIP:165.204.84.17; CTRY:US; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:SATLEXMB04.amd.com; PTR:InfoDomainNonexistent; CAT:NONE; SFS:(13230040)(376014)(36860700013)(82310400026)(1800799024); DIR:OUT; SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Jul 2025 06:49:33.6918 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 51f7f525-91c8-49af-c1c9-08ddca7e3f9a X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d; Ip=[165.204.84.17]; Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: SJ5PEPF000001C9.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY3PR12MB9631 Received-SPF: permerror client-ip=2a01:111:f403:2415::616; envelope-from=Sairaj.ArunKodilkar@amd.com; helo=NAM11-DM6-obe.outbound.protection.outlook.com X-Spam_score_int: -24 X-Spam_score: -2.5 X-Spam_bar: -- X-Spam_report: (-2.5 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.377, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_PASS=-0.001, T_SPF_HELO_TEMPERROR=0.01 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 @amd.com) X-ZM-MESSAGEID: 1753339920004124100 Content-Type: text/plain; charset="utf-8" Support the writes to the status register so that guest can reset the EventOverflow, EventLogInt, ComWaitIntr, etc bits after servicing the respective interrupt. Signed-off-by: Sairaj Kodilkar Reviewed-by: Vasant Hegde --- hw/i386/amd_iommu.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/hw/i386/amd_iommu.c b/hw/i386/amd_iommu.c index bbffd07b4e48..7c2fa80d14ff 100644 --- a/hw/i386/amd_iommu.c +++ b/hw/i386/amd_iommu.c @@ -850,6 +850,9 @@ static void amdvi_mmio_write(void *opaque, hwaddr addr,= uint64_t val, amdvi_mmio_reg_write(s, size, val, addr); amdvi_handle_pprtail_write(s); break; + case AMDVI_MMIO_STATUS: + amdvi_mmio_reg_write(s, size, val, addr); + break; } } =20 --=20 2.34.1 From nobody Sat Nov 15 10:42:24 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; arc=pass (i=1 dmarc=pass fromdomain=amd.com); dmarc=pass(p=quarantine dis=none) header.from=amd.com ARC-Seal: i=2; a=rsa-sha256; t=1753339856; cv=pass; d=zohomail.com; s=zohoarc; b=i5PT1Iroo0B+5jQHxTB+hfAJ7c68k2zpyVKkuyZamhkyrQcOx1voO88z+BV2fXrxgrt4UF9z/bicM3JNQhGxi6j1aimWPYkq/jSwzPprTcoVdMKoTAprrh2U5QuzkTa3X++qDPJH1S8tly99mL1Q3jnJI3AaXsX29CJwN+agE4w= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1753339856; 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=9iR8rUVt0THI8qQsog4zMDP1xFHMekxednvOp9dHCQA=; b=eb7i/OpQbLTSRvcBZDfV53qhT5MWD78rvCpQCh90O7QO1SiXrG6AsmRlmnA88tWi9ESADYB0MKx0s7YBhblzF8rNsomMw0bacTQzqJ9ImhOO4Rs1Uflw17BCy8F0h30XICGIZl2sKYgiOzOzbcA+Sj2lGVkAsAXr9v2TTOgc79g= ARC-Authentication-Results: i=2; 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; arc=pass (i=1 dmarc=pass fromdomain=amd.com); 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 1753339856817878.6518352835459; Wed, 23 Jul 2025 23:50:56 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uepmI-0000Wa-40; Thu, 24 Jul 2025 02:50:06 -0400 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 1uepmE-0000Lp-AV for qemu-devel@nongnu.org; Thu, 24 Jul 2025 02:50:02 -0400 Received: from mail-bn8nam04on20620.outbound.protection.outlook.com ([2a01:111:f403:2408::620] helo=NAM04-BN8-obe.outbound.protection.outlook.com) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uepm9-00047Q-Lw for qemu-devel@nongnu.org; Thu, 24 Jul 2025 02:50:01 -0400 Received: from MW4PR03CA0136.namprd03.prod.outlook.com (2603:10b6:303:8c::21) by CH1PR12MB9647.namprd12.prod.outlook.com (2603:10b6:610:2b0::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8880.23; Thu, 24 Jul 2025 06:49:50 +0000 Received: from SJ5PEPF000001CF.namprd05.prod.outlook.com (2603:10b6:303:8c:cafe::22) by MW4PR03CA0136.outlook.office365.com (2603:10b6:303:8c::21) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.8964.21 via Frontend Transport; Thu, 24 Jul 2025 06:49:49 +0000 Received: from SATLEXMB04.amd.com (165.204.84.17) by SJ5PEPF000001CF.mail.protection.outlook.com (10.167.242.43) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.20.8964.20 via Frontend Transport; Thu, 24 Jul 2025 06:49:49 +0000 Received: from BLR-L1-SARUNKOD.amd.com (10.180.168.240) by SATLEXMB04.amd.com (10.181.40.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.39; Thu, 24 Jul 2025 01:49:45 -0500 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=lcb7K0cA6wdyxHl9aSBwAtNw80KnlgUxJYevoaw8xql4NGGEK3P00dzG7fH/2nnSxpWvswL+euTfbQk2INoKR8L2ElnZpi8N0niH7ITDY4xUN0NcQJVodvGWsOPkrZz1EWlCyN6MMZnEnba7cKqPoWu+TJ67lY+VzbmaSxlerq7aUMKy26QStEdoQMEchmvsDOre/IimA7Alk9L271q41YwWZy/T7+3z6vgm14rK1N8ie1TCcTRKETyOZswS2Eie4VJ6vaJNXt4BQI25CHQRUyJGU3EKiELior3zUAMxXZEPAaVRlX+uzJ/LmaUAkepwx4ydWhFMxO7NXv95iKxgJA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=9iR8rUVt0THI8qQsog4zMDP1xFHMekxednvOp9dHCQA=; b=UOZ1ncABIBR004E/6mrv88Vb1XvuSLW5Th/x/xo6ARbxsRpmg37ju5Yg9QgCAzlXOFQCiH8ALSi2n9RMPmFFFhPNbZIFcshm9ugTliQdRhLlnnD+Ztb4WYV3DawzOTfozygB31eku4W4+K/9wD7N6QfMeHyF37W3cP3jRTwdFuw+3t0UQRC+6P3ulMuPMX1oFF6+5ghsEuE1b+CZmcVJcvb7Q5UEwnpEFyOozPEgNyjfOa4jIyTbl0a7Lux3cOfk2tdBPjD2aA7Elmpx5UFQkSCkWI+7lxURR0rgQX5grOXVGa0A9t4S9l020ztDSxksFpmSwj6ZxCC9sAT7t2dEdg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass (sender ip is 165.204.84.17) smtp.rcpttodomain=nongnu.org smtp.mailfrom=amd.com; dmarc=pass (p=quarantine sp=quarantine pct=100) action=none header.from=amd.com; dkim=none (message not signed); arc=none (0) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=9iR8rUVt0THI8qQsog4zMDP1xFHMekxednvOp9dHCQA=; b=PH/19aoml647OgiiAKTs3wlSjIKs54P5Cm24Ndr7nMA1uRLqyK1HuG73n8nCPJFY/ETCj2fXyZ8Gw8dEd7WQ6UwKhgWE+MWRx0dAYYazvvLDFcnMcjqeYZOoyZFXYSQy0/sFmeeymwEFwmWqnZQSH+ZPEF2dzUdt3FnXhKo/hfc= X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 165.204.84.17) smtp.mailfrom=amd.com; dkim=none (message not signed) header.d=none;dmarc=pass action=none header.from=amd.com; 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 (protection.outlook.com: domain of amd.com designates 165.204.84.17 as permitted sender) receiver=protection.outlook.com; client-ip=165.204.84.17; helo=SATLEXMB04.amd.com; pr=C From: Sairaj Kodilkar To: CC: , , , , , , , , Sairaj Kodilkar Subject: [PATCH v2 6/6] hw/i386/amd_iommu: Fix event log generation Date: Thu, 24 Jul 2025 12:17:45 +0530 Message-ID: <20250724064745.4091-7-sarunkod@amd.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20250724064745.4091-1-sarunkod@amd.com> References: <20250724064745.4091-1-sarunkod@amd.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Originating-IP: [10.180.168.240] X-ClientProxiedBy: SATLEXMB03.amd.com (10.181.40.144) To SATLEXMB04.amd.com (10.181.40.145) X-EOPAttributedMessage: 0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SJ5PEPF000001CF:EE_|CH1PR12MB9647:EE_ X-MS-Office365-Filtering-Correlation-Id: 87b0fa8a-4b9d-4583-9e33-08ddca7e48c5 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; ARA:13230040|1800799024|36860700013|82310400026|376014; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?7wxPo4T6CW2ZQnVvCs0wns9Vh+jew22w197SMOCTGk69eaBeKzc9rC9Yox9/?= =?us-ascii?Q?N77ATCjsm4izkSrGG82tOrkYU5qH3TKipvHT5by0RiCn3Q2sFSUL3dExNGVl?= =?us-ascii?Q?UWL0r7ousvyM235cvOgeUh+fRqtAM3cdfII4dVkyUEea9ZLSJt7IwW6jkuZH?= =?us-ascii?Q?oL7c8P0LsJGLUWpH7f6E+0qLG6pAq0qUYZraSBADOqQ5rri9uYCCludTix2b?= =?us-ascii?Q?WhKKaD48EuAqe6VrPmJyI+zKJQLVLdpTu93L9YD4MANV4KmIPlbDudAx/nC2?= =?us-ascii?Q?MQCJhB6ab8JKsvBWLW70ZnzeliBbA6o/A0fhwbWIHzBS+xGAaf5q3H8fCMRI?= =?us-ascii?Q?yORvEj/ys0p1GMclmD/0H35Y3Sc9pWGNM9s9cgpS4ST8s1E0sttp9e6Nzw4L?= =?us-ascii?Q?Hg96Uhra8hXwD8ttUSfm9piSjDqMWbnUaelCzwHyE5GzzyCcaIskgwKb4JzF?= =?us-ascii?Q?hTMhxZMeCny2Cn61CaIKFYuv/T6NZTo3znRtLBaxtWakWYxi3JSWPLSupag1?= =?us-ascii?Q?KPoVwe4bc64Ayqwa0vqfRD3feeuJvwpuZZrEOLZA+NNneQiSByT19dCG8G4f?= =?us-ascii?Q?c2n/C/IoRwHuAZem7rXnEGKQowyV4JAV9aDXFRbd4eArmpxuIx+9zr1ymuqT?= =?us-ascii?Q?k2oAhXGOxqJK5mvtqvDbGu7THJBVov/UC84e3CyNI4beSkdnRTm4w+67wV0o?= =?us-ascii?Q?a0KcpSOUJ1Ri6B4x4QzJTsTvRkal+ImJualab1KxUXJO/D1gKsugjPDRxxKy?= =?us-ascii?Q?yS0ElYSyu+Ey6VaXLtkYVQuzTuMpO4zt4ykyfujBeIlQwy9nojnHsnb77ncx?= =?us-ascii?Q?3Trv58X1c2bFHbeWhTELeOXLs24GorK4l1X+1Ap6bo3ZwrthqNxoy6krsDvy?= =?us-ascii?Q?e8O3uxvIDUj2s27oG7gBm/Plz5AMY36g+GDOiQdBSCuODVwmCZul0eYAjHTb?= =?us-ascii?Q?zoqQXRyI/sCikFs+TeICYbHmpA7K21StAlI34Bbrx9iEQQ1rDGyGGTX44w4L?= =?us-ascii?Q?QuEYm89qe5Kn1VGGwou8c3N8JeMWCuCPS3wPSp25gZZqmtfakJdZy2gDgKH6?= =?us-ascii?Q?h1dGqdcRXwFhEaDkzeHUYDGWHLuIhS5nTBY5xrR7ZkrpbMcEDi2GILwRWHPl?= =?us-ascii?Q?a4ans02W5MTw4sRwLIgePSOv0a7wpQfpnujKuBjthmTDDPsbHClR1vcrpx/t?= =?us-ascii?Q?Dt4rMwD5g1c7pk4zi7mToAgXyGBnpSedT3DLHnsiOVNaKJgy3cEOapBK/bGe?= =?us-ascii?Q?PvABfcom6EW/iRhM7pEoGf4Le76NGCH0uB+vAT35ldFcGbQ8U/qwomTweACg?= =?us-ascii?Q?2aIVgcWlDhv0fK/GceKk6z8nIs1u5POZncVumSOQX9B2f6mzFSJ3e7D7KAEx?= =?us-ascii?Q?DMCMv5zGyp/8C1NXieMJTMvrrAwi1nKez8XCFM1aZp3xjqBCH/Clr1U/rqJj?= =?us-ascii?Q?6YyZCFIMzRHcXbRSfEe+paZISTbO491rJN+M25qpvDb4bC45xZo7Me0xz9/x?= =?us-ascii?Q?1KNUGAuBKSGRgXp9P9xt2lxWSf0VzcuavZpL?= X-Forefront-Antispam-Report: CIP:165.204.84.17; CTRY:US; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:SATLEXMB04.amd.com; PTR:InfoDomainNonexistent; CAT:NONE; SFS:(13230040)(1800799024)(36860700013)(82310400026)(376014); DIR:OUT; SFP:1101; X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 24 Jul 2025 06:49:49.0730 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 87b0fa8a-4b9d-4583-9e33-08ddca7e48c5 X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d; Ip=[165.204.84.17]; Helo=[SATLEXMB04.amd.com] X-MS-Exchange-CrossTenant-AuthSource: SJ5PEPF000001CF.namprd05.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH1PR12MB9647 Received-SPF: permerror client-ip=2a01:111:f403:2408::620; envelope-from=Sairaj.ArunKodilkar@amd.com; helo=NAM04-BN8-obe.outbound.protection.outlook.com X-Spam_score_int: -24 X-Spam_score: -2.5 X-Spam_bar: -- X-Spam_report: (-2.5 / 5.0 requ) BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.377, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, 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 @amd.com) X-ZM-MESSAGEID: 1753339857783116600 Content-Type: text/plain; charset="utf-8" Current event logging code is broken, because of following issues 1. The code uses '|' instead of '&' to test the bit field, which causes vIOMMU to generate overflow interrupt for every log entry. 2. Code does not update the eventlog tail MMIO register after adding an entry to the buffer, because of which guest cannot process new entries (as head =3D=3D tail means buffer is empty). 3. Compares eventlog tail (which is byte offset in the buffer) to eventlog length (which is number of maximum entries in the buffer). This causes vIOMMU to generate only fix number of event logs, after which it keeps on generating overflow interrupts, without actually resetting the log buffer. 4. Updates ComWaitInt instead of EventLogInt bitfield in Status register. Guest checks this field to see if there are new event log entries in the buffer. 5. Does not reset event log head and tail pointers when guest writes to eventlog base register. Fix above issues, so that guest can process event log entries. Fixes: d29a09ca68428 ("hw/i386: Introduce AMD IOMMU") Signed-off-by: Sairaj Kodilkar Reviewed-by: Vasant Hegde --- hw/i386/amd_iommu.c | 44 +++++++++++++++++++++++++++++++++++--------- hw/i386/amd_iommu.h | 1 + 2 files changed, 36 insertions(+), 9 deletions(-) diff --git a/hw/i386/amd_iommu.c b/hw/i386/amd_iommu.c index 7c2fa80d14ff..df564bc90fa9 100644 --- a/hw/i386/amd_iommu.c +++ b/hw/i386/amd_iommu.c @@ -148,10 +148,10 @@ static void amdvi_writeq(AMDVIState *s, hwaddr addr, = uint64_t val) (val & ~romask)) & ~(val & w1cmask)); } =20 -/* OR a 64-bit register with a 64-bit value */ +/* AND a 64-bit register with a 64-bit value */ static bool amdvi_test_mask(AMDVIState *s, hwaddr addr, uint64_t val) { - return amdvi_readq(s, addr) | val; + return amdvi_readq(s, addr) & val; } =20 /* OR a 64-bit register with a 64-bit value storing result in the register= */ @@ -180,19 +180,31 @@ static void amdvi_generate_msi_interrupt(AMDVIState *= s) } } =20 +static uint32_t get_next_eventlog_entry(AMDVIState *s) +{ + uint32_t evtlog_size =3D s->evtlog_len * AMDVI_EVENT_LEN; + return (s->evtlog_tail + AMDVI_EVENT_LEN) % evtlog_size; +} + static void amdvi_log_event(AMDVIState *s, uint64_t *evt) { + uint32_t evtlog_tail_next; + /* event logging not enabled */ if (!s->evtlog_enabled || amdvi_test_mask(s, AMDVI_MMIO_STATUS, AMDVI_MMIO_STATUS_EVT_OVF)) { return; } =20 + evtlog_tail_next =3D get_next_eventlog_entry(s); + /* event log buffer full */ - if (s->evtlog_tail >=3D s->evtlog_len) { - amdvi_assign_orq(s, AMDVI_MMIO_STATUS, AMDVI_MMIO_STATUS_EVT_OVF); - /* generate interrupt */ - amdvi_generate_msi_interrupt(s); + if (evtlog_tail_next =3D=3D s->evtlog_head) { + /* generate overflow interrupt */ + if (s->evtlog_intr) { + amdvi_assign_orq(s, AMDVI_MMIO_STATUS, AMDVI_MMIO_STATUS_EVT_O= VF); + amdvi_generate_msi_interrupt(s); + } return; } =20 @@ -201,9 +213,13 @@ static void amdvi_log_event(AMDVIState *s, uint64_t *e= vt) trace_amdvi_evntlog_fail(s->evtlog, s->evtlog_tail); } =20 - s->evtlog_tail +=3D AMDVI_EVENT_LEN; - amdvi_assign_orq(s, AMDVI_MMIO_STATUS, AMDVI_MMIO_STATUS_COMP_INT); - amdvi_generate_msi_interrupt(s); + s->evtlog_tail =3D evtlog_tail_next; + amdvi_writeq_raw(s, AMDVI_MMIO_EVENT_TAIL, s->evtlog_tail); + + if (s->evtlog_intr) { + amdvi_assign_orq(s, AMDVI_MMIO_STATUS, AMDVI_MMIO_STATUS_EVENT_INT= ); + amdvi_generate_msi_interrupt(s); + } } =20 static void amdvi_setevent_bits(uint64_t *buffer, uint64_t value, int star= t, @@ -719,9 +735,19 @@ static inline void amdvi_handle_excllim_write(AMDVISta= te *s) static inline void amdvi_handle_evtbase_write(AMDVIState *s) { uint64_t val =3D amdvi_readq(s, AMDVI_MMIO_EVENT_BASE); + + if (amdvi_readq(s, AMDVI_MMIO_STATUS) & AMDVI_MMIO_STATUS_EVENT_INT) + /* Do not reset if eventlog interrupt bit is set*/ + return; + s->evtlog =3D val & AMDVI_MMIO_EVTLOG_BASE_MASK; s->evtlog_len =3D 1UL << (amdvi_readq(s, AMDVI_MMIO_EVTLOG_SIZE_BYTE) & AMDVI_MMIO_EVTLOG_SIZE_MASK); + + /* clear tail and head pointer to 0 when event base is updated */ + s->evtlog_tail =3D s->evtlog_head =3D 0; + amdvi_writeq_raw(s, AMDVI_MMIO_EVENT_HEAD, s->evtlog_head); + amdvi_writeq_raw(s, AMDVI_MMIO_EVENT_TAIL, s->evtlog_tail); } =20 static inline void amdvi_handle_evttail_write(AMDVIState *s) diff --git a/hw/i386/amd_iommu.h b/hw/i386/amd_iommu.h index 67078c6f1e22..2476296c4902 100644 --- a/hw/i386/amd_iommu.h +++ b/hw/i386/amd_iommu.h @@ -111,6 +111,7 @@ #define AMDVI_MMIO_STATUS_CMDBUF_RUN (1 << 4) #define AMDVI_MMIO_STATUS_EVT_RUN (1 << 3) #define AMDVI_MMIO_STATUS_COMP_INT (1 << 2) +#define AMDVI_MMIO_STATUS_EVENT_INT (1 << 1) #define AMDVI_MMIO_STATUS_EVT_OVF (1 << 0) =20 #define AMDVI_CMDBUF_ID_BYTE 0x07 --=20 2.34.1