From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from PH7PR06CU001.outbound.protection.outlook.com (mail-westus3azon11010028.outbound.protection.outlook.com [52.101.201.28]) (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 ACCB33AE1B8 for ; Mon, 27 Apr 2026 22:57:36 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.201.28 ARC-Seal:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777330658; cv=fail; b=jpsgy2ANoOQrI27KBAV3XogvcJhTqay3KvVZlg50xm+wkWx8uaTeFrnTxawJJhYvMtUsNwCd3jIOUJnx6RytzguvhBifPWRddJuLrQ0yllE3cyczJ3srp07fMs10JGGdm9rrNGdNV++4vlUz5zEPKxEQFHCLXaO5iFUXYio2baU= ARC-Message-Signature:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777330658; c=relaxed/simple; bh=z7S2L2LSNiT2Dled7SdKQLVdk18JEXxTY9G5L4RcbHk=; h=From:To:Cc:Subject:Date:Message-ID:Content-Type:MIME-Version; b=WG5xkR0wj2Rta9LQScyyr+mS2dO/wIohc1ttZ0CWN6BYru9OywXEBbmv3ALP50TuPNUn3Q0bI0eWB1qc/To+gsYCfpb+gNmSqwwsxedp7JNLrcyK30jTN6PEALKPnG+ytTO4xlPSUaG2oOoE/Jk7kGJESfSd1GP99W6jVY/Y+VI= 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=MZc7GEB/; arc=fail smtp.client-ip=52.101.201.28 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="MZc7GEB/" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=bROUdhe5fG/o0kBqk8TQ6dkAQOXDCW2+ZXPzloLNMzGasVvyA4qS8hMlrBrePGBgOd0YG1wERyd3DkRrUvCR51+sdW1EPbEJrzVcQRQR4W1Ksst7juzPpaCIqQ9C2gcmxa+Q5NgcyJYJmYdGc2fTQwbDharWDdrM3mHIQmYBucRF3wyBtfzEciHlDCgw4WUlzqGkPWEzVDwqIfrGs/zZ6daGLj+EqjLmljWJ1FTfWdPVW7eEYWpRlfFyerh5csrIoITEcR3AybAK6iztPeSDnbqsKD83tjZxtvv8Vfz5Vl9TDur9Hs4DilV3G/QnkFMb+vDG9fCj7EhP5oaCtg/rkQ== 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=1pYqYki4dsvMR1nBW7T5p6sYaZmrF9sDIpmZF73Zgt8=; b=qPxza8LWUDhyfep9T1VYRXlmnTcOXgxv8aJq2YQH7//h+jQ28t/ueKtq4g2xeRxqz15iL9Cbq3xvgQpZjNxYt0G2fsR6pZ8/Ib9F/kExYD45J/jdFAX9Nf/6JEw/66gy2jtEE7dBeOKGUCdenLXwNPKFRmah74OYdmGI2yZpO32VIRhkCSmkxS/GIx8n0GC13VCo/qdvw0ZgilPDnzX8JlSsLgvcWCymDvslnqrcYT9VDIPO6WphSLdp0O2yijarbWF0HIVYQSD7omKBm3HY2Cd66C/L+4NPYpnP0s92+tkougby0L2gXNPMSO5MQEjQj8Scbttd6NpBNboWTE/alA== 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=1pYqYki4dsvMR1nBW7T5p6sYaZmrF9sDIpmZF73Zgt8=; b=MZc7GEB/YF5v4bkZrmRvXU9eP+dV9Qr4bxQ7g0VKcvTAGuRsSNVtGb8lIVG4w7eZaVMQ3tLm++pcsIco7WaNR++XdedHl7+A+jO/6cY+5Uoj0KzfkstdxkZfXRDL2K2h7V6TTiBxKii+zJ66FJgTnM8t3w4b/5cRS5egx00ECCjMEGQYhZ5ttcrThzsYxeANfhASJofcLB1gJpwAl/Crv2FKYUD5pPptvZ+7xXgq6unx5u0vnLa2K4JUTslKi0TocNpg2Ier+V+bnxT8bmDy9GT87ZcGFfxy6VXdTZVC4loUbps4X+8Df8gnH+5ea6qCRweEssL6dpgP8b4gjlpbyw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; Received: from CY8PR12MB8300.namprd12.prod.outlook.com (2603:10b6:930:7d::16) by CH3PR12MB8547.namprd12.prod.outlook.com (2603:10b6:610:164::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9870.16; Mon, 27 Apr 2026 22:57:32 +0000 Received: from CY8PR12MB8300.namprd12.prod.outlook.com ([fe80::ce75:8187:3ac3:c5de]) by CY8PR12MB8300.namprd12.prod.outlook.com ([fe80::ce75:8187:3ac3:c5de%3]) with mapi id 15.20.9870.013; Mon, 27 Apr 2026 22:57:27 +0000 From: Yury Norov To: Yury Norov , Rasmus Villemoes , linux-kernel@vger.kernel.org Cc: Yury Norov , Frank Binns , Alessio Belle , Brajesh Gupta , Alexandru Dadu , Vincent Mailhol , Matt Coster Subject: [PATCH] bitfield: wire __bf_shf to __builtin_ctzll Date: Mon, 27 Apr 2026 18:57:05 -0400 Message-ID: <20260427225705.418802-1-ynorov@nvidia.com> X-Mailer: git-send-email 2.51.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-ClientProxiedBy: BN9PR03CA0386.namprd03.prod.outlook.com (2603:10b6:408:f7::31) To CY8PR12MB8300.namprd12.prod.outlook.com (2603:10b6:930:7d::16) Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CY8PR12MB8300:EE_|CH3PR12MB8547:EE_ X-MS-Office365-Filtering-Correlation-Id: 5a71d2e6-02b8-4510-2764-08dea4b04f6d X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|10070799003|376014|366016|1800799024|56012099003|18002099003; X-Microsoft-Antispam-Message-Info: eWf/vJQOYCJHqC2B08sR1Bwf8og+FaWMj1ig/dExT5WZXqZsOgQDueurhXMppIX2KtqgWZ6zhP2vMMe29AzW8BhOgCLxa8ydayxCGqL1l9swIrs2YH2KJpciRQ5Hx6azKSS3LnPJ2d3mpEZKcNXpmGN7yQvfJvrSJKbBOih7+Ge3bCojcqXfH1DJQLDNzrYtv6+QcT6aaufwAnk40ONMsl2Fo4Z62mcmIIsN1kxTfHEfAWm85U/fp/gu1zaQ3+RXt09N2HKybSv0CQIiZ0FuVUxtM3mHJwt6wSC8HiU3JjQZZVEnHEamP9tB2abaumYxRK1zpqfThaA8sHqSGEyy5RPOS1dPtf4Tjx4Thw46PRWPrJVMSPitvTyxv0vpTyvPLCczwSkQkDSSPzyUIqqa8Rkg7JAUHOY5vfu9hUJ3A6SRqrAXDG1o2uDBvMUg+O7lAz+ZpLhg3tCKKuB37y97v3fAXC8BuBEuycvSz67Bz+LfCXLw6aW4ggGdB+UkxuqDxB8H96CkbkrpDRNaTgqPS6GACM9h3uHMdx3adEJZ6zhCtAtzH9G29ad8uRZDy/a6Wx9XMei1y2bdguLP49odTLEal9RFoKZsxoRUN2zQw236Doh/k4qTkFcc397kMAIuwYgiUOATZimgIUCgq9FXRD8pCItUZHz6EYGU5NseMwwRTd7w32DmCZsFtS51t6MA+NGJHbtj9uG1/f7aZjtFioBugRYO+e2HHYOeoCybhxU= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CY8PR12MB8300.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(10070799003)(376014)(366016)(1800799024)(56012099003)(18002099003);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?0M/J55ixUpjs1TWgRpNrse0ex4EWegHcWdYH1sPYaZnTE6bjqR/OqPUTyJrr?= =?us-ascii?Q?M00HrKowKFVMtXLIrzX+KDN3DPEmGwQhFXMIy4voVQmFgNwQYzpZsJgTRuBe?= =?us-ascii?Q?9z23uumut6PZNpe2Vz45lrm3sBDF3MXmi1AmUvnXS4Tns+oQkXrMyI3d2NXJ?= =?us-ascii?Q?qlvilyAjUS/LLzjPPuyKwNtAdk+i5qGtYXOZYkv6c6yE30pRwAdt28svinfV?= =?us-ascii?Q?ClCxXucYkmr86qXGP0ZDYnFmyCcPJaObuP4Qw3SVQXU3sz8yrFXG8Yai1NRW?= =?us-ascii?Q?nMH891/e+tQPD8k7fmb7eMKyHO6JLGZxs7IWGopHYYWWPV31cv6yTZ6/jiCY?= =?us-ascii?Q?H0Em+WqWfoDs2bt0AEQYhiiXEOzxRO/rGE6m/XPXY3zq/qCLvTH+qFJH/egr?= =?us-ascii?Q?MN7QC5eoSfDP4Q8fJkSwiknPKusfK4W4dMblpc5LhsMjYLrqaE5XyR3TH0FS?= =?us-ascii?Q?RWjGZGE4u4P20SSLIde989G5/4OK9mMM2m6qxiHxhqU4OZKNwG1JgFsP4Mkh?= =?us-ascii?Q?biOb8Rr/o6+eVWr1aRu0vggxtU/18BdfCjgtnmVPJzfn/wdr001bgSJeojL1?= =?us-ascii?Q?fwzX5gyGHDnPFDPN5RVPFNUWmpvU0iGbNp4M5LQ5QnwFzV8bu+EmbP2df7fU?= =?us-ascii?Q?z8jagu4CbdY88b6gLEFHIQFMk+F1qUvLvn3DIrxL2n2QQo6nHN/+zd/WFt6I?= =?us-ascii?Q?EuUvkvMrSMbXIInRoA9f3kw6TDDh/DY+K4LrUSScQk4YtBTqlOHxZ1Gn9OLZ?= =?us-ascii?Q?N285YmyfMXgstHmu2nPGkB1ut8ns2P9Na5JyYBXQKSYMpij7TSky9+hqK5xi?= =?us-ascii?Q?hQJf7qzxapwBx43PTURS8CtcaizTH3EEYam2j+w6CBlihpoI83IyxLxlTTvg?= =?us-ascii?Q?PLt8afR/1iitChxCfxL/rPGFYg1aKVAl8VqcvPHTreYc7AYrpnluU0nTXpQo?= =?us-ascii?Q?AbXQzDB0iF0DvbLNsiPxB0oR7DXUGssd455iIEAf4Hkys5BCvdJOmRH4Qerf?= =?us-ascii?Q?Uq/PYLcrCNkN64XTMt5eT59KFj0EBefQcHLmm5m+gqtr/AK4XQK1w98ki80h?= =?us-ascii?Q?/Cx/TEijO9bcTxu44QagbxNDuoUjQDfOcd/mo4aJGPT63iM1OEy+r8p40dLM?= =?us-ascii?Q?k/jxNdqXAYzckEFZINiBJxcFnunPWH719iiLC8OW6SAkMFywBRmYWEJ8c7wa?= =?us-ascii?Q?rQCy8QFuaee6VkQdtqsiVgRIEQ2f9GRUMQ9KEcx8koMsIfy1xn+UC1JGbFzL?= =?us-ascii?Q?RPyuBaSjUw1QffuEqD5DMAoe8eeqyxc89caH/l9RA0kIjz/qpxdBxBdnoLxX?= =?us-ascii?Q?43xPNr7+lJZHB/P1xczLcdv6wDWb3ntvdEWLSxsiYxuRMqmmHFk4bZnCxg1c?= =?us-ascii?Q?D51xRPBTxvwr55DNjbRPgep/isvjlAF25i4IkU94Jx3fWGoLFozPnPJ6yePQ?= =?us-ascii?Q?QxMJxDK5gi5ahP6E3RkKodN0S/j+gMLqfTRJI5B4UINXnUQRyXy9xY9JbmZr?= =?us-ascii?Q?z3fTBBu/H1MBPL9B0IXS3TH/I9kPuGfejTG+We67nSX2wNbRtLPHKWS/bQp6?= =?us-ascii?Q?P0RZgaEuPwCWZcmfCNwGF77u4rqH0d+BYtdgxbQrUEq+rYS2P2v2vCm2IsyJ?= =?us-ascii?Q?7v73892xZmVaF8VRNpOzg2xgtD/jSaj/0/c4q0xD9bZbQnxOrRHIrgpFE+X8?= =?us-ascii?Q?CEvjTQ4oIdsJoFUc4quqbhJJtGSu03ZYC2ixcqLg+zJ/peejsihZm1K6jSCn?= =?us-ascii?Q?KB06O9WFezgmRuJN1RD+hRfOIRa7V083k0R0GG/MYtN7igRFrm3d?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5a71d2e6-02b8-4510-2764-08dea4b04f6d X-MS-Exchange-CrossTenant-AuthSource: CY8PR12MB8300.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Apr 2026 22:57:27.8851 (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: wRo+PSLBkqJIhYIRjjzBqA78hLewQ/3F1pZSA6LvrEZt2KMR11pYCkKcwntOjl5n+QTA/cmuS7heqlN8iXhbhg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH3PR12MB8547 __bf_shf() is currently based on built-in ffsll. It's more straightforward to wire it to __builtin_ctzll, which makes it a pure rename. Worth to notice that __builtin_ffsll() is buggy on GCC before 14.1: int main() { sizeof(struct { int t : !(__builtin_ffsll(~0ULL) + 1 < 0); }); } test.c: In function 'main': test.c:3:21: error: bit-field 't' width not an integer constant 3 | int t : !(__builtin_ffsll(~0ULL) + 1 < 0); | ^ https://gcc.gnu.org/bugzilla/show_bug.cgi?id=124699 Reported-by: Matt Coster Closes: https://lore.kernel.org/oe-kbuild-all/202603222211.A2XiR1YU-lkp@intel.com/ Signed-off-by: Yury Norov --- include/linux/bitfield.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/include/linux/bitfield.h b/include/linux/bitfield.h index cd44013281c7..ddf6d1a70473 100644 --- a/include/linux/bitfield.h +++ b/include/linux/bitfield.h @@ -44,7 +44,7 @@ * FIELD_MODIFY(REG_FIELD_C, ®, c); */ -#define __bf_shf(x) (__builtin_ffsll(x) - 1) +#define __bf_shf __builtin_ctzll #define __scalar_type_to_unsigned_cases(type) \ unsigned type: (unsigned type)0, \ -- 2.51.0