From patchwork Thu May 2 15:29:20 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: CLEMENT MATHIEU--DRIF X-Patchwork-Id: 13651801 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id A4225C25B5C for ; Thu, 2 May 2024 15:29:56 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1s2YNJ-0003fw-AZ; Thu, 02 May 2024 11:29:33 -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 1s2YNH-0003dy-8Z for qemu-devel@nongnu.org; Thu, 02 May 2024 11:29:31 -0400 Received: from smarthost1.eviden.com ([80.78.11.82]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1s2YNE-0005zh-GF for qemu-devel@nongnu.org; Thu, 02 May 2024 11:29:30 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=eviden.com; i=@eviden.com; q=dns/txt; s=mail; t=1714663768; x=1746199768; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-id:content-transfer-encoding: mime-version; bh=3fG8vUdx571SSHY7CyRXK67viHVvSthpg//jIoJ+WGo=; b=cP93zFOhdzxlON0jM4waCuWF15ITU9mv1Zhw25D7GOhyIgEXC7IpZxIL yAYdF1LRaA++Z1CEfiDTK7t1LCVZ0mV7p4DmjBDOE/+6ilCYELLXanJ2r 680STcDwuL0bz3TeAKMLg71x5LbppAzTKCf35/aVHlnOwErmJF+Ards1Z BLDq478ze4Od8jsyO2VtAT+osfRmNbcM/rGQpi2haU7n9ZFjPyiQ3cVPq OsQkdr1lsH0pJoyVpj1zxtp1LqdEKNESAAOoDLAkTPqizBaiNr+jAmZYx y5psEQglF5fd9KKsTrN/5akiVspha/QIoB4Amgu7RtNKm/uUohD3M73iV g==; X-IronPort-AV: E=Sophos;i="6.07,247,1708383600"; d="scan'208";a="11730668" X-MGA-submission: MDGDJ/kIyvLiZqS/QC9Pr4FSPUFUO9lU20yQWOHbc6fAqMY225E57m0n8jJ9VINrvIEnCxhj/LhFCdpwqMcmhcnIMeGWlI/QOpUmMh2yNCtFcsaLVyl/Jf2R8YQzWEGWeFzkAl4luoJcvOPguDxQCWxfQo68fTkWvobUDHkgzsbgjQ== Received: from mail-am6eur05lp2104.outbound.protection.outlook.com (HELO EUR05-AM6-obe.outbound.protection.outlook.com) ([104.47.18.104]) by smarthost1.eviden.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 02 May 2024 17:29:21 +0200 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=SUVj7YfnNfTBzC5lRjMYGYHE592nOnnoyNZKLWN1gWmD17lRHPj5b6+lbUNh/3BTVz2VrlXXnOkcvttd6vLHjPbtugjxXKnh1HEnhRAjp4XQcnLk7uEzOyjTXxa83BwfwEQcCCUKDP3MgWFnSc7xFDz6vA1rzcqXHWEow1t5qVZyehkMb3mqW8miyr66wlKQIdVxp2jnCH1F56Ii3nTd1ufS6uVDTKuLve5gJGsYmfYXXikicjM9IMMG9Z1nE5NyVr5Zky+tBaP2Xc2enRFVRlBsBhHxl4dpl5LQrJ5bVAvrHeko0yOl8TUP3AldwpUSNvgM67SSvkvE8fVPGCOLHQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=3fG8vUdx571SSHY7CyRXK67viHVvSthpg//jIoJ+WGo=; b=Ir3nlOrEeJIB4Ywou01ieq02Eal1B340ikLVIq5dDEjeQMjespjS+GRyWeafchpY8D5Fp6l5krUYsOpt0+FwepO2rqSUb3ID4C6bxYT1zTGkGI3GN+M/Kt6zXcTXTuyugwjyzBZU4eMqIWddlRAnUlwdGebrrlS47ng86jceVkOK8uibMY6duOcoccrWbhTSHbbbm8bcYN3m0k45PCa33DKfArTDxyCppV/WEFj3TgCRMVILt2hGrWp0s8CdOwT2g8MJBCiUT0NDRaCk8K/a654WBgFZWgysdnRYhtLdg8LgQXY0VfNCr13pJjUoEbj4OgbgtLmdnVjbMg458aplHQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=eviden.com; dmarc=pass action=none header.from=eviden.com; dkim=pass header.d=eviden.com; arc=none Received: from AM8PR07MB7602.eurprd07.prod.outlook.com (2603:10a6:20b:24b::7) by AS8PR07MB7768.eurprd07.prod.outlook.com (2603:10a6:20b:351::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7544.29; Thu, 2 May 2024 15:29:20 +0000 Received: from AM8PR07MB7602.eurprd07.prod.outlook.com ([fe80::fbd7:ca71:b636:6f9d]) by AM8PR07MB7602.eurprd07.prod.outlook.com ([fe80::fbd7:ca71:b636:6f9d%4]) with mapi id 15.20.7519.035; Thu, 2 May 2024 15:29:20 +0000 From: CLEMENT MATHIEU--DRIF To: "qemu-devel@nongnu.org" CC: "jasowang@redhat.com" , "zhenzhong.duan@intel.com" , "kevin.tian@intel.com" , "yi.l.liu@intel.com" , "joao.m.martins@oracle.com" , "peterx@redhat.com" , CLEMENT MATHIEU--DRIF Subject: [PATCH ats_vtd v1 17/24] intel_iommu: implement the get_memory_region_pasid iommu operation Thread-Topic: [PATCH ats_vtd v1 17/24] intel_iommu: implement the get_memory_region_pasid iommu operation Thread-Index: AQHanKWAb5rqVJmyfkWBpMIvcWYxIw== Date: Thu, 2 May 2024 15:29:20 +0000 Message-ID: <20240502152810.187492-18-clement.mathieu--drif@eviden.com> References: <20240502152810.187492-1-clement.mathieu--drif@eviden.com> In-Reply-To: <20240502152810.187492-1-clement.mathieu--drif@eviden.com> Accept-Language: en-GB, fr-FR, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=eviden.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: AM8PR07MB7602:EE_|AS8PR07MB7768:EE_ x-ms-office365-filtering-correlation-id: 48620919-e592-4271-ad83-08dc6abca353 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; ARA:13230031|1800799015|366007|376005|38070700009; x-microsoft-antispam-message-info: =?utf-8?q?v9ccC64t/Sar/bsXbADEvfjYGoUsAvf?= =?utf-8?q?32qtgeqIv4C6pP79OhJ+dtyMlhJHFYkvtw8XxWU1ZFsgycbDL4GX827EkJe2Sbhnp?= =?utf-8?q?o3g+jIBClXTbWrwxUScPWWkiOj4Kh2Wq8BrWkw0uwsSZtT60vD6BvUDo0fHv+Wm/O?= =?utf-8?q?jeFBHXb4rl1pQ75hF726xxytx2fcrkKYBtOQERCRIPs3hvsUQR7RNKUfH5QlLemh2?= =?utf-8?q?X13mjL92vuuu/YsRikn8M+k0CpyS/SzS8LyZJxz2AkwfW2hsl/Zu71jSzfhGQsKM1?= =?utf-8?q?eCPGZwCKVwgGiB+yGvci3fo/wlA4Ydzga2nmhe24K8jeyGTmHOFNkbVBxgmadl3KL?= =?utf-8?q?Evj2vpL7oxppGceYRdVb45wQPGR2oeO3+vI9IE7bgg85SeQWQco8WjPymZN18m2l5?= =?utf-8?q?x50iou1BfHeqS2vLnl0Ql+94KT5S0cUM1AjtMa9uAS8PXB0vHpooP09TaVGu0iQgU?= =?utf-8?q?LQv6w5TLzC3MYZNJ9mP34xiPeqdjSfY8uZMSBt/YiZ/ah24lKKG2GhysGW0ODh/+M?= =?utf-8?q?9tTL6emEszDUaz2xlTCTxHC5Ylbft3gHEK4mV8NwZ6MXL9jsBze4AsRn3a89Zau//?= =?utf-8?q?LD+RiHqOrHUaN3sAnLifDBssP/5nhr0dqaYw52EmyDfeyKX5dDH1jbLslmWC8dLMX?= =?utf-8?q?yQyu1VH1+6OqdpXeUwerwsxYW3e9dJ8QbfxduxGhgGP7f3Od6i0Jvwpr1iDGXp6/K?= =?utf-8?q?ljdYU+nuj6QEzR7gupq0OCRr/c0y81y7Xcqf4u+4A2+8b07HXVZB+xKHj3Sn2blL0?= =?utf-8?q?x6xqBiHqqmakyTkUsw5BuMM06hSd19QfizCo12pKim/nsRfeYhFDI1aQHNs6lPm8I?= =?utf-8?q?tC6R4kYpcbbWk6JNfnXhtPUWwiWmnuQTwoiWikO31v3/VlaTUw+WCzpVbb+5Thqkm?= =?utf-8?q?/3OpWsxwAagCJ8Bx5mVhrpH/4glEIzG/E2higwJbSwoDFC8bv231+CeilOs5NvTOb?= =?utf-8?q?2aWdpm3UI0TS3GdeMD8tYnjrDGMSggyxw+2Y2aEotmgduaAvfP54CKCePLGS7V9Ud?= =?utf-8?q?U7+ds81b/bB7WpOWnLGW09Ht7XCeQeap5glk/gmaSTRZ6WQahqmw8TyuG5e1Q9pA+?= =?utf-8?q?IWbkb3324PVMKnUXg0o0Da69Btx+bbgXrT/mHCwie6o92HlW+lPFuA2482/cI9ESU?= =?utf-8?q?fkYmcwpwuNjpUOW0Cz7/ntCYR/2VuBgStsqbpY5ogcBa5qI6b77FlS1lNyzweP9dm?= =?utf-8?q?jq3FIEpWMkHKprvi/mBci6t2c14mfZKW6z/uqS66tlc6neuUkNgJC5jMjlHpgrMY+?= =?utf-8?q?AN5PPgBfqZUL1/bm58cpmvxE2yDh7zrcTjg=3D=3D?= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:AM8PR07MB7602.eurprd07.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230031)(1800799015)(366007)(376005)(38070700009); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?q?nW8v8EHo5IMiTe+3IgnE8RIulCB9?= =?utf-8?q?ud3rb6uVmAxrhR5AaQXXZb9/W4U8ytxwQbPOJMw9O4WJa3XxFymg+oN42uiihrJP1?= =?utf-8?q?y7jJgtwm+MjSo0MGN57ZqiUYmDBlUKIJa6tx8ysV4WwnBl2U4dBIGqfcvNsi388Kk?= =?utf-8?q?3zI4iKZpcZN0jO+OAXmrhJz7aNj/7aYHL3KGgsF/ykZU+4AxGjKSIKNrMT7lkkYie?= =?utf-8?q?wkflabsHwle8IoZa7NwveuvNXAueu4fdwrxvDQL/nT344hr1CZF98sZ4+D9e0eHkq?= =?utf-8?q?TwK0YeWhT2RSY9lLqorX8Jae0RNWa+9ZdHUK3qic1K+LdA8LKinJl+NiiWZ23hnlo?= =?utf-8?q?ofXaXRzj86tzJi1FXIe8CTKJQ1T3fz4+DlEkzYpCNLF+DS2adyW9ytcXNUJCu65GQ?= =?utf-8?q?qYUZjhACHEGopzh0BFGcQrrgvgw9af6LR2UJZ8mhIphx8d3qqzPEI/1nltIgYp1j4?= =?utf-8?q?kT2WHwxV5k/MZyNLDh9UFgG26Vh71fPi2IXdw/t3sWAPhezCK7cwPJrK2Y6LKHjdz?= =?utf-8?q?Md9nTDaOvEVQ9dP8IRkoQn/7I7DytC26itm5D5VvYpcBMBQLh//0h76rJ3qWNR+dJ?= =?utf-8?q?FunfLXy3eFnxfCt6zEbYge9fseMY/5cQ1BddQV61lLRIAukcfwG/uXpOGPwiv3A3/?= =?utf-8?q?BsxwhDYnxz1gtRefXEo27NnrCLhd41gGx5UiUeUpt6RgTMXLr6TPVVkL9KlAaLfBR?= =?utf-8?q?CGRD3Xcg6TNbROaM75AhAql95eA7idIaK9ZzSRmxYVrLZHexmVNM64cQSzOhcD605?= =?utf-8?q?joKji/Ao39amvabwQrbkXRZI2iAlNpBZftE4HYMrY3TV7xP7kgPeW9meiuGtMKSA7?= =?utf-8?q?PVZtWzrxPiUh3ckjEL92v12PmqALT3fzdut5MTTO9pNvX/EdNpUQfPftv9pDDqc7q?= =?utf-8?q?XrmHOZJ74V/6fdRpN7ivvGIgIrAS9qlZdPoiJ0QWXQingmfrAoEDQwTsErVyqpcuf?= =?utf-8?q?gmOJP9Lp1H6IBLt6RP/7L/lVndfd3xgCvb2gVVRN7DXCjVQbsC3OugXIEdp8CMmQt?= =?utf-8?q?vyCeSYfN6dKxMHDZNUN+TXkhWBZfhokGihRpVMdApeL8LREGj0wy1A3EA+XAkCYqK?= =?utf-8?q?lfuaAeb2QKWimOq5HXJIIIb2o5XXpxMMIKevhio22fldqP0sPiUPr5beflDcg3p5B?= =?utf-8?q?G3HEpoVBwVyfHfYWDs8OIZnAsRC1pfm5GfECgZFzqvtXg1vorLUsrm5JJRGI2OgwN?= =?utf-8?q?pZ0fRM5iXBrEIkArbbKvhlloz6unsDOe7MK9acru/7f5/E8O+11XWOrawDk4SDhUh?= =?utf-8?q?TIxozHGy+YgGG7pKceAicYZRE3ddrDrZr6xRsxMWHusVU+UUxnlj6eBujibQX0XhI?= =?utf-8?q?Py8TIROT6E31dEQ/PpXn7JzP7P09iYiwvh9QsLDMh7iqwdEgP087I5XUD8Sjvc7hC?= =?utf-8?q?teeOTQODEe4+9xUi9T2k96t5qJ+eIuooh5Ztr1T3GvAZkF4y8GExK7XF+FkOLv0Kw?= =?utf-8?q?dOScdc4XiXqAYSHuJblVpOITSZbCMkDCFU1H5aJlYrI22+5OEql0oXW5II4c93LKj?= =?utf-8?q?9nrrfC4GmT2ua4pErZksSJBLLtSvHAZzIp/HR2AkA6vLKgUbuHbzcQU=3D?= Content-ID: <16231E084BCB4745B636E4BC4B098ECF@eurprd07.prod.outlook.com> MIME-Version: 1.0 X-OriginatorOrg: eviden.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: AM8PR07MB7602.eurprd07.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 48620919-e592-4271-ad83-08dc6abca353 X-MS-Exchange-CrossTenant-originalarrivaltime: 02 May 2024 15:29:20.6083 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 7d1c7785-2d8a-437d-b842-1ed5d8fbe00a X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: eBgjQdvRoQS9KQId5npK1U0gH5BMD5Yq/9THqOBxqWpXspDCB/VoAvo5We+HC4xzanpZot1XiGRK+YOsMXcm5AUuUi8qVFheN+XTNSlEfl2mjEawqUHnOE1ms53CXyFF X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR07MB7768 Received-SPF: pass client-ip=80.78.11.82; envelope-from=clement.mathieu--drif@eviden.com; helo=smarthost1.eviden.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, 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+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Signed-off-by: Clément Mathieu--Drif --- hw/i386/intel_iommu.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/hw/i386/intel_iommu.c b/hw/i386/intel_iommu.c index e9fa48b378..a62cbf303d 100644 --- a/hw/i386/intel_iommu.c +++ b/hw/i386/intel_iommu.c @@ -6000,9 +6000,24 @@ static AddressSpace *vtd_host_dma_iommu(PCIBus *bus, void *opaque, int devfn) return vtd_host_dma_iommu_pasid(bus, opaque, devfn, PCI_NO_PASID); } +static IOMMUMemoryRegion *vtd_get_memory_region_pasid(PCIBus *bus, + void *opaque, + int devfn, + uint32_t pasid) +{ + IntelIOMMUState *s = opaque; + VTDAddressSpace *vtd_as; + + assert(0 <= devfn && devfn < PCI_DEVFN_MAX); + + vtd_as = vtd_find_add_as(s, bus, devfn, pasid); + return &vtd_as->iommu; +} + static PCIIOMMUOps vtd_iommu_ops = { .get_address_space = vtd_host_dma_iommu, .get_address_space_pasid = vtd_host_dma_iommu_pasid, + .get_memory_region_pasid = vtd_get_memory_region_pasid, .set_iommu_device = vtd_dev_set_iommu_device, .unset_iommu_device = vtd_dev_unset_iommu_device, };