From mboxrd@z Thu Jan 1 00:00:00 1970 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 bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (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 EFC55D15D88 for ; Mon, 21 Oct 2024 12:31:36 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:MIME-Version:In-Reply-To: Content-Type:References:Message-ID:Subject:Cc:To:From:Date:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=zdjrtzGLgZdk4EwLCel+pbj0Hx5uPBJSPrxHKjnpFQU=; b=1aeIm3xPi/DVeUxv9A+SWSgNwF FYJ0mJSA6Tg2KzlouoKvjQPTW7lS3fSehZBODqMawKZLGpxjmHq05ZvQOT+/lc0u0bszbSDSxpJL0 m5MDq9uJ64OHdrvqvdG8S6hezA7Yml50gwUR0zs0CqjnBp2x1EdXIWtIR0FCJ+aBbkKfq9gGXD9AY vPwt8ODCrgNRMOmtN0Q4DQIzVegwt807Oh9edg9zuZg6j8755axTdVObgmQDRDPs1CCaMNLI0mb1N 3IWJJBPACWO6+aDnl6HGQtehqbdW3TQpE4JgLJDQXXvh4KLDbV7QhO0WJPRyBbytUecfCDXP3okBR A2O3+9zQ==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98 #2 (Red Hat Linux)) id 1t2rZB-00000007Fko-0Q5l; Mon, 21 Oct 2024 12:31:21 +0000 Received: from mail-bn8nam11on2061d.outbound.protection.outlook.com ([2a01:111:f403:2414::61d] helo=NAM11-BN8-obe.outbound.protection.outlook.com) by bombadil.infradead.org with esmtps (Exim 4.98 #2 (Red Hat Linux)) id 1t2rO3-00000007Cvl-25e7 for linux-arm-kernel@lists.infradead.org; Mon, 21 Oct 2024 12:19:52 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=fy5aLdcGNVkJYOmLHmXxlpfxg8LEm9Yd2vf9Z+dYzh/91CkJQI5K1f9D5HzE9jjnRr+PDWrKSPCuQl9jqKFHz3VbvOQ0N1hTKEW3Id0XZ2WQPUKSSw5v/2+fF/eSesgaNup8+Q0d/3m27c3BkqR+i3Gl+umiaYhKoGjDIRnIp+/PplHENIAW66duISmwujmMxmDssKUDkoIa0MyDXdnG5+o1TQIq1ogBhJGhZ/XZx0+R6Ulm1xUn+7A1v9u/gRoxszNZte/XWdqmL4ntdMy2dJpi6my5tHa8dInHh9kucTb3pOGkO/P4TOE+HOVCel97Yiqq4H5eZ5vZOIoIa2RPPw== 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=zdjrtzGLgZdk4EwLCel+pbj0Hx5uPBJSPrxHKjnpFQU=; b=WsdMliSeGRM3fdDanzLPizRBqDt5E2owqAuZSvW9kYOm9rC0glNf+8FIODh5TivxATrsrby3HIvjFwry3evftEbKLSCQGV0NYvrUCQw0FxT0NQyEkf/xHgTnN81lXnwYwrxtzoj978KEupTj6NKS3bRJa8Hb+mOhVTCgdmTfNSwSaFk0wAAMamsAnKPZZNR1pPm1mNUs5wqf36WDu9gLywiRT+Rd3HIdRcHhUXOlptqY7xD2Tob01Z+3cAqQdf1SMXD9gWPPvv9FdsUKVo3URTJtzM4tSfIyssI1DQAlKt4rauym5qL4keNdumvY5J3NoDWFwRq0NpAMbBZohWGJvQ== 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=zdjrtzGLgZdk4EwLCel+pbj0Hx5uPBJSPrxHKjnpFQU=; b=AG+bn5DCdU5OdQdVMryRKLJezXDQO75ooBJHqz3TTD3v63vrCtQatkLYLTQvcL6BlXeNgrYEJauH1m0YGAQfOBOdq0fL/4SRHKvNSLBrHd9HKSumVCNbsZbPmKKH4F1TJZYF4HBMEr4Fj0FJ+0OSdiYjazVqCt/KNtZWdqB7SEszrxyu0sax/LnmNP2G/a9uOnZiXdQwMrqa5IynurvPWZQPexHe9D7u9cTmKDkt/LObps3sUlM9fiiZZbigAMLPRwFGQdXzpFemn67y7bHfGIgcXVeqLEWI6ULtrfCV3iKJG1eSe1SD3zi8wpuc8ae5++73j0vBkouvtbY8N9DDyQ== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; Received: from CH3PR12MB8659.namprd12.prod.outlook.com (2603:10b6:610:17c::13) by BL3PR12MB6451.namprd12.prod.outlook.com (2603:10b6:208:3ba::9) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8069.28; Mon, 21 Oct 2024 12:19:45 +0000 Received: from CH3PR12MB8659.namprd12.prod.outlook.com ([fe80::6eb6:7d37:7b4b:1732]) by CH3PR12MB8659.namprd12.prod.outlook.com ([fe80::6eb6:7d37:7b4b:1732%4]) with mapi id 15.20.8069.027; Mon, 21 Oct 2024 12:19:45 +0000 Date: Mon, 21 Oct 2024 09:19:44 -0300 From: Jason Gunthorpe To: Alexey Kardashevskiy Cc: Nicolin Chen , kevin.tian@intel.com, will@kernel.org, joro@8bytes.org, suravee.suthikulpanit@amd.com, robin.murphy@arm.com, dwmw2@infradead.org, baolu.lu@linux.intel.com, shuah@kernel.org, linux-kernel@vger.kernel.org, iommu@lists.linux.dev, linux-arm-kernel@lists.infradead.org, linux-kselftest@vger.kernel.org, eric.auger@redhat.com, jean-philippe@linaro.org, mdf@kernel.org, mshavit@google.com, shameerali.kolothum.thodi@huawei.com, smostafa@google.com, yi.l.liu@intel.com, patches@lists.linux.dev Subject: Re: [PATCH v3 04/11] iommufd/viommu: Add IOMMU_VIOMMU_ALLOC ioctl Message-ID: <20241021121944.GO3559746@nvidia.com> References: <352e1701acdec6e038ccddf02227be3a1670706e.1728491453.git.nicolinc@nvidia.com> <6ac9e666-75c3-4cc3-beed-03295368294c@amd.com> Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <6ac9e666-75c3-4cc3-beed-03295368294c@amd.com> X-ClientProxiedBy: BN0PR03CA0027.namprd03.prod.outlook.com (2603:10b6:408:e6::32) To CH3PR12MB8659.namprd12.prod.outlook.com (2603:10b6:610:17c::13) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CH3PR12MB8659:EE_|BL3PR12MB6451:EE_ X-MS-Office365-Filtering-Correlation-Id: 198fffee-67a0-4446-0ce3-08dcf1caa648 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|7416014|376014|366016|1800799024; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?W00DtiPv670q91EF+/JzyvbhTqjVpX/b6oqoUBpszkxK9A2siR1aag6M5nNk?= =?us-ascii?Q?cd1Hj3hsch0OlVoGjtqIKhhdivXBoJyBn4aitN6PhpwtLDW9mLwb0au9WwGL?= =?us-ascii?Q?5VPjA32rQ5FtIYD2mdJqyt5w2r4HWTSoiBkscoL/vx8wvXQGpRPVTVYvm5q7?= =?us-ascii?Q?/HxKDNOOlAn14KqyxT3NUSsITC/bZL0W20O8WKaWT/OTIq5j/gGSGVaCfh1Z?= =?us-ascii?Q?/MwR8CoR0m0N9i2LgeatZe0LMaEDH6nJ8kMcD+OdWjquS9GB7lclwb8xI2dS?= =?us-ascii?Q?YihU2456saJtFiVvlehTWRT1V4eZo4Xm+e5eR+2VtJz27e1Fk9/2KdiCzqfv?= =?us-ascii?Q?lufa8icM0V0IFFZlOYLhr1zosV71IdsvG/v8Wi62XhoFE9KycErQsfcJIobv?= =?us-ascii?Q?1s0iJtuJ1760BvnudH2PUkMEF/cK7Lhjh6aQ47JrkZJPUhQqXuh+wNOfZeVt?= =?us-ascii?Q?Wnswx1TH6FLiPFsrsjbveDht0uMNI/ic5MWFEbSi3oAjdY9gjNdR5LCWgcnq?= =?us-ascii?Q?kceUeYW02HhYcRANJCl/zAgEZUFljYBG13K4CM7kJTvgc8QoB3wtIIDUQjbL?= =?us-ascii?Q?8L1RyPIqLPFvkM2sy/1M7aYO1ADkMDE4gbQz8gHgQYdQ1xuX6TdQDkqNGac2?= =?us-ascii?Q?v61CYpTcHj6jHhi0AX2iEQ4vIqr07PXfjK1B1ivwZP547vL4wBjbTQVcWw65?= =?us-ascii?Q?gmxjMDnI4zPD1nq1u3Oi4FKiO9NV/1KDCWOsWQDzd4yl56X9d4BAe3rUpToN?= =?us-ascii?Q?XeuTI7F6wsLU5npNsunOy2uJJ/TSdqps6f6CVMnY1DScmVdUmiNiCapIzRFl?= =?us-ascii?Q?RoVzzlAdTJ+KeLh8KB6qsTjVj5APlqJ6y1ro87ZvpkRMgLSNblsh7/9Ofh+W?= =?us-ascii?Q?RVClVIrZWOvWWixFgpsFj4k/Wkm7w4ftZJVLaZTAmZysgKTpLUsy6QWRvxyS?= =?us-ascii?Q?SmqcM8DCOewqDciWN5KHMwp05y1wM7O3IVTSCvQjucgxj9d4GzJwgw79NWrL?= =?us-ascii?Q?Cqk2dytlVAnv9EuTNb8AURoYzY1EKq24/3yp8rxuvS5UA433eYDBugVpjxGO?= =?us-ascii?Q?+kr2VTL8pfANbFO78Msls6eMpro8yaAmPAbfHe0z+Ozz2Vy6w9knM6pjsE85?= =?us-ascii?Q?CyoSih66LCAwFYggGTS83JK31FAW8LpE2gNVlI7sQ29T/ZfTbAKQKxNhcqtX?= =?us-ascii?Q?5t2aGfAvXB87h19gByiw/Ytwn5teR4O5XDBWTJotw04jpqnR8afTmEXu3+o7?= =?us-ascii?Q?5TfmNP2KOQrJhRHZ83zLpB+DFb4mNxmBI6MMRQzUHg0OEAPRc6NelncPWwgx?= =?us-ascii?Q?iF9mq4E+HsG5/czSWOvftWtR?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CH3PR12MB8659.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(7416014)(376014)(366016)(1800799024);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?w6ymwlQheFC4AWsII/ZmSRf0ZUr/pUsPph4LcBgoD+c8PXcV6gEcIzMH5O0v?= =?us-ascii?Q?9mBJZydp5Z+gbELttSbW3XJDxDFely9+ZhiiC+u4K2nqzpKInJBy+pp34vfR?= =?us-ascii?Q?fBa0dSXTLM8Zhy1TdQN9MvGcUF+WKjCl4lEnS1K1q+0/UIpWsWjeQDDABiMQ?= =?us-ascii?Q?N4KPYBWeBG0YoC4aia0mIohtDDQ2qfRgMBsu234Ph+ia6aV8vir1hIlImBLw?= =?us-ascii?Q?pZh/5sGLedHH1qcYC6YPAsY0hucua/CUBKcIjEplUBYHKxwmgEH9zFEOedmz?= =?us-ascii?Q?NDi/TRH7A93h2KPyreFEHZdYBwhBkWdYre7jbPUOuSBfD+M/cKHw/Vtl+zOd?= =?us-ascii?Q?suRlNJ1cpAxWB8gTPJdzI1NqQZ8zjgLTZEoXGZAmcv+52hTlC7FULge2K7Lk?= =?us-ascii?Q?DTLY0ZRWLT4Z9q5qqPNBHks+wuMzbQLBiSIspGQ5Q46V+hyhcmR9fWrVsXYR?= =?us-ascii?Q?Y8QS2WvbeREDGHLkxMAO/G823F7jXweBUUr0aJw0WefudPhIiacHYT1aaCiV?= =?us-ascii?Q?65dzmG9PapHBD7DX6hQjPCQYzjqJ0VzndI6F+bdSMMOl9ywyk59C3DkGJWLn?= =?us-ascii?Q?zGqM1eWG5mJUgKhK1elIKdGwBumUa2Gn+NnDqufD6uPPAI/dAxnq3xSXSShd?= =?us-ascii?Q?YcLOdB/fSMr6QIgzvkBbmLpZDPH1ky4QmxKlNpkUHH8CVoJo6oiYxLjcJ2oR?= =?us-ascii?Q?SS3rT9X5rOptrD5+Erjw2ygZJ5BUf/1h3seOS+tnCpsJU0qkCqp4tPyALzgn?= =?us-ascii?Q?B3twAQGJLBnL3I82tSkbbKpnqAyscpddZMVf2pYjkpBbutN2w/5pFlEkeTl2?= =?us-ascii?Q?14kcyqEaORoOcmMsU27pVEQQsrd7eEU7rMwGu43wr/Xtt36YIluC0i3GZzRf?= =?us-ascii?Q?K5yZNNf3F/DaQwfvNR4acqMOCrs/+eOVuAQ0I47L7OQMABu0VAnUKdVIpU5I?= =?us-ascii?Q?2G4DMls3LjGF6hr3R/hWJf90dt8YB3W4NSBiC6cxRJMg+gXPKViXjZ/k/cuf?= =?us-ascii?Q?Sqx7vsJzUQMbSQlBQbN5fQ5wcMwzO6HBp4uA1GDir8WtQivVZvwPcF9ljiOS?= =?us-ascii?Q?b3JHTRFXU4dUSdEAQ8wu1qqJy2c4h7R8JsuR+wfb7ecUDXEkX5Ca/1bdVPhz?= =?us-ascii?Q?zHDov8jXZpNWoEScpTY7mzteWLGLFKO+5dGM3/VkyV7wQBupX1ZZ6bTGjNuz?= =?us-ascii?Q?QpJF4QmA2DO1qem44JF8DHg7u4prfy47Mb0gu1DkPRKJ2rKBCgqi60TSVJFn?= =?us-ascii?Q?B9OZy/oCwcdFl16X+oIoKrrJY2ukJG+XErOWMd4TAPA/Jlte3o+KKWJCzdgY?= =?us-ascii?Q?R/y5rGEWDCj0QJEIWrGD7ALZ0xZq6T3J7is+3C2w2tsH7HyG8LsmHiEQmsFN?= =?us-ascii?Q?RfFkI2wbUdkHnmtcsWLFieid5uacWRUbj0iLf+SR3oNsu5ENmNlUrspUqgPF?= =?us-ascii?Q?1plPexeoGRbGaixtDyrJCcXql1UTMnmWxGcwYG3kArpDg1c7dmGYODMcEWsF?= =?us-ascii?Q?aaD3zO+0VvKdhYkdVw+iwRpYalR7Ule9k8t9jB023T2M6Ef0LTIBYhI4/xPY?= =?us-ascii?Q?ui7fLRq3aiMbqUarmsg=3D?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: 198fffee-67a0-4446-0ce3-08dcf1caa648 X-MS-Exchange-CrossTenant-AuthSource: CH3PR12MB8659.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Oct 2024 12:19:45.6934 (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: S3blUBTXuIfv3an/ySpe+EfqCoqvHBNYIT00aZDHCmdYTJcC4jjYsJ2+4QVhOCJz X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL3PR12MB6451 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20241021_051951_563973_CAEB895C X-CRM114-Status: GOOD ( 14.67 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org On Mon, Oct 21, 2024 at 07:11:47PM +1100, Alexey Kardashevskiy wrote: > > + hwpt_paging = iommufd_get_hwpt_paging(ucmd, cmd->hwpt_id); > > + if (IS_ERR(hwpt_paging)) { > > + rc = PTR_ERR(hwpt_paging); > > > iommufd_get_hwpt_paging() is container_of() which does not test for the > value and just does a simple math so the actual error value from > iommufd_get_object() is ... lost? > > Oh well, not really lost, as "obj" and "common.obj" seem to be forced to be > at the beginning of iommufd object structs so container_of() is no-op or is > not it? Yes, it is just a type check, the revised code I suggested doesn't rely on this. Jonathon remarked on the same for fwctl and we came up with something different. > If something needs to be guaranteed to stay alive, may be just call > device_get(viommu->dev), with the comment above? Or it is some different > refcounting which is missing? Thanks, device_get is different, it just makes sure the struct device memory is around, it doesn't prevent iommu unplug Jason