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 CDC58107BCD0 for ; Fri, 13 Mar 2026 18:15:11 +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=Jznxcn6Nn63Hpa1lbbaZPsankzE0DKOrBlmEW26u+yA=; b=LtKzeE75Y6wspyFeFIrv+Pnv5t dlMWB1aJX9q28nyff0/8x+VNgyp7dxRFNoaY2EHRocOuDAgZmEmYhli4y6/uRi5AFp/ETfSoY7Jdy 2gJEj6BTyPjjFqyd73z8I0DRkDf9NIlkMTqfcGWjipoq8I3pzTb1Io+9SwnExc7RyRuz6bJp0RTIv v8KzI6N6Yf85Alq0MsxfyFi//z3uJQO57eLp3QCcVAkeClNF1ZYiHhfXl0WHfOf82qA8Ypk9sq4Vx +G4adr7H7G3mMV0pgYpTDO4AqLeu6nKk6jhTJ112xazagIy1j8Cq8jZLDcSs15n4R61q0b68xOJC2 ucqF/l3A==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.98.2 #2 (Red Hat Linux)) id 1w172N-00000000s8I-2sWA; Fri, 13 Mar 2026 18:15:03 +0000 Received: from mail-centralusazlp170110009.outbound.protection.outlook.com ([2a01:111:f403:c111::9] helo=DM5PR21CU001.outbound.protection.outlook.com) by bombadil.infradead.org with esmtps (Exim 4.98.2 #2 (Red Hat Linux)) id 1w172H-00000000s6M-2JFZ for kexec@lists.infradead.org; Fri, 13 Mar 2026 18:15:02 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=nEvkUGYWz7SvnCYugqMQVhr/95k0P+cHgSQK9Ig10LFt8yjROFeFKsFTkDaVci6w8Kxdja0Z04QNCgQjwv48PhEZgHAuSm3Nn+dToS7fg91kbxb9BohtRkMK4Vix0pWX2dYAvlPSxfo/Y0ppzERhjZIIMzrP7jzoia915AN8+BtcdCbETZniiDRk3MlCcWJhoIZ7zhj9tQZJw2zMyxBRQRZGlISdDvTJO4f3HSnEUlNi+9N/t64JI6lBtRQLVycigPrDYmgzhRA0rewBGDx5qHP5CQ0Km4o+tjBNuyfgMzRObizIwU1Q4XiooebaJR4uxp/j60cuOm0kRxOCzW7v7w== 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=Jznxcn6Nn63Hpa1lbbaZPsankzE0DKOrBlmEW26u+yA=; b=Aq+xQfzgZReo1H9QeFF3PzLAOz9M3ao/K7Rz2Ds1G24qPaobpD3/Y7zyB6FWC/sd/ptUuScECKhBCpXyiRig//Kd9uirWzP8TnFE8p/6jQwEuEeC31wnG10sY6qapjis/EFqQ/WQ63ewW8nUCKlSliYEsjhdH3CbWfeu2deNax0m1gEAxD85J2IGLf8gVoauakIeRaW3OuKJ0ZTThd9arYy1nP+9zVD2GDeq99KxzX9oYDPy436WW9X46jmKGfzXLS/K09ju5bg+NCDzAZ30J+dJb078IOrEuyuTs8D1VRbdVSVcoYI5sCd+0KAxV1LIQOE+PMbt/aQ6aPh4jG36pg== 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=Jznxcn6Nn63Hpa1lbbaZPsankzE0DKOrBlmEW26u+yA=; b=YP/tg1IFYZns1ZKab5CGqXHCJMcEM00+7D5aZ3lLL4ZlQdPdsMi1Ui1zCyRuzWKYE9xisAxlJaeY80SyaMXN0Jphm+l5TvAbXZAEswWkoz5ltLtge/WeDBqOq2S6kms0vAeNtWwAsFTWS14g6ppjTnP1u1W5Ryz2dHXxKf/FmsrZzO5j7VeNzvVD3j5S09r2eIFVMMEsxDL8KHs7SmTW5ZqJT9n8eYbeAY1X+AwyNG3TdxKncEGTzeNDYf6mFj5UhBA0+7X7Oh4dayy2zPqWLMMLjd5dWxSuJPrmez/T+zNWEZ2Z2Z6naTNGQDUKg6g3FL4UWylwmvy5PSL0CnadnA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; Received: from PH0PR12MB8800.namprd12.prod.outlook.com (2603:10b6:510:26f::12) by CY5PR12MB6035.namprd12.prod.outlook.com (2603:10b6:930:2d::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9723.8; Fri, 13 Mar 2026 18:14:51 +0000 Received: from PH0PR12MB8800.namprd12.prod.outlook.com ([fe80::f79d:ddc5:2ad7:762d]) by PH0PR12MB8800.namprd12.prod.outlook.com ([fe80::f79d:ddc5:2ad7:762d%4]) with mapi id 15.20.9723.006; Fri, 13 Mar 2026 18:14:51 +0000 Date: Fri, 13 Mar 2026 14:14:49 -0400 From: Yury Norov To: Jason Gunthorpe Cc: Yury Norov , Andy Shevchenko , Rasmus Villemoes , Eric Biggers , "Jason A. Donenfeld" , Ard Biesheuvel , linux-kernel@vger.kernel.org, kexec@lists.infradead.org, linux-cifs@vger.kernel.org, linux-spi@vger.kernel.org, linux-hyperv@vger.kernel.org, "K. Y. Srinivasan" , Haiyang Zhang , Leon Romanovsky , Mark Brown , Steve French , Alexander Graf , Mike Rapoport , Pasha Tatashin Subject: Re: [PATCH] lib: count_zeros: fix 32/64-bit inconsistency in count_trailing_zeros() Message-ID: References: <20260312230817.372878-1-ynorov@nvidia.com> <20260313171855.GA1744604@nvidia.com> Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20260313171855.GA1744604@nvidia.com> X-ClientProxiedBy: BN0PR10CA0009.namprd10.prod.outlook.com (2603:10b6:408:143::6) To PH0PR12MB8800.namprd12.prod.outlook.com (2603:10b6:510:26f::12) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: PH0PR12MB8800:EE_|CY5PR12MB6035:EE_ X-MS-Office365-Filtering-Correlation-Id: c71f53bf-ea84-458c-04e2-08de812c6b6c X-LD-Processed: 43083d15-7273-40c1-b7db-39efd9ccc17a,ExtAddr X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|7416014|1800799024|10070799003|366016|22082099003|56012099003|18002099003; X-Microsoft-Antispam-Message-Info: XZSrGIIfFrdUG8PRSTJLbyZibG9axDCqmnyNzmIcAch4/RP1wgHCKJfdhdYQabV6Z9k1DBvekOoGhVfwjx9FXDoBCokntWMSH2kPvqjtxtz3g/a93lqKYk5MKKdA7SW0fj54c7DKG0l8LHDw9UZNCYBWn0nCfK+4hTHSvrpYLnb0rnBgMre5SRFRcf7+quUXDL5Hbi9EbH0Oy5kqvB4mtiBcdCbF80RBZoUhV4To9Ar/HQXJaJYxzzzA8em2O103VwzVwkaG+I9P6WnB0aCsBoYnljvT4WLlULVFwM0DL2rsD4SicDCadeY42wUl2mNwmmJfcNExN4a9U3dlOCa7RFbCrhXB1FPM3/0l4AEy5bb4jexIitFCqwhYg7JpF1nu1nRMOto5tcQwmKfqfbI2zVhzl/yvGslENwRKD2wFkbbmjBZ95jL755cPcLWqDzviTV1dN4WRx/WjdEMQdE1VwohkTKez7X3XdZZyIKHJ3AjsWLGf4PO3+OMVv4Cs4e3L7356Ui3dyNIO7+smhyAS3rqDSn0mEnPrnLNbpeA4R8MwXFhq95hkU9op5XtuygOSItflqGZb5H6gtt6Ozt70o7QJgSWHn5LGuRxBPOfZ6WJv+YG8xhiAWwbd6ApYhAsqvA5j3MGPMQU4C/JhP/sqmGFHJnsNVRzrTfOJiq03uBruAvMsHlS+ffClD8ear6pVUONS6xevsdIm4tgmOIkGJEE+s7EE3QJqVuI24dTGwXg= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PH0PR12MB8800.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(376014)(7416014)(1800799024)(10070799003)(366016)(22082099003)(56012099003)(18002099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?dok6uZWq1MPTd6Aalz96D42Wg6EyP7GnkTzV6XYHFzkR9/T4TX/CvSyZIVrm?= =?us-ascii?Q?t27o0vXHrCwlD7hG7HeV6R8bFQxdwlTaYcQkL7hM/3bYACWDI24GyJB20+Fm?= =?us-ascii?Q?15Svk3AA5HAO0/YHKP1tbASq3wI9uiPpWelppCcNQH42lJJ2yX3fLPKoEmWO?= =?us-ascii?Q?r3jiYc0SDCDFifacUJWCG3n6ARFXEjXjspI6durrydePOqVW/HuWOkuKJLoE?= =?us-ascii?Q?lWQB41EtIdRnnnIk7DzVHMK0dz6xcagXrtd9R0BZwDAraVPVNxkEz2ppiQuT?= =?us-ascii?Q?TcgpD0WLhzkUwznEgsi6xgh3mpQZz7QDTCvJ5gShK3V0GwKs75g9Se1tnh2K?= =?us-ascii?Q?fpmVdCjb+OA0mPncDHXVfPTqCZoSI5dsz0xHH/ocGWPVYTbSJhRETUiieB2q?= =?us-ascii?Q?Q9ZJqd8rpQMwT+raSe8iOFFlmiIpYE/7+30DvjdYgW3avLZa4pyhJxf381Lg?= =?us-ascii?Q?kchHBTNLcBgOm+ikIVyv9NvSZWQ29jgNW5AaaNYR+VId8Vyl35FdQ56CMA90?= =?us-ascii?Q?8DS0F39aRVKXCA/+bRkqFCxwvWsVG0sNt5sbBj/tQG8kBZZZ5ZdkBladvZHA?= =?us-ascii?Q?YIZdV/Mf6U5c6trqRrsL+V0R73gKF7vF+yycWgDYZXJD/ebKUvc93y5HIB5i?= =?us-ascii?Q?hr8CAQmZVC5eM0dC1JGVkiuEhStPWB32bD+xvzd15t0drsyihFrES3OLpUUX?= =?us-ascii?Q?sQ+QlJAqrHUvsSEokZFKm92kNg13/0O6xbkwFvrCR0uGOt9hK3COSLaGcgZh?= =?us-ascii?Q?dxKu2XcH2ELVxWPNBGa6o8207vlcfN225JsSRXDEP5ayi4WJPMAHdX3NJ8Fr?= =?us-ascii?Q?7T/PXMJv9bO/0gxs9E96StDWMXIOnnqgia3hhmgEbxoNJE0E7cEMEfPBUHKs?= =?us-ascii?Q?+q+9WNtTHETFWcpnDViYZJpfKE6KAEV+yADGMkb3A0WVtcfd2bczKyTyXf5x?= =?us-ascii?Q?9YpPxgJOCgyyVJTif2P3GSZiATa7dIZpkbtsxtllURxByAVJOjMiHmpOHlG5?= =?us-ascii?Q?nDvz44Bmb9+1xFeK+BBog6x8cEZignpwgyw1sGmCrzH+rXpmCooYGX2rHu6N?= =?us-ascii?Q?9gjAR+1BVfTeTqB9m3Zx6aacfmXHOuedFTsLRJZkID7IuXgNcfOi5KBenLhn?= =?us-ascii?Q?LH6ahmW7ySdt7QcPuZdp4teE6QR7EszQNat198bh1E9DxIMFqr2X7a71GW29?= =?us-ascii?Q?f1C9bZgnaKgPMlu1owRBT0mCfhoFXr/6dk000TsOV6Vy35bU4knU8HUXcWqU?= =?us-ascii?Q?TxMCopClgx2KaKu+3UL+yqbgNVLNjJKUl6pBvJnU9oOcELhUEwY4VKj2f1jF?= =?us-ascii?Q?N9pxbwB/WhW+T9uqKiqsU9ghy8HcduHj3jZ0UW8c3cWbPHJMVBlWzJ54kOJC?= =?us-ascii?Q?utnrP2pwvZnCOzw7miIlkznndkVWfHMh1D8wwJsr698sEx0o2kNGkgfSyHA7?= =?us-ascii?Q?oafXZJi14QmFQi8OUFF+PCGHmEsr1Yj0IgEQ0BeScLoNIrFmO02/es136M1H?= =?us-ascii?Q?bZWtd9YCRDQjSpZgICD5UH/WUnP0c28Zbbn0j4ooD/4iHhUp5hdfkPLABfMU?= =?us-ascii?Q?4QogI7qRd8+3Ie0+qIroffQAHMbuKAE/2nPI4JjSxx8Zd78xxzHRCiDdbAcV?= =?us-ascii?Q?N7W1uDN4d6KopfMBKMKu3CTwhYAqWOBAKfeDrNK5IgvSSH8mGKQt+ghEy8/K?= =?us-ascii?Q?0rY3D183kyF96kYmj9t5+F7+ZvVugwF5QqH1QkIIkxJ0lkbLljEA3pmz6ARq?= =?us-ascii?Q?DkKt6mvOgROy2OGLqcg3mxjuI7AsOYlUOyYYkdwEcb4K9ERb2hIG?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: c71f53bf-ea84-458c-04e2-08de812c6b6c X-MS-Exchange-CrossTenant-AuthSource: PH0PR12MB8800.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 13 Mar 2026 18:14:51.5228 (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: 3JERrbAz2qJl1cdO4o6loxDK4en6g49PqLBUOlI1kqSrTIGXHHWKJbXojMhI+LkUOkM3KN4yTxSLt0DEvYZtyA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY5PR12MB6035 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20260313_111457_589009_1D6F488E X-CRM114-Status: GOOD ( 14.75 ) X-BeenThere: kexec@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "kexec" Errors-To: kexec-bounces+kexec=archiver.kernel.org@lists.infradead.org On Fri, Mar 13, 2026 at 02:18:55PM -0300, Jason Gunthorpe wrote: > On Thu, Mar 12, 2026 at 07:08:16PM -0400, Yury Norov wrote: > > Based on 'sizeof(x) == 4' condition, in 32-bit case the function is wired > > to ffs(), while in 64-bit case to __ffs(). The difference is substantial: > > ffs(x) == __ffs(x) + 1. Also, ffs(0) == 0, while __ffs(0) is undefined. > > > > The 32-bit behaviour is inconsistent with the function description, so it > > needs to get fixed. > > > > There are 9 individual users for the function in 6 different subsystems. > > Some arches and drivers are 64-bit only: > > - arch/loongarch/kvm/intc/eiointc.c; > > - drivers/hv/mshv_vtl_main.c; > > - kernel/liveupdate/kexec_handover.c; > > > > The others are: > > - ib_umem_find_best_pgsz(): as per comment, __ffs() should be correct; > > So long as 32 bit works the same as 64 bit it is correct for ib This is what the patch does, except that it doesn't account for the word length. In you case, 'mask' is dma_addr_t, which is u32 or u64 depending ARCH_DMA_ADDR_T_64BIT. This config is: config ARCH_DMA_ADDR_T_64BIT def_bool 64BIT || PHYS_ADDR_T_64BIT And PHYS_ADDR_T_64BIT is simply def_bool 64BIT. So, at least now dma_addr_t simply follows unsigned long, and thus, the patch is correct. But IDK what's the history behind this configurations. Anyways, the patch aligns 32-bit count_trailing_zeros() with the 64-bit one. If you OK with that, as you said, can you please send an explicit ack? Thanks, Yury