From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from SA9PR02CU001.outbound.protection.outlook.com (mail-southcentralusazon11013069.outbound.protection.outlook.com [40.93.196.69]) (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 016982472AA for ; Sun, 22 Feb 2026 17:50:00 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.93.196.69 ARC-Seal:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771782602; cv=fail; b=jTl9AKTvlVxjmGWh73DtGVCmbNgwu4LrGyqTMd1pXqu+kGYQlQ5MoyqnVRRtWzSlmi1vRugWJN1vurA7WMlR1bqj/ie7CKyEDCOsJPfzug+FT+lPOKONblih6sKsyLzoHB+q4R8BMdx0Rk/KOg8yzYfRVDVBF2C7eQYjKweVBBs= ARC-Message-Signature:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771782602; c=relaxed/simple; bh=W/D2nXNNlflvCc9joI7z5I3ouRKlPKa5pOBwBlA/9ck=; h=Date:From:To:Cc:Subject:Message-ID:References:Content-Type: Content-Disposition:In-Reply-To:MIME-Version; b=XV9s9YRGp+yx8PKcBx6k1jc9LIXIykbBkqRD1M5vtKxHbjdGP4YNm2l5/YLORzrDP0vNnxk8un0MXK/cYGJScwdSJJMlH0xcrntxF263ATGIeB9uCFdwVxj7x/iGj0XcFJ3U7vrIaTGeRfRpYVBbCpTJvy3h4iWslEp13jW5teU= 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=lyNHfgLw; arc=fail smtp.client-ip=40.93.196.69 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="lyNHfgLw" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=ujHYx7AdMdqoWlnpkwJ8zfTOjkKH+vpaA8EDZET41JYCFwAt64aPr3kyS6/hbLEFW6gEIH3dhg85Sftzzl6EblSViRK8Q6+QBqDCkBO5pOQooXjEh+W0S7t94BykucPtqI7+rJT/xxXD9qcx2XzGgjcMiJYKATWAC9i9mGM6VxUQA9jCv8rxjj2EvpwZHOdR+qRmkpnzPZXf7ODIAxHic2jPc9CIMIjAGo0gLrti6sPj/yahfzDeoc56a7eUau1e/jQeCYY5VjeYRsPILAN8fStOlbSkR7gfmG2J8vp2wgSF3CldTghPje5tfEB0iKfxkAPcMP1XJ16wvDqoL5tEMg== 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=Xv5pOP+VTEq7/R9/9/kUBDTjhtB3F+904NSzGY/ZaMc=; b=xRMcHOdDLkthHMurm0icecPL+I/sd6cWn3IhfAb6u0z1XvDBm5UyPWmxTH+YGp26eHfEbpdept8kkus1duBtVt+k59Ul37PvD8z7SOXA6XjSjHFOAiBak+nRNEHEWyL6h8Jtkns9uR8ed9WZj5gl49CHa5W/Xlr7rUwOSNARBZ20dWBmAHwLRtAqbr59mMxeGIeqROwXr/cVVBmeA964RuFeN+jjVxaPw1sngXRhsDXjHHpcvRpkmf+t4WJtIuKOme+cBwp8bsf76BWF7ou9kIfA4ksHK8UZn9r2tLXHtOc8hEpAKwcW0Cmu3GpmAa/8Q5KvjTKPBk7oXZ92Cz5j5g== 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=Xv5pOP+VTEq7/R9/9/kUBDTjhtB3F+904NSzGY/ZaMc=; b=lyNHfgLw9VD/9XTpdFpfXEMzTe7I3lFKlb8krdqh7OIUUk8iAmtkcndeZ5CdTkuEJr/bBgiXGrku5PI/rkgQ1huV1P21WYTg6DZrsvPNpq0ikqGxNApK/MygsV9vDV7VVVlOwwKRD9CQLJ6+hOQcJh+iRfg/hqyITl/h+8wWRZ76HQ1sl91KHoggcBlkZeWFYmqGgNZP5dbyOVmdJM3KMsmB62scUN/2Yujln10R/wy7n2GPF9H0tMU20pHC8Zy5OKs7MNecxxfEnpqSdS5xBor3I3Kj1Ode9lgMzGBUPl2st2daZk+bbTcT8Azprkyb3SINAQU9PwkXj7Rgi4pdUA== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nvidia.com; Received: from DS0PR12MB8786.namprd12.prod.outlook.com (2603:10b6:8:149::17) by IA1PR12MB8408.namprd12.prod.outlook.com (2603:10b6:208:3db::13) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9632.21; Sun, 22 Feb 2026 17:49:54 +0000 Received: from DS0PR12MB8786.namprd12.prod.outlook.com ([fe80::cd1a:bacf:6ab9:6f91]) by DS0PR12MB8786.namprd12.prod.outlook.com ([fe80::cd1a:bacf:6ab9:6f91%3]) with mapi id 15.20.9632.017; Sun, 22 Feb 2026 17:49:54 +0000 Date: Sun, 22 Feb 2026 12:49:51 -0500 From: Yury Norov To: "Yury Norov (NVIDIA)" Cc: Ingo Molnar , Thomas Gleixner , Borislav Petkov , Dave Hansen , "H. Peter Anvin" , Rasmus Villemoes , Andrew Morton , "Peter Zijlstra (Intel)" , Ilpo =?iso-8859-1?Q?J=E4rvinen?= , Tony Luck , "Xin Li (Intel)" , "Chang S. Bae" , x86@kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v2 0/2] x86/topology: add bitmap_weight_from() and use it in topo_unit_count() Message-ID: References: <20251222191140.380498-1-yury.norov@gmail.com> Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20251222191140.380498-1-yury.norov@gmail.com> X-ClientProxiedBy: BN0PR08CA0001.namprd08.prod.outlook.com (2603:10b6:408:142::6) To DS0PR12MB8786.namprd12.prod.outlook.com (2603:10b6:8:149::17) 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: DS0PR12MB8786:EE_|IA1PR12MB8408:EE_ X-MS-Office365-Filtering-Correlation-Id: 756d90cd-74ab-4922-dac2-08de723ac8f2 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|10070799003|1800799024|7416014|376014|366016|7053199007; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?ymuPn0Ryt0YF/ooyx7YYPs1EdMRGnwqcssFgJJ0fdCG+7VAK2B0PJ02WQu9U?= =?us-ascii?Q?sIPmc3Ynxp5/E6DfAZzja7HxGt/IqEKVFs6UPpehH8HZrUxeYWLkjXiphHmW?= =?us-ascii?Q?vdbAwEvAyxaN0xg7s1GlNVte53ok2g/XPhGgaBX1kWSJn5WqFsxAqCdv8wPt?= =?us-ascii?Q?Ujm0EEA+VYyu71XdZZgKxbZSZFqdvp0DWVqfPdxVMOh3ia3TNh7CYrVmQWdI?= =?us-ascii?Q?Q2fHQw2jzXVRaSzQmbn5IA4zb78Z9EfIABMRWzwIA1Jf4vm1a5bPOe/cXusC?= =?us-ascii?Q?kIp+d8CgdMvf98l+WJIoDnWAEhqI7J5+rHgy+VLNFJqM4FZAFVa954XNgqBn?= =?us-ascii?Q?Qtgqcyh1SsEBNk2LssXbFBKwOv3C8KbI01+DG+2OJsORKMiidC5RLMzP2TjX?= =?us-ascii?Q?uziwxRSCfKsdQks/Om+mIfh4p8K2GEz7KmsTdEqVv2x1W7ScDYJ1oL95z+3U?= =?us-ascii?Q?xk7T/OVtuUv/a8bgdmOZkK2HlaT/Ro9AahmlLcesKPzHMf4aH3LsQlv1O7IY?= =?us-ascii?Q?Osxq6oapsgGwJd8AksrSn4PLF7VnNkt4/HMFulv3aobHhLUCnCFG5llAdYG9?= =?us-ascii?Q?O1wMa9ktrZLr8QBrnznc1C6mYFQj8Dsdd/S8VJlDOHCoqMQtmDnFTqIp6srE?= =?us-ascii?Q?8htAQ9wy3jZYaskJG9VA27ffEQXe+06FP1WIk/b3gs/RmY6HJzHJyHpUyZ31?= =?us-ascii?Q?gVD1GeVFa3Hxn5rQ9WOPqyMRzQ8rtBtQwnwabdhk5D+Sh6sGx63IK8+5Nn5E?= =?us-ascii?Q?NMth/w7+hyMIPMRWZEUtQ1loHxFv5gMZLedF/3/Ak0uMeLVcVh7ozNO/XHqS?= =?us-ascii?Q?kZ+T27BjwRMipJ4NeQOo8tDAb7IinWhSr0DuxBjPoQR/1fjrxAWnlLmIZyVg?= =?us-ascii?Q?QEsybfTfOmuk5jS+qFNjXFdf9q2pin2VrKwljEWDUKSMr+SA+NO3rRGrq9VP?= =?us-ascii?Q?BrY1zYY8x5Fa11z+Y21NE1spnh45QhTzHiVI1nD/MfrydLefcUzPXjFFnUDk?= =?us-ascii?Q?SmHpfM1piFZLoGsQxrrH2LD12SSWvQviwEVhO3dkLekOtr8Q03HACliM7Zz9?= =?us-ascii?Q?xGj7Pe3ysDuU4gqmLD7Cs15MHTYFt5M4TmKf3pH4SWU/HBPQ+5U66tmSf0fZ?= =?us-ascii?Q?xvnUfyWSIN7pYX7JE4DZ1JWoaRnyHBPKIspSp83R9CZdX+4yDuMhXuu8qnu1?= =?us-ascii?Q?iWqMfw8SoCh+d6UFhMNpOese/AlEeLivOZOwB526fbczaHLFFQlsgetq/0Tj?= =?us-ascii?Q?N6tbm2Msb4ciipQTAbRXXHWDS7fVPB9KHxZTP1L5K25fUb9sbB59K50atCa5?= =?us-ascii?Q?uYECt4MFmXisA+k2+TBfLCKLVXqJU5OUFOry22GQ4Z+OllJjx6ZK59xW1vUh?= =?us-ascii?Q?EO4EouZ76/7dW66JEWCBQfbKvnByRFY7fnYcocgNxY7BDn08GB0EUskiEYQg?= =?us-ascii?Q?HqYC41+jspCaWVvfs4JpEzYnQNcqaNQDvWaC2+T1EGnvyWuC2hB1SyL7ffHf?= =?us-ascii?Q?5CaQw0LbxOpxvhevBPpWG/SxxfbRzvtLF21FSPm60xOUYGpNvTxk9V3AfbIx?= =?us-ascii?Q?YhBJFCAhJdgg14qNsyo=3D?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS0PR12MB8786.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(10070799003)(1800799024)(7416014)(376014)(366016)(7053199007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?q/skn3rEAa3a8rUfLcNh0o9zB/ca2bxxRKB9A0dTDQeN3h5jCZCT1G3JvgfL?= =?us-ascii?Q?VzrAe6VtbdAA9vE8siGx4Zu7AQXpREpgpEhNIi55ebQ6k6IgH0HjxeL6Y99y?= =?us-ascii?Q?nMkUC694E4cZemCMZg1sUrpUuCKg39VoWU0CMHksNLo97sSpNFlN9qncdlHz?= =?us-ascii?Q?jbpoXQx1v7EirNa41SPGOUoUXqW3joIUdheSHQyMoNotNClsdk3kdDvWkVo/?= =?us-ascii?Q?aKb6wyF7IHiBoVU1mpJ4e8sbdU9pAPkvBxXg53zjhwI25q/g9kJl0cwc4wUg?= =?us-ascii?Q?nv8Sy7WBsn83SFeHphVzq042tT9G9HwfVZq1kafuX/vuKHXz/aNhLjHAbdKA?= =?us-ascii?Q?+lQMd7+j0uRmbnjVS7NmQ6MsoewxW/T/A4SrEPB93AyQ2swJ08g6UuFbw3A4?= =?us-ascii?Q?rtLkLhrzUnyKCT33vxnusowYb/rcQQURjhoT5M4/Rh1jwGi126HE6nTUhyxT?= =?us-ascii?Q?Qibuvbqe/Wz3iOH6sX50xFXdmgvmt/2inMjbWMjzq5FMJruPqT6bODfkS32b?= =?us-ascii?Q?CBJhB8Ni27K85UUTzbbWXNgxdor/9tDMzhRLtCbR1qOjZ5pc3j82rF8Ucnfq?= =?us-ascii?Q?1rYlpJhSSqQmfT3CKksxFISvM2NzLZxBjvxKBd7lKdYIR4Wgy1Mtbh0RgKfs?= =?us-ascii?Q?f2ZvRuIRptV/PNrnCc5XtHLE/UVcAd41NrjOYKrAjhzuPz5sby/9lfYWcIau?= =?us-ascii?Q?lSAA2Fw5aRE+xML+1fnnEP4OWO25oU915SaLMFPeXqeYzkYTIf6Rkgphik4i?= =?us-ascii?Q?YlDy7WepKd1BtFkqB+PDL0dYxdM+Mhy+ot9CABVFA7/u2e+KKxLHVakaIQsZ?= =?us-ascii?Q?YHPBkXF8NoGfuV3i4nTsL2eOUcDApX8LKhAs+KpR8J2aYfc3YNSpkg+ozNZ+?= =?us-ascii?Q?nexigMohK2Cak8+A8oSWqkrcZkoJmjBgE1He9wTmk5ZPttHJJpK9tTlEhWJ7?= =?us-ascii?Q?saMOg83hmmRc2qznfSU3PuRAujnEnpReZuBiiS3qVx5ehuivE1lr4tEOa5le?= =?us-ascii?Q?DaXyG7sSMRFgWho29XOeb/2CbClHjc9AzXqo14kaLa2Wik656FIxOQ4Awy3/?= =?us-ascii?Q?/ZOn2fOBF9F8aUS1IfGIkGcGksA50hz8zW5jV7oeTP1EbpiliK79Tyd3IGPP?= =?us-ascii?Q?mmt3ei/AWUNqVve91/i7/MIOGTG5qGYIJYmHvllPdgrWBHQ8phd0Uiy2fvQS?= =?us-ascii?Q?LGfu0fQ4NS3U8HFM4Wd+556Sjmci1UjMvhenylHI7RfqSDADZmDTQ5cjLBpO?= =?us-ascii?Q?8UNqHzzWBaLjRCed7yFKtiK8zgfslVOwCsfW2M13cLcMAkyFPBOVU8FxMS+t?= =?us-ascii?Q?TxWGk6mQ3hJ39oMrdV+8HRwBGrFb+Z6bi1ZhRH4QBykVzGf4iF2orQo31z8N?= =?us-ascii?Q?6mXvKUaUYNzAdBSiyxtoWJdz2hOZOJEvDXFPvC/Q6J7Jhqj6YfjpdTy4wn5e?= =?us-ascii?Q?r83cclABLMX+pYYh08rPCFGWYGX/YYYQLKWASXE4J+Uu3mejS7JhxJZ0INbK?= =?us-ascii?Q?zzwwyRoRcUiKUgsRTwObpdQIJ0ELNiTzymF24lWWcP63KMpl1KvKd6rk/SPg?= =?us-ascii?Q?4fTM7h7atTdjQWJHWFdZENElQLN1T3cAkXcfsBOzfVz0RWKcUbNligNS1Xg1?= =?us-ascii?Q?cCnCE7uFQfMasINfCCfkJ/N1CF9rqRY/sQK6llXrXyrLjGKSUXQZlFMVxQlS?= =?us-ascii?Q?CWjFLgujOB8vUUFmxjO+ewlFUTi2uN1XFAu7JW5P/vrHY5Nx0ICCkbXwrRE8?= =?us-ascii?Q?o1NJEwCwA0IvvRnqwFTj9zljMWeINQ2w/BUBIdIahrl/DXibjysb?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: 756d90cd-74ab-4922-dac2-08de723ac8f2 X-MS-Exchange-CrossTenant-AuthSource: DS0PR12MB8786.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Feb 2026 17:49:54.1433 (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: UYi9bCinvsbImph9elGbLnHqMXfc84Rl75K39BoGP6tua+2JKO97OZdEeKbeXRZZ69QHo2Lo5377+dUDdiPBbA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: IA1PR12MB8408 Ping? On Mon, Dec 22, 2025 at 02:11:36PM -0500, Yury Norov (NVIDIA) wrote: > Currently the function open-codes the missing bitmap_weight_from() with > a for-loop, which is known to be less effective. Add the helper and > switch topo_unit_count() to using it. > > v1: https://lore.kernel.org/all/20251214235437.244125-1-yury.norov@gmail.com/ > v2: > - rename 'nbits' to 'end' (Ingo); > - leverage bitmap_weight() in inline implementation; > - drop outline implementation; > - don't handle 'start >= end' case explititly, leave it to user. > > Yury Norov (NVIDIA) (2): > bitmap: add bitmap_weight_from() > x86/topology: use bitmap_weight_from() > > arch/x86/kernel/cpu/topology.c | 8 ++------ > include/linux/bitmap.h | 30 ++++++++++++++++++++++++++++++ > lib/test_bitmap.c | 26 ++++++++++++++++++++++++++ > 3 files changed, 58 insertions(+), 6 deletions(-) > > -- > 2.43.0