From patchwork Wed Oct 22 17:12:50 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jason Gunthorpe X-Patchwork-Id: 1877 Received: from MW6PR02CU001.outbound.protection.outlook.com (mail-westus2azon11012039.outbound.protection.outlook.com [52.101.48.39]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 71510286430; Wed, 22 Oct 2025 17:13:00 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.48.39 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1761153182; cv=fail; b=GRIMVGIT9RTY8hp3xQ4lhG0c+OCovMHKMsFcrzAHvVIPHtOUYrKBgzJVJh8mWNUo/zcwB4rBKhqQCec8tf5R3RdsJK1qSc974SuNbguDXmoxat8icC2DgThcb4wyYDUlxMdzVXowtjyuH5elBWwfgeZ9gg09pirZ5ZefdzXd75Q= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1761153182; c=relaxed/simple; bh=3S1OY5gYCHEzCQQCX2wMh4bSeFrV+W9kZZJh/X4cqms=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=KJCSsmgctHDjYI8HFNBr5KPDkEzY0qIYp7gLPumLaNwbX45HZnY2iXRkGH9jWnsO27hO/U2LqvdHGP26BtsoP3BBUiuxGu6+XHSDCgZXVRH2AgGrOYSNzYBIEiUzg9XVf465FEJKCNGDIkx0ZU2Sgp1eS7znnwn5h1uBGxesY1k= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com; spf=fail smtp.mailfrom=nvidia.com; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b=giFfGPQ6; arc=fail smtp.client-ip=52.101.48.39 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=nvidia.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b="giFfGPQ6" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=lBlx0+41eqQQOp112CQsSGeNJVNJWGifog5i9dhDWQ2DE3xO0bBPVLL5AwNdKVWW62WhhRz58mLXaD6SFifmvsXgd0p42SsnLhnJhX2dV3DrVgrq6X4wBLuerd+bAChmKQRY4hyr4s67+gIH+AjYcNnKD2gqavAHjNph1mhCWvEWm0lZUVEWNQg+QZLcMKmGDC1IeCrZ2aZq6JDz024uEcvglortGSydJnddJhFFryTnqFAtkgYEWAB6fQUIIRgL2u0lPzh0AJ2JUgw+lZNLo/bR869kkShXMwSOCQrBGtCwlXnk+ttJQ0x6UT715RIKy0yXK5Wc4fa9v46VfcmWcA== 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=dbwZnxuB9IcJ5eMRnkmIgBrPsgTiM988Bs07y1THEKA=; b=IzQUDwUrgYc34HLGgQ4/JuICxsMIvQsJeQFpaK63QHVeE1xuG5QtuqHHKlm9vo2zmBI5cCy5nC9hMrb21wbtWG0lqyyKUBAjKOeZ3vzJXOXW2MAQ6lATwATdKWlPG64Ui2rjyjqC4v2O/7CAHOiwQD/L1VkrC+rxYffdtYhq31tYp23LuFnC7gOX5uOz/L9lT8Jx7eGZwjNXYigWtnNQe4D5fWUVGBp4lCNFYNujvBa0h6xKDG9Qr7jvEQcyb863JTeX+wAIVvcaQYPOp2CVZichsz620rM+qJ5+OyCcng88qFYRZakG5QRi0q9eYrwEFGAJ9c+HO2zhTFtkmrm0+w== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=dbwZnxuB9IcJ5eMRnkmIgBrPsgTiM988Bs07y1THEKA=; b=giFfGPQ6P7KqkoPDE2XGw29bTkQkeWUZ/ubgJK2y6HGa8BOUzypOQ9XQO9gH+GA2S5uTaqs4EfsLour0n34bmZ/qKK9v06csXOeJGmzJhcYX4Q0xX833Dzj6ucFrjwSxLP7xe5TVWIqCB0m3OSu/pYpBBImDCDBCwOAaa60QmOdywqrym8dbln2hts8JhznuCv/VEi7WdmMsU9+T/bczjhPtaMmPHKuR1UnQHPBztjEPrFZ49PGU/QBOyJw0qfegauXUG+qnePW1Nw2TDvIu+YmVmXr7v77ZI+6P1Ylq25ttVolksJ0Z9Gf95+1VQzD9T87XX2hUkyhhItdkzXEJvw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; Received: from MN2PR12MB3613.namprd12.prod.outlook.com (2603:10b6:208:c1::17) by MN2PR12MB4125.namprd12.prod.outlook.com (2603:10b6:208:1d9::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9253.13; Wed, 22 Oct 2025 17:12:54 +0000 Received: from MN2PR12MB3613.namprd12.prod.outlook.com ([fe80::1b3b:64f5:9211:608b]) by MN2PR12MB3613.namprd12.prod.outlook.com ([fe80::1b3b:64f5:9211:608b%4]) with mapi id 15.20.9253.011; Wed, 22 Oct 2025 17:12:54 +0000 From: Jason Gunthorpe To: AngeloGioacchino Del Regno , Christian Benvenuti , Heiko Stuebner , iommu@lists.linux.dev, Jernej Skrabec , Joerg Roedel , Leon Romanovsky , linux-arm-kernel@lists.infradead.org, linux-arm-msm@vger.kernel.org, linux-mediatek@lists.infradead.org, linux-rdma@vger.kernel.org, linux-rockchip@lists.infradead.org, linux-sunxi@lists.linux.dev, Matthias Brugger , Nelson Escobar , Rob Clark , Robin Murphy , Samuel Holland , Suravee Suthikulpanit , Chen-Yu Tsai , Will Deacon , Yong Wu Cc: patches@lists.linux.dev Subject: [PATCH 1/3] RDMA/usnic: Remove iommu_set_fault_handler() Date: Wed, 22 Oct 2025 14:12:50 -0300 Message-ID: <1-v1-391058a85f30+14b-iommu_set_fault_jgg@nvidia.com> In-Reply-To: <0-v1-391058a85f30+14b-iommu_set_fault_jgg@nvidia.com> References: X-ClientProxiedBy: BL1PR13CA0281.namprd13.prod.outlook.com (2603:10b6:208:2bc::16) To MN2PR12MB3613.namprd12.prod.outlook.com (2603:10b6:208:c1::17) Precedence: bulk X-Mailing-List: patches@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MN2PR12MB3613:EE_|MN2PR12MB4125:EE_ X-MS-Office365-Filtering-Correlation-Id: 1661be58-2b32-4ef7-62c3-08de118e3cbf X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|7416014|1800799024|376014|921020; X-Microsoft-Antispam-Message-Info: iZfwkcJaxBBZtj0C6FDprD7x3PUKMsLoUlcqaTIu1fdNcvPjeFfyJJSClu2QjI8gJdrFTEjutYJb587ZzoRYdNqfZkhLZQdIMI34AmBhsGUYZo6vAy8zQoFYHjq3AKzQKMpHMBunik6qw9epltSj6XEUhaBDCODM6SiPjDjnJcTb/fbbJ+3WgwbRZR8DdfeLZNgDlLiIuVXC1diYxghlhN3VblaPBGAri/R7YZ4HX5S+lUm9LfkoD2x48ftDJ4pt+ZmnfKi53v+GQmSJkytRYHARd6FN4gSlN8necwdcsE/c8ZK8BJJM4z1EoDGo/c9VTNT1TbLsFf3u6EIC4ua8/R247sljB+s8YxWZ0cRZIdpvfWPks3iS+xO4uyzbS7OZJNM8mFqtiO4L2sqZSwEjIxJlEkplunZy/Jy6wtqR7VMzuWqzNQCqHrKB1O+A+juMrNJ4o3dF9qzfVed2NpxaIzEFRs6WUQ1zK/JSTLEaAVdEKlRxkdu+pT/JkrHOujulYko38kfjxFmlcyVIBDUFjSvITFUZ9YXtkGiX53O8A7of5qafqauZUGgYSpp32sro43MHoOHph5hkYTg0sZ6aBuAIhfQKqoaCjSav+qKrmJtrYadtvECZB4Gvbtlyt8BquczJjl3377bm3EH9AW2iCsTcKI5z1XoVsHpEd+p0cFTkszzqRHKcdVYDbgkGBtxhqNsdCD6tSuX+QOY6qPYngVWbP5LyFZIS2zaLv4JiUCOWTohmWgRfxo58oNM5vvWQHjSBoicJHNrqa3qCX+FFydWyuvX1XRBbkXIWhG+QydsFrXmuB1xX6eFK0Mb9SPfPxtL7nuxdcdEhTIC4gp/bRo1C0WePCcyYtAQWa6Ept/ig/dhhmHcL2Wq2xAWtMEw28H2HL5rzN8oS8WWZE+OFG/q/fNEPj7DFDhI1tBkkue46fcDbyaChRK9CREDQTFM/vovmwzSu+bQ/MzSfG4ctz3z6PyOLKU+U9RZUThEwWRw6WJFNh0K/iQZmmXpY8rvt2S+8ldtqC1LT+olA9k102VmSUWTKW08GZFC5CHsCwk31NnhrEABLRtJqYhhQZf+bW9lQFcbWLWXQokiFDfzhxkAGC3RrX9ivMqjibuOMKr5yhNyQk+wHnKYtNYjm9wWZjVqGMickDoPxa5uPh0cKyCFnPsNtaxFfkc7bMkccTW7Fb/XEo4DuOnZTMqpYfUFKAxXWz6wpaNNKfbyLqTNlfl2BtJxYtqC0wDl09iKiaT9Ky3+M4J0V6g4Dmn7FANv5TRy1AjVB/2aB/zAEN6sylYYj243S0UrXBSslwjelItPuYfqvyglsSGjNW/py+d6yc/N+zaHUTW/dm9dApCi0ewpP7myluqw3sytvk5J+gbt8mH9PuXXmLdXS+YGWjKqcD2H3MVwWnWAuPlJ9YQTh9+FLr3REVstVgQz6KVvwGr1LnfJzaXwnChIk/oFrET6JpXKP9G8z2i/O8IsZmO4CGcO5jHSnRglsZVO+dSGmvhk= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MN2PR12MB3613.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(366016)(7416014)(1800799024)(376014)(921020);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: DpXw27rww2vOhK6sL36pMO5/IZwMOzCdyjO6YBiDjp5KMRspmsLD9O11uQKcGD0vucCzLZdwnxBSuYytwYATy2vBV3TbGYJvYNG50ZCzbtXn+ufqgRGm11RUxT7YqP/eFs5t/kCxhbbS4lBrQ+p9ftwMJKZ0qP9KuvQDsLf5ZvHQThN2B5ONed29k1MHRZrxF4a21KO4UZ1/rPqT4aNg1mzZTtuNyjSxDbYi6ULEH5rLBTByzJ+NT2zuP7u2ijiP5QkYtEKVWOr2nbtw8U5S2idFMAr8HB9NckEyPPG6RdwlMmV9Rd32TDVo+k47dUyXuP4Mjjc8TlwI4jjfDMOjCzSIiUWmxVqKkNBLfHs7dA56DQ6CAxFu+Gs9/vY+KBc3rIXkSLB/yt4w+0CwkEgU09gcF3lnoe2ptYZ8jtFwJt4WgeNeHpJ/Lgue1wVgavh3y1Jb+8S051rfCXxcVLORd1xNRdwIuPJN20bGO0mHakoM6/ppdlY3rw1pvWHe7iBhWfPZLVF2s23cLg5XknH39y242D38e8ACUp/MKKuE86wSRIxXR6iJDrceA750dGk1Q4lp9T1RbSsTm6LXy+k1uqRVomvxS1ydC0TE9W98Z47oDsVHcddMPwR0HpOBbWmgncuPmEUoMJKjpQx6GbEO6rw0DmeOcpVzEuXLBs8EWS+vKcfkaSNXZRIUzlNctWkyBIfihtDtTHW3+/ecElgX3cvAeSoyWZ9WXmchh9YViEhpxtQYlLJR+NIWARmHaI4EDQkM3yjq/bhtG4oTME9x6RpbgiqkxvyO8r+M/bmw4m+xk2KN4b4+8uWtotmIb9p6m9Q5Zndp4TCGoA9dULGFCUt6ZxmtrDVbZWd8fMYUL9yPh26P8uar+ba1ilLs9Ju2ZOThNTOlxo2J/NDtNvtDYGQ67C9JgvEoYc0vLBEOljsCOrn/y24gNPpBMKsWwI4IQllN+JmphTDk84unaOgy0vhas7zeAjed4uXtCv+QYfrQ41i9zlGSFo7Yo6MGmiXXqyRjKpl0Krw5TjJGP3ZEBhYu4I4gp3zdXjzAPRHhqS1dyhXfEpDVMo2u9aBcJw9pPzvTLrwFsx31BSera2wiGHukMAT3Aquk5QGY5dEThbizSyxZqxGQTrfd/sqfHNDzsY08ZGgnrhTUn03K5NDcAHXNkzWZOETInvRZvFphuC4Hn5Vxmh7XTQvBtSOMC80I9dEwZFdhFqXyKfdh0tzX5WzNAPeA5DcDTFNbxFoWUK10SxMw4BM+sii8XuIfxA6+qszlMyqdnJxBgFDFaJsxfBC6IgAEFANaYNQB7VOZC61n7oj6XC7jxxOC/9H5GD7ArccfJaJHklyMwRpxBvoyZqLF2bCADCILtc9gLVONtls7TsK/GuKn/hl3Pj8mL1+lx9TbKv0RKIha6plH4vc72yUvL7Msx0ZMaF5MBdeXMgJOpMnbbkV6AwsLYQjmQLSh8hr1gCD0OA4UiG67tbbaFtUQp5SGFO9302i2ZYD3t51nzYad3GekHMFc+yodhoHPmc4EFbphJ6GcCu44wS/MXk5cUDygoVduiRoTJuU5mgg= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1661be58-2b32-4ef7-62c3-08de118e3cbf X-MS-Exchange-CrossTenant-AuthSource: MN2PR12MB3613.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Oct 2025 17:12:53.8193 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: jQrUpw6VkO98I6Cr9cbk82FwUhw5AlgBIrY3lhc7e92zKx8Ku4sq6Yh2QZpNJpB4 X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR12MB4125 Status: O The handler in usnic just prints a fault report message, the iommu drivers all do a better job of that these days. Just remove the use of this old API. Acked-by: Jason Gunthorpe Signed-off-by: Jason Gunthorpe --- drivers/infiniband/hw/usnic/usnic_uiom.c | 13 ------------- 1 file changed, 13 deletions(-) diff --git a/drivers/infiniband/hw/usnic/usnic_uiom.c b/drivers/infiniband/hw/usnic/usnic_uiom.c index 3fbf99757b1148..f7fb6246c83aba 100644 --- a/drivers/infiniband/hw/usnic/usnic_uiom.c +++ b/drivers/infiniband/hw/usnic/usnic_uiom.c @@ -51,17 +51,6 @@ ((void *) &((struct usnic_uiom_chunk *) 0)->page_list[1] - \ (void *) &((struct usnic_uiom_chunk *) 0)->page_list[0])) -static int usnic_uiom_dma_fault(struct iommu_domain *domain, - struct device *dev, - unsigned long iova, int flags, - void *token) -{ - usnic_err("Device %s iommu fault domain 0x%p va 0x%lx flags 0x%x\n", - dev_name(dev), - domain, iova, flags); - return -ENOSYS; -} - static void usnic_uiom_put_pages(struct list_head *chunk_list, int dirty) { struct usnic_uiom_chunk *chunk, *tmp; @@ -450,8 +439,6 @@ struct usnic_uiom_pd *usnic_uiom_alloc_pd(struct device *dev) return ERR_CAST(domain); } - iommu_set_fault_handler(pd->domain, usnic_uiom_dma_fault, NULL); - spin_lock_init(&pd->lock); INIT_LIST_HEAD(&pd->devs); From patchwork Wed Oct 22 17:12:51 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jason Gunthorpe X-Patchwork-Id: 1875 Received: from MW6PR02CU001.outbound.protection.outlook.com (mail-westus2azon11012039.outbound.protection.outlook.com [52.101.48.39]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id ACC9B27E7F0; Wed, 22 Oct 2025 17:13:05 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.48.39 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1761153188; cv=fail; b=Oy547HO0P5MZ22G27uMxzGFvje73/84I1L3E9HPoRaypl1CUBDFTcCnfjVThfsIw0JD1xWXrJbvx+oMvLHdTFrKYA98c5uk7gWeSVBI/jkx78lcQCNukYWVEbmnukAJfbvAFYt1HvlZVInAZRS04vHWZzwEmPOtg37Z2+kN1emY= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1761153188; c=relaxed/simple; bh=gCGbydqg5yxjiLW8m2/xguS7JSl4CZfnp5MyFUqKabg=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=J7G3hxb2VuctCvSqWE0VnZ361UXxjLDLZvJifOZR+RK1sl2sTXcjtBN/Y06KLnkHtO8jaXBcwJDveAj4hLqhoGimTOtQN5lujVXLBHe1c3r3h2sT9AAxDUkpOVNoAq3mVbuwA3Bw4OyIbuGD8HduH8xNS5ZW3YpXKQ58iTsDsqs= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com; spf=fail smtp.mailfrom=nvidia.com; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b=oXBjr8KV; arc=fail smtp.client-ip=52.101.48.39 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=nvidia.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b="oXBjr8KV" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=tPKPfi9g+9aAtYxx1csdvotvEaCdaK9gBdOvKk+QIFeCTwVP8FDkFPLJVddFV6GoVTcbfGUVSI8m5Bp9CQakxXh9nnjL4j55hAFbg/hbkoeXBOt0O6iRRHuV+9iCILEU6nLwqCh8FJ2wcsRzvT4Nh6NcVPxKHFmBvDhyO35UG3InTpSLYNEbka8rAzfwyPWPEBS9TR0v6/VD7N3K1dMAFbHquipwnPm2HnoP3a5Lbr8+te1wdhbQeVyeayWFNOKFlAB2OsDuqlK/4f/W8BE8IV8AKp1jd0sqmdUXBFhuOhnUqeqp7gb+qWzlq/W1gD9n9mjsBydo81/ei5KIVZqTVQ== 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=NX6/G3q/A2aOK2BP+f/VOeIdQ/KH1BPplZXiNAxycVQ=; b=Es3J4D2KsW7KmttDV2vGA9KEUMrRgUDytx9IWXME1ci1WhqxR4z/aVNSpNpTY9zaR/i/J/AI9QoxX0Ccn2SDmvydCDjAffWRgcSiN7zijCqZSFGIiKzmuKyvifS5nerNqzR4AAzzYQJ1UplAH7N4VM6PlS0icCBgeRSHp4yDlX6S9vW1+zVpSbc5mBxqyFlUsNlQjt4auZr+U8sq/y4d0MTjbGielY7E4nCq9vQktXxY/Lx8CzarDdJW9zpxK0lLSh18rYMANXQXmqfaXn/DsI0Ne06lYWSH+qx5HWMYBh2hiY/3oORgW7ldjgsbs1MJoouySnj75hlZssJwRBQ4+g== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=NX6/G3q/A2aOK2BP+f/VOeIdQ/KH1BPplZXiNAxycVQ=; b=oXBjr8KVwnUEHQSP3iQSCuU1keBbdZl0VXesQCEq+eSzjKwLcfBD+THjS0oSrkaZKGo320RvHcm3DbedHjiuMXIeAOYcCG36qL/YkMa4QVV0HsoYDbZxbqFwktKh0TIuAQzMYEUA6KL+751Bk0o1WHqBnjIB8T8oEPSdaSZnJ7Kz5Efhl8oygES9oSX4dNxCCb1nGoDW8x/VaMJnxBTRlCQQyF/a39ksitVvYkpVweZ5Xp0i6U+6n4mGMTBAjQXPTX/XY21i5Eg2IS1VAifD1xaPJ2C8pkOL2xhcL/U1p157ux4B4gRZujWZguuh1UhUcb5JPmUpYQP/jHnQ+GCOKA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; Received: from MN2PR12MB3613.namprd12.prod.outlook.com (2603:10b6:208:c1::17) by MN2PR12MB4125.namprd12.prod.outlook.com (2603:10b6:208:1d9::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9253.13; Wed, 22 Oct 2025 17:12:54 +0000 Received: from MN2PR12MB3613.namprd12.prod.outlook.com ([fe80::1b3b:64f5:9211:608b]) by MN2PR12MB3613.namprd12.prod.outlook.com ([fe80::1b3b:64f5:9211:608b%4]) with mapi id 15.20.9253.011; Wed, 22 Oct 2025 17:12:54 +0000 From: Jason Gunthorpe To: AngeloGioacchino Del Regno , Christian Benvenuti , Heiko Stuebner , iommu@lists.linux.dev, Jernej Skrabec , Joerg Roedel , Leon Romanovsky , linux-arm-kernel@lists.infradead.org, linux-arm-msm@vger.kernel.org, linux-mediatek@lists.infradead.org, linux-rdma@vger.kernel.org, linux-rockchip@lists.infradead.org, linux-sunxi@lists.linux.dev, Matthias Brugger , Nelson Escobar , Rob Clark , Robin Murphy , Samuel Holland , Suravee Suthikulpanit , Chen-Yu Tsai , Will Deacon , Yong Wu Cc: patches@lists.linux.dev Subject: [PATCH 2/3] iommu/amd: Don't call report_iommu_fault() Date: Wed, 22 Oct 2025 14:12:51 -0300 Message-ID: <2-v1-391058a85f30+14b-iommu_set_fault_jgg@nvidia.com> In-Reply-To: <0-v1-391058a85f30+14b-iommu_set_fault_jgg@nvidia.com> References: X-ClientProxiedBy: MN2PR04CA0012.namprd04.prod.outlook.com (2603:10b6:208:d4::25) To MN2PR12MB3613.namprd12.prod.outlook.com (2603:10b6:208:c1::17) Precedence: bulk X-Mailing-List: patches@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MN2PR12MB3613:EE_|MN2PR12MB4125:EE_ X-MS-Office365-Filtering-Correlation-Id: f70aeee6-58bb-4821-1013-08de118e3d69 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|7416014|1800799024|376014|921020; X-Microsoft-Antispam-Message-Info: FvkiCe9KNwYQc+Y9s9UiXPZoqg7PFuUM2eUY/lIjWbv+Xvd0JWFt1B2ya7g/AsUvbTxwpsmvTQj7YoWqvkhySIqP11WQo/FdZfyXGYU1M9DEdTOvOk6yCU6lzFeRd2tNmFHe/zRe2ikSc63Pe5RT6eUsgwL//qoZanG4p246IYw4JMpCkU7pZIHfe+EBJVlPYQAA/FdHvgqW5jWY+BUXHRIvBPQ9R5iLIKvdrFx7nFqD+obhUUelsvGB9+2LvL8dovTnAWGyrDZbUyOW9WwmkL2plawfc4POiTZjo0IexCZEX6hoS/4z6GttF/cspumAiWSKDl9mJAAQuYb6YIJR5Tgjsql3/eIb0jAhB/06UzfW2UEox89tbP28/AvZTJTznHm6c2OrBxea4TXAcAsmU+tHHSkOuvO1zRygtPfvNrKnwhO4Fx3eU3Cei2tZ8ZJ5RVlzz7yq+GQDYqU9+ghhA/nUQSA2z44JHjfpUMv4UpQ8qozH1UzkfjRlS4pMKkFnNB4ejed/tgTBRYleGBjDLyFS/X0K2qgMkerrekDV/BA5MAkFFhE6pnMSvS9IyLWfGdYi41rMIf5YLWzVRfdpwDXH56JLQ1iiol0T8rS+VPg8hsi/OZNg4V60GZAGCPRhMYHkFWqI57fwtqws8qPazm5QK3n1XA0G3phqbnbMQ1P1/sQypxU0+t9PZL5k7eINtHxyRvYV/grrK8zSYoiLQHhO9FoFQdn0sgSqy92MI588mVk2+cxAlndS6fMyBGmq+xF3UiuME2fxsfB1L+Z1jnWXi7GMNvszoQD/r542y0UpUju0xWnJmP0buGBK6MiqQGIFW8V+1ix/HgrB3APAZwKChdx4jjZ9kscTJcQrVALCd/SgegalafSCgxQ2noyXU99J/YKwvI2+D4/tF33fnCySPnI9ZMJZTYd5lMbB64eY36qQ1euxd+gOuZHq1C5DjE+eeeM7Y/7OaB8Vf/u9A512BecydaXksBilQcCF43pBp5ui/7w6muZW2YuLZawe6X7CGwuSLsJ+poOjCfxMZs0RIfmmtZv7CX+xbKan7YCjCLRu65yUazXb1KRY6F7j1JTYgu92AxcDbmuTQfmA5JUaxDMMKi6+6sAzgF6CfAiK5IHu25SvIHikajYYaD1a5tMrFc2leRbifimKUBTYgtq2uM7NFGr0pSPMiYPOBZywUcfFlcRd5MRXzQ3v7HWsoG1UBdbeOqZVeSPsf85HZt47GbPA9p5WjB2yxy2xpWxyJr4JwGHro7WmFOQMakNBe190B2MCQtk1aQPAd4haQDFhr1wGIpnNUWypGD+WclSqUzVxRJIZa15fP3VH90q51dXbkQtulUd2at0yyGPAzIoN0HjFDi2M0qMrl91KOAewiERmKkvX//sitY9lU/gtAemHwG8z1xkJb2xl+TCXtuR5r6xK+xvS5dcYRn28IFSbESkOsbaMf0x94gq/30KUtAOgvllKX9OqNgTWCXzy7JpETtt9yParEiDn9/SiazY= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MN2PR12MB3613.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(366016)(7416014)(1800799024)(376014)(921020);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: q6HKPK17/vMzLB5yC12XfxMCt8VO/GlHRYOCdhVImNFo0QuW+7du0cAgD0rISG572sepcYytLPpZ10vupJaSi7hPqovEaG/LVTpVWBXFohi9+jedvQ6nL6mzk8NTjacwZRR+rFymgthH+lCai8zYAbW4ahv4yDHUwhnQ5/SQgHpAq7M9aX9ztCnH+v2t0ViceMV62xGenklpjgOsfpuLTHznJ0IGFizcYTfvoPfnCgDHwaGr2uKquwB4QhHSYQuAMTDtR5eyyedOBMUD28AFSqPi5CA8Pqlv6uMnc7h8Z/DTlhBDDRbvRjUKCC8SsF+wW7790aeTaQHv+8XDab9eczU+nzd4/2HR1sODtZoodXD2yjnv5OuC0GnUtPf5ASPvegG5FUMujA77HUWfjCpFolTaolRYKYNe6chelOONYac2qiJOt8TRA5MIUW5DK8JzheJvL8g0/bAl1xgchk4zr2/ZTo4ki/uuPoGIojR1Nik46IU+xH/mEbrEjguOU9Y+1BtvTCe3mvDd6EKTEb7h2HYBicI47iWBFPVojm6VX9RgKaqxqK7n/Q0taZP1p2vNXz38J8Ahs0o2vnNifp6XjQgFavnv4XuHpWXhDl4VIDVMZU4px0cIm9nSqm176q8i5F8CreJpugELH6P6C/LOt/Gwjrk4vXY71dFS6vINuhITOc7fU7t0EezN+QGwYiW/3CNiU860HHRiiQ+cTVwdL22R5th1csknzcOMSY6+3joN/4YZFtc3xfAClTBT82rdFEf+pGmYJ//sGUY7VnSEsbfP+gYPoyEIM3ZQU6AQcqB1czz8TFfC9Ikg9a59TjRSN0VTIsRJfx865SKYEDBbgReQGVcJ8rS7jqfzbCzIAzuWvnUG4wOkk7nAj1CFLnYD5y9uCLCxPgXQhjZcomORoWw5zZf49n57jCfnyxUNd0fN2AvWxW4NvJxDzpUAvgE2RTq/6mGkORmROsmxUd5TcpGNJCNdVPhSuivbF/mmyPCNW30G9yW3xxX3QLPn1vUxvWn8h3GlfgMPPdAyrV5KnYZwBwKsbYGBuV5SnfhCwqoiI8FgFIDzRj08S/L6RC/atCPbS4sRgHs09oRPYHf5/iS163UmIJKv5kaccbUjhyX0AYKKSC+qiO1MGQjnklv9PHCcn3UVGMMIjQOhBgaY+FHhNiykDrrQssrkvq1QY/Qp4womkDePuVvTWFUpXQOi02MRchW68LbSMyP7OunTJi5Rs0umlG16IYxkFp1NLXFQJMKSEXkOxeC63KLTUf9he2oX5rKU6AejMPA5cOOISmgY0zf9J8/XDFlKZabSFAE5AulupCbxPv8gcuhecgrxwuaPQ41gaUNz4ITKO2EmGEtkpAVFZJeLaTrAeOmkFa4T1zlwupwJngwd/ULrSQzw1MeobkHP28tkrnWEXrP3TUpk+K9H+ULBeuCeUWcJKLXkICP3dSXjQGyJTsxZBHTn2oyOSy2tPbifr5kiktTjjdqWrAM0mvEsvxLoIU3wjM1/BpxjSdCKJ/ATklZP3FF5/KHz/+dXkWZKRJVpDsk3NN6Zv95YP0cqvQx+5STAzo0= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: f70aeee6-58bb-4821-1013-08de118e3d69 X-MS-Exchange-CrossTenant-AuthSource: MN2PR12MB3613.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Oct 2025 17:12:54.8322 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: We9KFnUXWshZWHRO8FtY5nJBIyqKK4EpZRvtIUppM1FksZMUE/qjA0BYgtYfEbR+ X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR12MB4125 Status: O This old style API is only used by drivers/gpu/drm/msm and drivers/remoteproc, neither are used on x86 HW. Remove the dead code to discourage new users. Signed-off-by: Jason Gunthorpe --- drivers/iommu/amd/iommu.c | 24 ------------------------ 1 file changed, 24 deletions(-) diff --git a/drivers/iommu/amd/iommu.c b/drivers/iommu/amd/iommu.c index 2e1865daa1cee8..072c80bb2c2b3a 100644 --- a/drivers/iommu/amd/iommu.c +++ b/drivers/iommu/amd/iommu.c @@ -840,29 +840,6 @@ static void amd_iommu_report_page_fault(struct amd_iommu *iommu, dev_data = dev_iommu_priv_get(&pdev->dev); if (dev_data) { - /* - * If this is a DMA fault (for which the I(nterrupt) - * bit will be unset), allow report_iommu_fault() to - * prevent logging it. - */ - if (IS_IOMMU_MEM_TRANSACTION(flags)) { - /* Device not attached to domain properly */ - if (dev_data->domain == NULL) { - pr_err_ratelimited("Event logged [Device not attached to domain properly]\n"); - pr_err_ratelimited(" device=%04x:%02x:%02x.%x domain=0x%04x\n", - iommu->pci_seg->id, PCI_BUS_NUM(devid), PCI_SLOT(devid), - PCI_FUNC(devid), domain_id); - goto out; - } - - if (!report_iommu_fault(&dev_data->domain->domain, - &pdev->dev, address, - IS_WRITE_REQUEST(flags) ? - IOMMU_FAULT_WRITE : - IOMMU_FAULT_READ)) - goto out; - } - if (__ratelimit(&dev_data->rs)) { pci_err(pdev, "Event logged [IO_PAGE_FAULT domain=0x%04x address=0x%llx flags=0x%04x]\n", domain_id, address, flags); @@ -873,7 +850,6 @@ static void amd_iommu_report_page_fault(struct amd_iommu *iommu, domain_id, address, flags); } -out: if (pdev) pci_dev_put(pdev); } From patchwork Wed Oct 22 17:12:52 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jason Gunthorpe X-Patchwork-Id: 1876 Received: from MW6PR02CU001.outbound.protection.outlook.com (mail-westus2azon11012039.outbound.protection.outlook.com [52.101.48.39]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 590ED28CF5D; Wed, 22 Oct 2025 17:13:02 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.48.39 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1761153185; cv=fail; b=Ipzj7vi5uxvhVZcgyuTjT21AQwIB5PKI3HSvl0q7mD9WMd/HNJP+4z0RuSCYWlprH/HVM68+ErjmfCSPiO+3fhCu7keJy43SrUSyRcm4m/gvZGUb5IwAxRUUHgq2og/zoWLZXVPtO9j8fFEG9wSBsmH8nAcXDAo+b2LP5mAoKLk= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1761153185; c=relaxed/simple; bh=kSS36jdvOrEn13beLlrLZOEWyZLEgxGtxq9gxV7q0sc=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=jsivH5G+Nc4sQ6DIopYpaQgfIrmtxde20M6YhXllkgOko2wqYDwfIaMc9KJgKYJIWOuYOF5vWcdMZAPygmfOKp2lvwI9aZM7TGNDo3fwHP/p3DSAbBJBWFGyvQ0/0XfsLu8xNQOmUfPQTfshal3ZFICY21gllfJjMh31N0Lynao= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com; spf=fail smtp.mailfrom=nvidia.com; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b=JGqdO3M0; arc=fail smtp.client-ip=52.101.48.39 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=nvidia.com Authentication-Results: smtp.subspace.kernel.org; spf=fail smtp.mailfrom=nvidia.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=Nvidia.com header.i=@Nvidia.com header.b="JGqdO3M0" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=V3zMGqz550wRfXU/+spEay/qOaRDXsr0pcxaL6L8awiAtSnYzSVLCceFpANSek7wWRFpC+Aw6oDRv7rn2nd/yzDkZCnFd+ogMIZqq+BPzy/Mvy37dXKAeUIa2uGASyi+G/yrN9jHs72CNaZkdkK3r6iLS0bEPCgqNFdEuI7vUA7HyfQTDP6Ie9cefFmWIZB4MSY8kzn0tkToasNeRUHxXaLKu2nLNsHAfixQ81gv5YGqDpMGJDcUsMsioLViEe6HKMW8u3ruqZPIyWH+inOgRwoFrW40pJ6SBfzxJ5gbLQrgX6hnS4yG4Bo1tuYbUz4pne/go03uCCnzJn/WmKeBGA== 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=ek+jCZxQhzbjsE1wMxRi29Ac88OEtu6I9QS178o8CxU=; b=NRYNEa61Bp6C2kXZn0ibudJLYdtUFyMyK+1Q2D4iUCKj7HRyHP0Zm0x4WYnE0AOb/l9VIV9DWj5rEiIveV5vXJ3ERIdmABtIai83KXjQ1+DOpPJ8t+DJvRzEHyryZeZXGDh/569F3dZajoex0X9V1fRUAWy/9bDTOYjcOZ+IkHD0EjntLBfEdiPRqcDpaKGEoBscAmyUcDHujEZpOjFyB7r+nvBD4d7OniYCXSWUc38G4uO9HyofpbrZZ37Ev63+eZIEJ/5YCCLFuC+cUx4iIXECIH3zQ0Gihosoag2szU5EeYfhomUA3VuN1wBhanhm2j56hlVy8h6lDDQzqAKotg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ek+jCZxQhzbjsE1wMxRi29Ac88OEtu6I9QS178o8CxU=; b=JGqdO3M0IK9uluku+Xc87R9ltrBB5SULb0ftMGZvLocaGCubqBFvTmQll+dZLD0PZ6N9rOyr3GSTUCvGPKiaVzm6IDRvafhPVov9uFrSj/iByxnD58AVZWIo8LGUxnK2B3kEVxepSESZ3lmRrddNuEjyu/HOvbof+M0YDrlWeeCRPSAnj8sz/qQpfzuHd8BrvG/jLqDxFjRferIJ2h7IyZPj8QKnmVdgCqVTowq008JR9/R6VFr9nN5OTV85Azi5O//ysK1dn1KUnSuflpu3jRNek02rJilMaxfw5cTyQ43B9qFM1gcz7MI0Qf0k84R7Wt8li/opmKs17XgLXg8IwA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; Received: from MN2PR12MB3613.namprd12.prod.outlook.com (2603:10b6:208:c1::17) by MN2PR12MB4125.namprd12.prod.outlook.com (2603:10b6:208:1d9::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9253.13; Wed, 22 Oct 2025 17:12:54 +0000 Received: from MN2PR12MB3613.namprd12.prod.outlook.com ([fe80::1b3b:64f5:9211:608b]) by MN2PR12MB3613.namprd12.prod.outlook.com ([fe80::1b3b:64f5:9211:608b%4]) with mapi id 15.20.9253.011; Wed, 22 Oct 2025 17:12:54 +0000 From: Jason Gunthorpe To: AngeloGioacchino Del Regno , Christian Benvenuti , Heiko Stuebner , iommu@lists.linux.dev, Jernej Skrabec , Joerg Roedel , Leon Romanovsky , linux-arm-kernel@lists.infradead.org, linux-arm-msm@vger.kernel.org, linux-mediatek@lists.infradead.org, linux-rdma@vger.kernel.org, linux-rockchip@lists.infradead.org, linux-sunxi@lists.linux.dev, Matthias Brugger , Nelson Escobar , Rob Clark , Robin Murphy , Samuel Holland , Suravee Suthikulpanit , Chen-Yu Tsai , Will Deacon , Yong Wu Cc: patches@lists.linux.dev Subject: [PATCH 3/3] iommu: Allow drivers to say if they use report_iommu_fault() Date: Wed, 22 Oct 2025 14:12:52 -0300 Message-ID: <3-v1-391058a85f30+14b-iommu_set_fault_jgg@nvidia.com> In-Reply-To: <0-v1-391058a85f30+14b-iommu_set_fault_jgg@nvidia.com> References: X-ClientProxiedBy: MN2PR15CA0043.namprd15.prod.outlook.com (2603:10b6:208:237::12) To MN2PR12MB3613.namprd12.prod.outlook.com (2603:10b6:208:c1::17) Precedence: bulk X-Mailing-List: patches@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: MN2PR12MB3613:EE_|MN2PR12MB4125:EE_ X-MS-Office365-Filtering-Correlation-Id: 4a5b4650-f624-4841-4bbc-08de118e3cb1 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|7416014|1800799024|376014|921020; X-Microsoft-Antispam-Message-Info: l5aGC1tQ1I8vxTrRJDH/bbqcvfmDgZiVjRq/jnPAEZ+/57mfpD+8Ww1brHnN3/RKm8bvpR4ktYuwoMqhK4C5a/sf0aKgWrU4zRYx2UCorJfyrhQGEPYVl0OT/qMqMf6ZW1qyPjoPWN2jTqcP6mROsmFabOnfyVsb7/wJlfHDkOMnT/L2c81kqPQNamM5io8+fhzS1WwgG2G1idEWiJTk7tD4P/ua/SiOdHO9PBQo9VnGzS9TuWHIfZ2nsb5X3BXjo/HTyKzk+epqEnTjNDomV1y4/K4V0CQMIgdAWmugZNyFmAWt/VMa5HvOEjCgMyhkMSuIooorguNXNQQK+g5O1GE9l3M5kj9IPavFn18n6v3u9Yw6pdp7rnGj25DgKPeSk7aearC3Ai7FpgTJv0rkLYAO/v4G85mNel+UqTbHfbi3GahinDmwWtcWsRroN8Zkv8W/mm/3QJry0DqTXvVvtljOa4vfhW5H7iLBORA+8SZKLWGH93grCThfDMeVZqj0OHSy2jRxA3JPsJlnC25Ui2DZnCFcGZXmXiGv00+u2hR8mOj+BP7QFTYfOrZGVcitGFdYUydEfOML2mKPST90seVMFs+nKgrTRLaDHdcPe8awEtnpQz/bDlRREK66NHb60NF2EU4YNvknuRRTFdZ2Moi8GYh6a3mpAtR7iTvlYiMyDRgb8qsqNPkvpCv/4xvnGzIeltoUM0ONQbgot+9lO1UbIb2KjcN0h9u0Zk/w0l1aUhCDFWdT7TMfaQFfpA54CIwT73RHy6NE6mc9vHu2CieA+fRzOocNNUW4mu7DzwOcHAjvH6Gy6H+TGxrChGeHAXSXoioxrRdsSpl/EYj+NSaStc2FvkNfY/y116nbfOHhnxAnjXc5vx1zqVO2T+Efo0FjAsCJIJf1Cu9MBzFhGanD9DMf5wkTBmnCaKB5jkNQ/hRF1h+nwHD5elUk/va6U5I7ZEOMwvT7uHIqJz8rCp2d6HjK4AjAK6gpFO83RGXw1lHwkkvrI9k+QPXeSsAwfefUOmyUCocIeIESUw/YQLdgEgT4Dqv1kNhY5iKHKdgJeugTydPewzpON8dFvJG8oaPL0eqYF+h6aa/9vWeb9EQw8q2TNo7fwq3rDGojTx/i2vvQJk9l1MJMR7i+ksgtZBC6ragxQ4FK1ENH99LcfMq56iX4fTPyPtHYho4pVXL8RUIZt9o2qI75RJD+zM2TSXqb+uJ0lAHTe8Zr1Vy8cc2ArecupD8P1zvKJ7Hwus9WPVKf2aGSDHzZwKGHXN6ZagBTX7ke3cozBuvzXZnWNYkIGMkTV0TvbI2BmCSVRDp1r2PK3fypwi2cG2yKslHpPKLS+Jm7Ah6oeGzfoftU7Kw/14oA+DaqUC0GYaab1vlgzeTYfMtfi23Msq8Y64ZMkqRrnQuzV4mSxU/Gr0haYChX5d0zb+xlMdTNqxnpW6H42WilhqFFXJviZq8MzIlYFnQQ3YrPtaHeSsoHozRMc4a7gFlUkp4BymhVPBrU7nM= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MN2PR12MB3613.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(366016)(7416014)(1800799024)(376014)(921020);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: rxB/RsMU2wGc18RiCmU05pspys2Zzm34wCOR/VRbnYsj2vCzjWUZXFwpu06xb3DojHi2WfIoEL6QTUZJ/Guho79xW33OTr83CgiNiXohpUn8PSnRKpzoWnsSI8gFXejRDxoO5Foa/lHSe5tnW6bRePIePQ672DT5+HvQCRzmYlj5lGpk0zYIbKp3TRFdSHiiu5AqdWYLY/W4SSqEDCHTsAmFWevazdHjbPSq1vnLACE5jv4CLZgaAIX38cq8AP2mK91GRyZBb3njjMr2AN3InOvXcNoUI3TzsXUzlleVhDACEfBnoHetmDH3couo5nWXveeRYbYrx78F4eHRMK481n+a+LuvTDKPKRGHsd1v+1Pf5jRXwU5Ysz5eS9GCuNEPeGhjn3BV7zY4xECgo7lNZjg9PX+sK7H/cENJwG2vdHM2VmD53erURX8RlOrXhYntbCPaiFAY4CS81DVWeczmlwjOmim1HLzCNTdIfJLTbV6BnGjUNvwlQxgRNY3ZqXZbQypM/+3eYh9KTacR0FWr+1lGDagOSOi8vlf9tknX3+y/TNUT/pUDq1NvJCqcGgfmBPh0Owym6FOX5Lg8kMT0Ze0fltsS1dMjyTmSVFoNpIpW6AkJh82BkCuI67wk6FDnj/1qZjT6Yoohi/Gnq/0h6JevoCNNsPYb0BzyYJJpt8R1kzxmVmWJjACXaHq1nrSBx9XzMNBfcFCtZbzYLmoluw1BUZTIoxNJzDYszxU9Z6BjRMmeeXqT8Ia0SAlin9JRInBq+0YaCj3KwIy4LNKfFYzzupebHjVhoBc7sGEc/An9/mCpjsi6MF0hyoFSLVRqJWJyJoDuoDvrHnt0e49B8/V9bkSMRwZ6IVtxAaeCTeLXV6w2kJDIs//pf3N8XR1PvfqlDW65tmiDHwrsNEide20KuAzwJLWs090KqVNdOaE/o3DwuGFryrfB/mGkbG/LSoMWBCrl0JxN8C0Dkuv2CkVEvyJZS4jtjf3PeE13fGqyxCeH5I4fQMMOgKQM1HKSeE4xatvmdC0sF8MveZocDDqbTaI9DQhujmipQG8KhTWNIk2fyQEGhFwoN2Ouybknmky3Gm+oWRcmuuuCINUNme47yg3I0wKLtZQYf4xNLakv9LznlwHdPC1hQY3GNc65v1ejsZ+SPcI47eeO1LcCj8LK1CUVtqjFSw6PuW5CO29UJJKvlw6cjyWGTvzrcWR5LwusEiKt2oPgMS7blgsJBSVxlOLjw/ZRVtJ7b5Sm2KKoOWQm5HqFYEdpjWonPRrn0d5IIugD5w3yQmwGThi+5vUSnlcwnn0W/jqihH6poC7pP5oN37+DqcfmlxDlfdjg4rBL/ObWNOhr0JDZYQXb747AzKjfuto6c6hfnb1s1e7JxiDM0hdo2glESpBqd1RRRLcvk06/w8NQCRicdg8vaFy6INPl67BFO0ArbJuuV4EFJjOnd+z0jl5GmO5CJICSKF6FTiOpnv5Zv5p5fbzosOHJZzXoTrBs9nPcYUa3ZL+EPoTEefzbjTPcQ4sM2FqL9x7w4hJIpNvqPR0rSm4HPQZ2O4TpbSdhtMunbG75IfU= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4a5b4650-f624-4841-4bbc-08de118e3cb1 X-MS-Exchange-CrossTenant-AuthSource: MN2PR12MB3613.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Oct 2025 17:12:53.7381 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: avopQOXnISs8RTvITcLiI6C5wGVKP/gJc97eTbTMEDo/pUCftk7ZQmEu0pZHDQ91 X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR12MB4125 Status: O report_iommu_fault() is an older API that has been superseded by iommu_report_device_fault() which is capable to support PRI. Only two external drivers consume this, drivers/remoteproc and drivers/gpu/drm/msm. Ideally they would move over to the new APIs, but for now protect against accidentally mix and matching the wrong components. The iommu drivers support either the old iommu_set_fault_handler() via the driver calling report_iommu_fault(), or they are newer server focused drivers that call iommu_report_device_fault(). Include a flag in the domain_ops if it calls report_iommu_fault() and block iommu_set_fault_handler() on iommu's that can't support it. Signed-off-by: Jason Gunthorpe --- drivers/iommu/arm/arm-smmu/arm-smmu.c | 1 + drivers/iommu/arm/arm-smmu/qcom_iommu.c | 1 + drivers/iommu/iommu.c | 6 +++++- drivers/iommu/ipmmu-vmsa.c | 1 + drivers/iommu/mtk_iommu.c | 1 + drivers/iommu/mtk_iommu_v1.c | 1 + drivers/iommu/omap-iommu.c | 1 + drivers/iommu/rockchip-iommu.c | 1 + drivers/iommu/sun50i-iommu.c | 1 + include/linux/iommu.h | 3 +++ 10 files changed, 16 insertions(+), 1 deletion(-) diff --git a/drivers/iommu/arm/arm-smmu/arm-smmu.c b/drivers/iommu/arm/arm-smmu/arm-smmu.c index 4ced4b5bee4df3..5ce8f82ddb534b 100644 --- a/drivers/iommu/arm/arm-smmu/arm-smmu.c +++ b/drivers/iommu/arm/arm-smmu/arm-smmu.c @@ -1644,6 +1644,7 @@ static const struct iommu_ops arm_smmu_ops = { .def_domain_type = arm_smmu_def_domain_type, .owner = THIS_MODULE, .default_domain_ops = &(const struct iommu_domain_ops) { + .report_iommu_fault_supported = true, .attach_dev = arm_smmu_attach_dev, .map_pages = arm_smmu_map_pages, .unmap_pages = arm_smmu_unmap_pages, diff --git a/drivers/iommu/arm/arm-smmu/qcom_iommu.c b/drivers/iommu/arm/arm-smmu/qcom_iommu.c index c5be95e560317e..3163a23fcbaa4f 100644 --- a/drivers/iommu/arm/arm-smmu/qcom_iommu.c +++ b/drivers/iommu/arm/arm-smmu/qcom_iommu.c @@ -598,6 +598,7 @@ static const struct iommu_ops qcom_iommu_ops = { .device_group = generic_device_group, .of_xlate = qcom_iommu_of_xlate, .default_domain_ops = &(const struct iommu_domain_ops) { + .report_iommu_fault_supported = true, .attach_dev = qcom_iommu_attach_dev, .map_pages = qcom_iommu_map, .unmap_pages = qcom_iommu_unmap, diff --git a/drivers/iommu/iommu.c b/drivers/iommu/iommu.c index 59244c744eabd2..34546a70fb5279 100644 --- a/drivers/iommu/iommu.c +++ b/drivers/iommu/iommu.c @@ -2005,6 +2005,9 @@ EXPORT_SYMBOL_GPL(iommu_group_has_isolated_msi); * This function should be used by IOMMU users which want to be notified * whenever an IOMMU fault happens. * + * This is a legacy API not supported by all drivers. New users should look + * to using domain->iopf_handler for the modern API. + * * The fault handler itself should return 0 on success, and an appropriate * error code otherwise. */ @@ -2012,7 +2015,8 @@ void iommu_set_fault_handler(struct iommu_domain *domain, iommu_fault_handler_t handler, void *token) { - if (WARN_ON(!domain || domain->cookie_type != IOMMU_COOKIE_NONE)) + if (WARN_ON(!domain || domain->cookie_type != IOMMU_COOKIE_NONE || + !domain->ops->report_iommu_fault_supported)) return; domain->cookie_type = IOMMU_COOKIE_FAULT_HANDLER; diff --git a/drivers/iommu/ipmmu-vmsa.c b/drivers/iommu/ipmmu-vmsa.c index ffa892f6571406..770fa248e30477 100644 --- a/drivers/iommu/ipmmu-vmsa.c +++ b/drivers/iommu/ipmmu-vmsa.c @@ -885,6 +885,7 @@ static const struct iommu_ops ipmmu_ops = { ? generic_device_group : generic_single_device_group, .of_xlate = ipmmu_of_xlate, .default_domain_ops = &(const struct iommu_domain_ops) { + .report_iommu_fault_supported = true, .attach_dev = ipmmu_attach_device, .map_pages = ipmmu_map, .unmap_pages = ipmmu_unmap, diff --git a/drivers/iommu/mtk_iommu.c b/drivers/iommu/mtk_iommu.c index 0e0285348d2b8e..0f44993eaadce3 100644 --- a/drivers/iommu/mtk_iommu.c +++ b/drivers/iommu/mtk_iommu.c @@ -1019,6 +1019,7 @@ static const struct iommu_ops mtk_iommu_ops = { .get_resv_regions = mtk_iommu_get_resv_regions, .owner = THIS_MODULE, .default_domain_ops = &(const struct iommu_domain_ops) { + .report_iommu_fault_supported = true, .attach_dev = mtk_iommu_attach_device, .map_pages = mtk_iommu_map, .unmap_pages = mtk_iommu_unmap, diff --git a/drivers/iommu/mtk_iommu_v1.c b/drivers/iommu/mtk_iommu_v1.c index 10cc0b1197e801..279e7acfd5c6d3 100644 --- a/drivers/iommu/mtk_iommu_v1.c +++ b/drivers/iommu/mtk_iommu_v1.c @@ -582,6 +582,7 @@ static const struct iommu_ops mtk_iommu_v1_ops = { .device_group = generic_device_group, .owner = THIS_MODULE, .default_domain_ops = &(const struct iommu_domain_ops) { + .report_iommu_fault_supported = true, .attach_dev = mtk_iommu_v1_attach_device, .map_pages = mtk_iommu_v1_map, .unmap_pages = mtk_iommu_v1_unmap, diff --git a/drivers/iommu/omap-iommu.c b/drivers/iommu/omap-iommu.c index 5c6f5943f44b1f..3f3193de3ecd86 100644 --- a/drivers/iommu/omap-iommu.c +++ b/drivers/iommu/omap-iommu.c @@ -1724,6 +1724,7 @@ static const struct iommu_ops omap_iommu_ops = { .device_group = generic_single_device_group, .of_xlate = omap_iommu_of_xlate, .default_domain_ops = &(const struct iommu_domain_ops) { + .report_iommu_fault_supported = true, .attach_dev = omap_iommu_attach_dev, .map_pages = omap_iommu_map, .unmap_pages = omap_iommu_unmap, diff --git a/drivers/iommu/rockchip-iommu.c b/drivers/iommu/rockchip-iommu.c index 0861dd469bd866..0053f5aa2cb781 100644 --- a/drivers/iommu/rockchip-iommu.c +++ b/drivers/iommu/rockchip-iommu.c @@ -1174,6 +1174,7 @@ static const struct iommu_ops rk_iommu_ops = { .device_group = generic_single_device_group, .of_xlate = rk_iommu_of_xlate, .default_domain_ops = &(const struct iommu_domain_ops) { + .report_iommu_fault_supported = true, .attach_dev = rk_iommu_attach_device, .map_pages = rk_iommu_map, .unmap_pages = rk_iommu_unmap, diff --git a/drivers/iommu/sun50i-iommu.c b/drivers/iommu/sun50i-iommu.c index de10b569d9a940..29b230050906a2 100644 --- a/drivers/iommu/sun50i-iommu.c +++ b/drivers/iommu/sun50i-iommu.c @@ -849,6 +849,7 @@ static const struct iommu_ops sun50i_iommu_ops = { .of_xlate = sun50i_iommu_of_xlate, .probe_device = sun50i_iommu_probe_device, .default_domain_ops = &(const struct iommu_domain_ops) { + .report_iommu_fault_supported = true, .attach_dev = sun50i_iommu_attach_device, .flush_iotlb_all = sun50i_iommu_flush_iotlb_all, .iotlb_sync_map = sun50i_iommu_iotlb_sync_map, diff --git a/include/linux/iommu.h b/include/linux/iommu.h index c30d12e16473df..e2bf7885287fac 100644 --- a/include/linux/iommu.h +++ b/include/linux/iommu.h @@ -714,6 +714,8 @@ struct iommu_ops { /** * struct iommu_domain_ops - domain specific operations + * @report_iommu_fault_supported: True if the domain supports + * iommu_set_fault_handler() * @attach_dev: attach an iommu domain to a device * Return: * * 0 - success @@ -751,6 +753,7 @@ struct iommu_ops { * @free: Release the domain after use. */ struct iommu_domain_ops { + bool report_iommu_fault_supported : 1; int (*attach_dev)(struct iommu_domain *domain, struct device *dev); int (*set_dev_pasid)(struct iommu_domain *domain, struct device *dev, ioasid_t pasid, struct iommu_domain *old);