From nobody Sun Feb 8 09:32:57 2026 Received: from PH7PR06CU001.outbound.protection.outlook.com (mail-westus3azon11010047.outbound.protection.outlook.com [52.101.201.47]) (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 494E92E54DE; Wed, 14 Jan 2026 17:22:27 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.201.47 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768411352; cv=fail; b=N4KqwlD6dDsSIrOv05hEP/uH7DJm7oNXGa68R/R3KLWtVBYNk3SpyHZWSJ6crozlYgk1UFAmOTXSDuzGu5aQ/dPdYxWp44eV5d2GePsOC5z/gv0Vu0gLJ5G9lc4Ly40p7RPcKktKV0l83YTy0tmSkll4zbZJSmANkLBvIgxEe+A= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768411352; c=relaxed/simple; bh=rxj7QXRyCUwW8m0spoXwbMU/8sO/0Bn8B8wi9WBLEug=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=hICX2XD0k76KxZ827WoayxHixM89Rkq6dztSNqzv+vBG6Qxk2YUAv8AoMll9O2X/XOjG6eKL0jbxcibG4z0oXnx09sssaZqRv5SAY8wfT/aBPOWAOR3o/SK9M10nxvu4pGkaTObl1HYKPh1uVCL8yrYmAQ53RObmKC52piDKPmY= 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=DZCRjem6; arc=fail smtp.client-ip=52.101.201.47 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="DZCRjem6" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=FMzux0FVQ/JYIIZM/9GlbnzTT8uBtqTw5LrNbm7AKynoS9ZefkF0eWY6AohJOTOSPm7SfcUJrSFQQHSfG9Q9fPk+JM/CUXsvuGiabHBLHw/frbW82bk3u+kSZSCcS3PCFtIRDM/3ZBlzJvvuMbDk00ti3/zKN40PYlNoxo1opDKN7fKpvx0CjpFJGDNJ5xHrnrKPHUam7WIoNqrO6ETP+mglbWcQLzOf23org50oy+HMQf8oH0eXNXAwD908QPxlMvtPgzaObq8Jbe7jOLUIhCOUeh6+B5O9/5VdjXEGntJfIXzNSYUriFDXzTnkB2g08wgAaDZCRpOhzguTh+5JhA== 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=6wGb+7iE7BFky/1tmbVHouPmTdJ7Yp/2EIGUT4ugu90=; b=V/L1GLtX0UgOCZpKfgda8REpzqJAA8mpIwYTpjcsEUdyqtmiwgdPUM5M0gzm/npmWxSseiWm60g+i81FwMNUjisEDUczw968Jm0LGO6Q3Vx6CpH5FI6eClxnSuIOxjTlDD1B0H1aCh7NYQENZtLj802EYA55gExziTZDR77blOJoD4BVB5Rk0WtFmmL1kM5p+hp3AKA+ntpq7JZoPLQAD8cB2gOLvUIzvnTLbwqziSEhS5UHtAptW4bYOR5PaDLvZo/qjYFfHIKHc4sWaEjO+Yt2aY0aCWEGJ3sESYvNJQfVWGxu36lNZ05B32Cu7Qaj+vVexS2iD/pziXezz7dAJA== 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=6wGb+7iE7BFky/1tmbVHouPmTdJ7Yp/2EIGUT4ugu90=; b=DZCRjem6lmhZQj1z2bF/+BsWb5swg9Pn8OWzt9DsPBG0i0qZQSdtMCK+IOKo2wD/sole8jwqLf0oQ8RzyRGtbh9KEj7uiFvUEnR6ddw15LGqhaEXGPz6ck7PtZDdaFP+HWrd1gScmVph2BZiXMdUYr6qWFcOxtLwjCe4ptBTe38UYt+eqpaU01LlaVUKgQSi4SDTlilAKy6mRou8vNLhj3zuQ4qHqRPZycfUirorC1xEdzXbKJ+uy0Rc43e49niTFEnZMTOiRo1J15D2ZHTYg/HHoUv6Web2Cp342HCXHfDR1i0qMSkVsuVDnqoO4eKNUeS8NR+EFsfydOnKMb+Nag== 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 SA0PR12MB7002.namprd12.prod.outlook.com (2603:10b6:806:2c0::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9520.5; Wed, 14 Jan 2026 17:22:23 +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.9520.003; Wed, 14 Jan 2026 17:22:22 +0000 From: Yury Norov To: Andrew Morton , Alistair Popple , Byungchul Park , David Hildenbrand , Gregory Price , Johannes Weiner , Joshua Hahn , "Liam R. Howlett" , Lorenzo Stoakes , Matthew Brost , Michal Hocko , =?UTF-8?q?Michal=20Koutn=C3=BD?= , Mike Rapoport , Rakie Kim , Suren Baghdasaryan , Tejun Heo , Vlastimil Babka , Waiman Long , Ying Huang , Zi Yan , cgroups@vger.kernel.org Cc: Yury Norov , Yury Norov , Rasmus Villemoes , linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: [PATCH 1/3] nodemask: propagate boolean for nodes_and{,not} Date: Wed, 14 Jan 2026 12:22:13 -0500 Message-ID: <20260114172217.861204-2-ynorov@nvidia.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260114172217.861204-1-ynorov@nvidia.com> References: <20260114172217.861204-1-ynorov@nvidia.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: BN9PR03CA0080.namprd03.prod.outlook.com (2603:10b6:408:fc::25) To PH0PR12MB8800.namprd12.prod.outlook.com (2603:10b6:510:26f::12) 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: PH0PR12MB8800:EE_|SA0PR12MB7002:EE_ X-MS-Office365-Filtering-Correlation-Id: fd38c74a-f6e8-4676-4e11-08de53917a5f X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|10070799003|366016|1800799024|7416014|376014|921020; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?hN7NGBJML5gohvyt++DtW25eBciM4nsixAKbELx6BIvI13aCqqdM3xXlJkJT?= =?us-ascii?Q?wgnlSJ7bwRzTa/pPAF5sTBY/hii1vMTWAm3VSKkx+6JUxDdMFc7ppSGiKapo?= =?us-ascii?Q?+i1+wyrrBvWHRTRsnr7FMw3NWXxQs0aDn6QDoNcYZH83IM2H5QjBg5PKDDLa?= =?us-ascii?Q?j5vuBh8iT1LMx2DjpiQV8N+Rx3sjD22VVs/1Y6CoFR9p4aVPu35y08m9cbIG?= =?us-ascii?Q?zIfeW8hElVcqUnSBHcqdw76U55yLRcPkMZT6YIMaNJdNKSdbBf60sd4jLTNj?= =?us-ascii?Q?8PxScMK4V1H9TJBpaQhwuGmoPn5RV82B1LunnxvEuJkIAiIGVnD5Wp0mtXVs?= =?us-ascii?Q?i/I2lKeuvEptdLmor840MQUjoa3w1jDgI/eSlz62d4iIQlMON1oV+FB83YIX?= =?us-ascii?Q?O2dwVJi63GoVQfh3mjweVNlnHYKZbCbW4psD/RXtzr0JmahvDX4MNmQTsmYZ?= =?us-ascii?Q?XbRtDYPrvB1eTQQPfeeDc6Rgyy+ZtE2lJYkT1tN4hbyfJliJ/5PcuUfhU3ae?= =?us-ascii?Q?dGTMB+Cyxg+mptDNzxkpcWfh9L41qw5h2uFWh+xYAfsn1roR4veULhfcJweL?= =?us-ascii?Q?Y8+1WxbXaxyuEZbCMUG6YpBuMHdgzu5JKffg92gPC/eASapfWiOZPXpRY3uU?= =?us-ascii?Q?v8tknsMru4or8MShRB5QwkpMQz9E91o3qzDuV3IRJetk0L/1cMRvVp5/EBJr?= =?us-ascii?Q?gpBuaGte3g0Nba9FxHUQMwrm9TtO94gBaye16M0fgZ9uazwKs37rdFu0Wo7e?= =?us-ascii?Q?nypEJOSGTJeRIy56GwrdIv/bqwDGjbX8edah+8CvE0ytJfiMnvsLyG6KpU1U?= =?us-ascii?Q?v4HiX3gGBaR7P/gaciHj4jAiIBnh5q1nueLwF8zVrN3I0CV/Qd20HgoAMn4m?= =?us-ascii?Q?+ErXNBylSoZVfcB54i6oLppfAqQ0SFdHU6IkZ/CTjvgeXnYi35swH/g/EM7B?= =?us-ascii?Q?Q3V9RP09stFSsH6h9EwYSfGN1qPk90A0Y+0OHSzRpsjcpFvrv0nGl3dFvKVp?= =?us-ascii?Q?MoYjTlNNy+2DhdrvTgnRuLnFpWXh8e5S6aheFP9NGxKt1zgqxYpJzt7wbzf9?= =?us-ascii?Q?+260T1ydy0qcXr5yDJbdxFgP6uW68CJt26Oa64pu9F09krcqLTyPYD2rrpe4?= =?us-ascii?Q?bWIgAY/ROAcrt4wRCn5RuBxrPtFGXCIcj0wC92GGKiB2IESWooGcAjhZJJ4f?= =?us-ascii?Q?GtsEOPUpy3L/mqspTwCVgIE06nx301N1xFP0CoHS+Lsdju8RNt8hmdmeFVTK?= =?us-ascii?Q?zOh/APhSZtyR3PRNKpGkri/0DHyAvhm3rZ94DDLIHt4YTYPFyLBMCX9BZZD3?= =?us-ascii?Q?GuLp36HBLkBcZ9cQ2ZIcJsSaZQD5W5EVq57Fbjljtm56StMYqM6DmtGWT72e?= =?us-ascii?Q?/69jG/fSi9ry6hyg5UozJe4QHlZ6YGeUPIMFrcLwxpNVTwAU3Q6euQpo8+ve?= =?us-ascii?Q?3BKPSuWlDF1MHhECTWs7TB4J+MkTlhPDybkwLljp4fScI0PFNOXBRvqElbyq?= =?us-ascii?Q?KT4eAyHt9VEUi/EFblwnhXOcn0n6YVPtBVr+mHRcS7GFBUOw28IheF6IzbCJ?= =?us-ascii?Q?OFZg/TmohgCGLph+G3tdTj4O6AvG/IFe3Kk1i11vvdiORYXA5r3RRo+OBz5b?= =?us-ascii?Q?xA=3D=3D?= 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)(10070799003)(366016)(1800799024)(7416014)(376014)(921020);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?K5+RqNhrtgsfPBSAQ1ZyvkPRyWlts1/uYSZRcplIBqYnXNzoBKtTosgZnnrI?= =?us-ascii?Q?/WocYSSODOJYpZcYPt+16KWv9mSVz4hyNLamHNiK7lIBboIXHUqx1FbG8OK9?= =?us-ascii?Q?vKBbvMW0Dd2fWwUKmjEvjDCAVuxOhCI+4/qNJBPca5Ps6gclctYlQew1p17a?= =?us-ascii?Q?g27GluOXtuxkvA2gY4TbCowh9MW0Z3qtsdN3j6A1K3p8ZmfEZGGVxqXFY93M?= =?us-ascii?Q?3gGHZx35BsdatGU7v+HyT82xIPWdtqJ7THRit17FYD9yqYYt7GK8QXjg85sC?= =?us-ascii?Q?lX+ksWeYkq/iv5Ba5/UGauMQfolqoy4V74tShS555PfV654O2RSbQxYAbZ29?= =?us-ascii?Q?pnYXNkCGtTgkoZJMI/7aVsZn6QnY/i7b0HOEvuhoI7nfGj61COS8Oihth7/u?= =?us-ascii?Q?V5P/o5F15T/057KsMM6SXB8qYLrPOtvhUA0VI1A7F1ijsh/weKOvP9uuvs38?= =?us-ascii?Q?pN1b6pDPsKIPGYpRAIFQ7x5d3Rgp3gaVhRC/cOZmohU+QmMPor3gU/yRpGpg?= =?us-ascii?Q?MaTWcNnjIbISr1l7PBgN/9JMynsXK7UqD2HzJsxf9S9HONEu03FAdUG1hHlN?= =?us-ascii?Q?40R17P5Q1EdcSpiLzkOKR+P1IG8fb7cYTyygZg6D1bo0WRaCShHRkoSdb5SM?= =?us-ascii?Q?ALy8xucgPAP/CUsytmjdONlUkqYXUu0qk3bxERz0MW+pQPlFsMuuxNuBR8rA?= =?us-ascii?Q?97SBgjWGE61N1NdZN2UJCMQ+W06j7GKc2NZ0cBhMNmVFZQATn3y5YiPejiW4?= =?us-ascii?Q?7tCB8LctUwmdFURi2SacHd79smbYcj1+rbWjU3nuL0D3BeZwtXv/jdqsNiEd?= =?us-ascii?Q?XolO7NTV4Y4lXiZ21kfBGkwvFPz65XsU3/nBbbEHLrFGWm2vqqa6ixMED5+y?= =?us-ascii?Q?E54nehaRL46QIjp/XmA9n20pNuympIveDuANSo/caPQTnYArCWNDsyXpcPtK?= =?us-ascii?Q?+Veo8zUhHZNuT4PXdum4Gd96t72+2+acPfxYqztHoUrAMd1O8oEV/4+PiCAs?= =?us-ascii?Q?GheienmknKY9df92iDtUIDDp0aI8eH0ZGV4iswojKfklH9Jci0zyP7yJ7e1A?= =?us-ascii?Q?QxRrQ4AgrEnyT75bLucegxBPZmxuTwYTyeuEfRFy3Ic2zyhRwktVMjKdBElT?= =?us-ascii?Q?7DMMrvFtuUhAWGhAGEFgw1cFt9snn+EPUDh2DraGBfZFjVll2Euyc5ehiTDN?= =?us-ascii?Q?hRT8id20N6X8zrUn1iPpUoJmqf37r/jRmETaQWxgFCsDuey6wetiKzBlgM/H?= =?us-ascii?Q?DCXFHMnd/mF2dx8qn3Z/A2LfyH19QKxChvBdegWzONPZ0KgDoFT3p+9oXu7i?= =?us-ascii?Q?6pZYDDC39cMARKCHN6XKUCA7NC8RrOIGfCciRI9mOY5M7KT7hpGQI9m5otNP?= =?us-ascii?Q?RqD/c0UcXEUY8RBli+cl1kdFD3ZgdHIg6rbBZSK/+ix119bQaYAZYIOBKx86?= =?us-ascii?Q?WKXPrYGL8fNtRCCNAbd9r7wTZl9SkOGgPALcKKPYDzzy30UID01zXnWoiM08?= =?us-ascii?Q?g6PuhDSRPtokqKxY9czOyhqRO5cSxLVzhxVUYRN6Aw0vdflW9hVPMBpyF0j3?= =?us-ascii?Q?BzkZUZNlp7RV/EEVVIcq4+loxwdbSiGBtSpjs6Um7gh8T3IDUyipQIJSaPoC?= =?us-ascii?Q?OCbuWzSGH8ChWsAMqDYctsnwcO/4Q+oMNplkHyVr6m3jcVWgucvhWsEunqZu?= =?us-ascii?Q?erbkS/PT4q8AeX97Zobf4L8dtVZyYmoyXu1AHAUGx9ZJlPycmtm7e7dB2RW8?= =?us-ascii?Q?whZ9hB1ICBZDt9WPKlmskuZgfWVH+YOxYwlkjTLshfCB+KCmoPaa?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: fd38c74a-f6e8-4676-4e11-08de53917a5f X-MS-Exchange-CrossTenant-AuthSource: PH0PR12MB8800.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Jan 2026 17:22:22.3386 (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: Rvdll/HsjZP1LQb8mL4EAT8F4nkk8DYCEyUPO3kMHxeijwA+WTu3uKGgB6TupBFeAn/a4IwXe/sO7qbe6S7GlQ== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA0PR12MB7002 Content-Type: text/plain; charset="utf-8" Bitmap functions bitmap_and{,not} return boolean depending on emptiness of the result bitmap. The corresponding nodemask helpers ignore the returned value. Propagate the underlying bitmaps result to nodemasks users, as it simplifies user code. Signed-off-by: Yury Norov Reviewed-by: David Hildenbrand (Red Hat) Reviewed-by: Gregory Price Reviewed-by: Joshua Hahn --- include/linux/nodemask.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/include/linux/nodemask.h b/include/linux/nodemask.h index bd38648c998d..204c92462f3c 100644 --- a/include/linux/nodemask.h +++ b/include/linux/nodemask.h @@ -157,10 +157,10 @@ static __always_inline bool __node_test_and_set(int n= ode, nodemask_t *addr) =20 #define nodes_and(dst, src1, src2) \ __nodes_and(&(dst), &(src1), &(src2), MAX_NUMNODES) -static __always_inline void __nodes_and(nodemask_t *dstp, const nodemask_t= *src1p, +static __always_inline bool __nodes_and(nodemask_t *dstp, const nodemask_t= *src1p, const nodemask_t *src2p, unsigned int nbits) { - bitmap_and(dstp->bits, src1p->bits, src2p->bits, nbits); + return bitmap_and(dstp->bits, src1p->bits, src2p->bits, nbits); } =20 #define nodes_or(dst, src1, src2) \ @@ -181,10 +181,10 @@ static __always_inline void __nodes_xor(nodemask_t *d= stp, const nodemask_t *src1 =20 #define nodes_andnot(dst, src1, src2) \ __nodes_andnot(&(dst), &(src1), &(src2), MAX_NUMNODES) -static __always_inline void __nodes_andnot(nodemask_t *dstp, const nodemas= k_t *src1p, +static __always_inline bool __nodes_andnot(nodemask_t *dstp, const nodemas= k_t *src1p, const nodemask_t *src2p, unsigned int nbits) { - bitmap_andnot(dstp->bits, src1p->bits, src2p->bits, nbits); + return bitmap_andnot(dstp->bits, src1p->bits, src2p->bits, nbits); } =20 #define nodes_copy(dst, src) __nodes_copy(&(dst), &(src), MAX_NUMNODES) --=20 2.43.0 From nobody Sun Feb 8 09:32:57 2026 Received: from DM5PR21CU001.outbound.protection.outlook.com (mail-centralusazon11011015.outbound.protection.outlook.com [52.101.62.15]) (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 C74C82D8773; Wed, 14 Jan 2026 17:22:29 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=52.101.62.15 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768411351; cv=fail; b=SayPfxbHxQ0UrWE1IxSWo7nsLOHc0uyALNr12Sk86mcIRRK5m5OmE23pIxscDO2hXbsEfTf3YtEEjrHQmiXd4jUlgzXr2hSQPmixC99zVXHJaXaIXc7LqDaF720pI19OjFj/VKJ2kGPH6Neb4KgvxtN2sM1ghiIRUxZdTe0QR3w= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768411351; c=relaxed/simple; bh=CLLEItyHx2aMPp407K9oO1v/K6BV4KUgVC4qE5qeIVc=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=nTfSmJPtZ6Sy3SZqEJ0wMR5tXAS3W9eZmMMjIwK8A+ruKqLSZs25OrGT1BwlZhV6EnTeeu54rA67o2538sfP7YAHRzkx7s09oaJet7pGxQqNA0ZvOm7mqaj+atqrspR307iZbM3qe8b6Q4EGHNUNCQCZG8CgktrGqHljIPeXMks= 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=g8mgZCQ8; arc=fail smtp.client-ip=52.101.62.15 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="g8mgZCQ8" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=M6LYlHqO5m6zhaIxImaz1MUnJLtAIy1D3Y9WDNzu7MzsP7mxkbUO5Kfptykqg3N0ItkSxeJhUDNNjbK3Vcs3eJoukuZ6zYZY9tkTWU+Ak1A+OCZd8LDhvP8hk0ApssTEOYcUfd2AQaap/Mo3r5JRKZrL4IhJhhXKDOmsLRPvQp0629BgkN6aub0uN7cGaQmGP+1859S3rucGhohaOpSWymubXSV15pwXOksUE9C1DY1fz8s0PR/VQD1r6Lb69eyyre2pW8wfaxrT6f4Nducopjq6vtmBK65X/zmlgxqYwEOGT4FaU+YtRS+gimYscwpRn5wm+EYoax8KGc+P8FbjCg== 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=/ZgACuKl9vE4tSYzYVccCS84u8QEBci4DZNnybR1/rA=; b=T96rghRUXd8OvaESE4NehIMl1CToVli9KP1UOynF/O85Rew7dxMC00P0AcaBlOsCe53F/VadSwK4qCVCw68OGWa5eNm1xWd33/dxuPwaztdsEF3PMdqwkN+Y3TiE4dD0idJ9Rqq/ARKWST7Fy/8GD2CljN25lwY6ToIEi9oGUM34u9H+CxY6BfLF6AxgmHHp2/KPWJaVlwoyOhoQrVE0ySUSofWw2EAwuXkJy8B9+Pa8la2pBoge2G/uYbKyl5fqAZIKMm/0rgpVUZBdZjRoRt50o10HD68xeXB94j/dddjBb65yvLYnPVJ3NJ4Ix44tlUJKs/hkvDESz29gvarUsg== 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=/ZgACuKl9vE4tSYzYVccCS84u8QEBci4DZNnybR1/rA=; b=g8mgZCQ8863Vc36n0vMtYiqJsPrprLx47F83p1+WoNaTC+2uXAZdMOznyd51tBW07NoGNUuRRS6BT5TgoV0/Mk30w+nmZiomU6bERwiKjPWS4g/dJUjnOVncwm9dn0+TtMWiw6J+YBWwA9jdGRc92UjFPbU4y+Y78RxYPs7oZgY7GlGyP016iMmCgN7p3JIg3z2PevCN3dZ3qDREhft8Ewzd4+GMwEZfipbU6JNRFbsdDA3LYCw4SgANyOSbPMNBZdkszm3KBoi2YPNgXQ1rL4xRwMDnODHCnTJ/Esp8QC+MlVwFWnYjJZPcO0TEzw9CA7FYgUQhyj4CtHetRe+BXg== 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 SJ5PPFDDE56F72B.namprd12.prod.outlook.com (2603:10b6:a0f:fc02::9a5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9499.7; Wed, 14 Jan 2026 17:22:24 +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.9520.003; Wed, 14 Jan 2026 17:22:24 +0000 From: Yury Norov To: Andrew Morton , Alistair Popple , Byungchul Park , David Hildenbrand , Gregory Price , Johannes Weiner , Joshua Hahn , "Liam R. Howlett" , Lorenzo Stoakes , Matthew Brost , Michal Hocko , =?UTF-8?q?Michal=20Koutn=C3=BD?= , Mike Rapoport , Rakie Kim , Suren Baghdasaryan , Tejun Heo , Vlastimil Babka , Waiman Long , Ying Huang , Zi Yan , cgroups@vger.kernel.org Cc: Yury Norov , Yury Norov , Rasmus Villemoes , linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: [PATCH 2/3] mm: use nodes_and() return value to simplify client code Date: Wed, 14 Jan 2026 12:22:14 -0500 Message-ID: <20260114172217.861204-3-ynorov@nvidia.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260114172217.861204-1-ynorov@nvidia.com> References: <20260114172217.861204-1-ynorov@nvidia.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: BN0PR03CA0047.namprd03.prod.outlook.com (2603:10b6:408:e7::22) To PH0PR12MB8800.namprd12.prod.outlook.com (2603:10b6:510:26f::12) 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: PH0PR12MB8800:EE_|SJ5PPFDDE56F72B:EE_ X-MS-Office365-Filtering-Correlation-Id: 4c9333be-7ecf-4d25-5751-08de53917bb9 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|366016|10070799003|7416014|376014|921020; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?IOWIZDGa5NTkZdzz9u8ccr+Yj4ByXhmLAJKxWuK6EJVppSE4mQgS6NlttLkB?= =?us-ascii?Q?hUQn+Gmoxtdkeh5tlm2TUg3IItDEwpX+rHTC+nrmJAilY/9aCsystjg1k3T7?= =?us-ascii?Q?APkkzhEJlekRM6RpcWmrXVY1Hb9Ja86Z+2OGJ1y0FXfbjYlHlUUOpeyMfMA1?= =?us-ascii?Q?eESMbRh32UEUc2B0P7FxXdWNYNSU70i0D6sz4dNFb9KXAhcMwHMurE2C6P/G?= =?us-ascii?Q?zyNTe38A1Ba16yNPr9F3NTfRJBCFcxk14pwfJb0WJpTWJaFTSqFikQBK4DuI?= =?us-ascii?Q?DgBA8HKA7JV/0yi2QBxvFtGc/GqiMSPk9o3n5YVSw0QwA0TzszsQ1q5OSTDv?= =?us-ascii?Q?bzt3e9GrbSlu/sEwNHzCzHMsTvocANcViUg0A4Zh7NcMmumNIySzy0VaDtRZ?= =?us-ascii?Q?D294NEYeaebLB5d9JwQbgP7WEnEZuVe9wO/VrgPFMUJ9/4yFIIMCFCwRKTaL?= =?us-ascii?Q?LGZYugohMxDcV9gNUHrHePZTVsh3kWdtwaQlFH9lXZEsDqs/7dgF6Uy+HsXE?= =?us-ascii?Q?GsfkKHw/GRMakjHy7UVMsniS4WtRiT9vteSspqp0o8FK5LJpfuPM7CMLSQ/B?= =?us-ascii?Q?SiZEJJA9v1hYRDFRiHDUFRJ7RKqqQo+PLOGwWXLgU5Q5Rcqh7MZTccCZccf+?= =?us-ascii?Q?mLG8Y1Nx9KIVIgbAE+SLY3ggmPJWYxht5W9CH052aa712dVpZAmWfAeUOWWr?= =?us-ascii?Q?UEwx3ssIf/0Mxg4a1LFmyccyQa2SGGS2L9GCVQ5cH2jpmkf/D5IgZxeP9peU?= =?us-ascii?Q?KAQ8mva1xjT2+xINLRLogmp12CjdTSX7Ypg3uIffAZrepLD73QgWDFhFV+Jq?= =?us-ascii?Q?og0R1MB92dr0tIatkrlXwnKsanQUY3s5xCaZK/rMbMjjypeioVV5EhAi1AG6?= =?us-ascii?Q?VZLYO3Roo0nQSP30t/dOQos2vDvh7us/QhWJTsp6UJ/dNoFGZASDep9l046C?= =?us-ascii?Q?ibv/wGJISJ2e3ykye/A8UPdGhdvkuCSUyyAHvz3u+5Sbf6d/1/R956TnEwLs?= =?us-ascii?Q?N86zxinvaTYcwd+8lRbtMb2Fs08vPmTFji5yoVkCYvJ/t+kkcezPBTMz9mcE?= =?us-ascii?Q?tixcRhxISdhGslrDL4YoCH3zbv9iXBn3UBBzSFK72j1R+EqVXweZdW91ZScv?= =?us-ascii?Q?yVjIVvtCHzHgLCGftU+KA00eeli3i9Yy2pFeF/BTER1WRk92JhZfUAm1mzj+?= =?us-ascii?Q?XXHwLcR1b/YWE+wYZRN47WUVhnrGellgTUDoNnK/qgr5e6aS7iJD4a+RyPI1?= =?us-ascii?Q?PYreZ4ssBFe3l2bpGZjrA1ANMAg7r7wO5WDwEeIu0R7TEtUMdFvCnJLufigA?= =?us-ascii?Q?itG4SqdXJ2O3+xcS4NZ2KcQm4A1nWJAMmj0Elf6BGoECq0jELK+BptxwHtwV?= =?us-ascii?Q?Uwd3p8wzf2XQ+3+yhWkVT53F8rI8pOdC9tIwFpfzfgVcoZjE9oFzhByxCjBb?= =?us-ascii?Q?dm32OXHS3J7Rt27ejIj0D4apZ8eS15L8rwtdEW1Th5goJX4ApdWsObL3jSNw?= =?us-ascii?Q?YB9hDsalVorsr9vB3PVUYUf/9bxqWthJ8TEfWEAWgXw2AZTYSXvFS9uG/7VW?= =?us-ascii?Q?3nh+0+LfXOUwHhdn/TmEK/u5ga2mRxW1EgBAC0XEInrdbWBtXGOTUkbWjW/c?= =?us-ascii?Q?Hg=3D=3D?= 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)(1800799024)(366016)(10070799003)(7416014)(376014)(921020);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?vB/7NwnyNaXnkl638OUzAH2SQcePaIymGpFX2bcKYrBttTtQeSNEkwGSRFKp?= =?us-ascii?Q?3OhqSJH0rI0QSeIUtpqH60+wCNuNDyt7jULIeNCWx3kUdHjA4UC6PF2oScm2?= =?us-ascii?Q?Rgn7UyLXvSvyLy+9xh1rSTNFzikUD/GFHgXOWyLGjGaUFE4vmPVOKjREl4Fy?= =?us-ascii?Q?CM7kXdJu2alVCrBi3BdwHmbz4YSpux4YsjcLtCdtWD6dZtGR1vSLPUgNQCri?= =?us-ascii?Q?K3IFj165JK1q0M3eQd5pXgiLnUewQ+ckgF7cS4W1HWEDmIkTlyvyz+AqHKcF?= =?us-ascii?Q?+WVB3IpeBD4fcb/qK/MpYK10uZkAddTmIJFB731EbL2P3MXeVX7HG7KNKftl?= =?us-ascii?Q?fNPVxqI1r9Hbfn7/JW2L1ckJYTIOIQeZDcHA+GByeBN6pMEv7moSDhrlZwBT?= =?us-ascii?Q?1SaGTmQUnzOWeAo7Vvc2U++UwNhdvZoSkuYg6YYvlzuQR0glQ3F5TD11GAOb?= =?us-ascii?Q?waDO0uUEVwcAC9hrCVd8czT/WAhk3DQHzMhf0q1fy/PbkrEV34Z3NWXKXRTa?= =?us-ascii?Q?CJOmIzneRhZ1dWRO90LG+X77/wqxvDNvA20xacPL6wJHwtjRns5YcJ/aum6W?= =?us-ascii?Q?Wl2R2Edm9Kq4R7lf3mb2PARuoNWU3hd+5ksDYqG1XeDFxVY2LQhpJ7GNauG9?= =?us-ascii?Q?RD2bq6IQuTD9+wA7WPlfpvXnfIPmxU3mVqqKyC4ikrxWkPQj95NeUeZniDAV?= =?us-ascii?Q?Q1rFTurcbxJTkPjBmmBj/I6BmP2vQ0LqxSv9Zwjg+obS2pwidrUyw6JZHCe3?= =?us-ascii?Q?Bm8wg+mNT5o6vidjnj0GiajVdCb9yRey5EFnYNUr4J16htvXNlqxylNa5bCx?= =?us-ascii?Q?od3g33p/oWee9Gacne47aMh17AsncqXKjGExDnTRrD5kw6bdc7Iy0bMXp+KL?= =?us-ascii?Q?BWVSuRNIDBZQCGpHC017LrggtZHUMc4ZLHYTpeLMxwOA6gYgTFwNmspmp5w5?= =?us-ascii?Q?4odXkDIv/EzMbLMO/6KagQ8wCr6+9fxHMk3XE6XRlX4GUB6gkR/wfXRew68y?= =?us-ascii?Q?GVJ8yuG+WMVurmWqGpykrNCGkPR3k5lRMkDIW0YPqoQYrQBUQpitKX7l77mr?= =?us-ascii?Q?zZuMhrEhWYf1Y070pkx4xsXNCI8iGPIjgOxB6uKsvYn1ElnuuQ0ePqI/AaPZ?= =?us-ascii?Q?P8OwFgcOMK7OzN7PIqqPPQJcfkLtXMcayzD9Kfbgj0TIeQLq9Y467fr4vjWy?= =?us-ascii?Q?ttNQam7Pne0jjeX+jEUBaHb+llwd47ancSvQmYNFa118S+KHX704jubj28Ch?= =?us-ascii?Q?oiXrbwZxGMgknNRLpIeFH7Y5B0g+r9OD6DKmSvkd13dYkOkp5lm/ttNXSl5n?= =?us-ascii?Q?KL+DxDMJ42lkAJs9NTabRbyjQJRqcpgq6CS+9DpYnmx+d4iAHIgr+ISfQYlN?= =?us-ascii?Q?1eRWzTy8ApZhxDTlvp2I+d5YKWSVZtiL9jh+9tBmsl1/e0UWB60zNyymhLBW?= =?us-ascii?Q?PivLAylu6sqaMOmJrQl2pMvagc6E1yqvA4y+UCOrlFojCdBMcrQppdJI8G4V?= =?us-ascii?Q?fpZ3jkSpr+NDdvKZSb3b//ZTt7r2867Fd4YdomVVeI5w+bOL+uGDzPFTXEEj?= =?us-ascii?Q?0+nueJL4tjOmw9LZI/buJA+pZ5rhR7Mi8Wrq+M7+PSB/3zcSEqHtjy/1ALLP?= =?us-ascii?Q?g9MndRUsWwMC6NpltuOdTgIcdythWQsRIrYswIElvGQZpXpIoTyakfL5Qs4S?= =?us-ascii?Q?hfLRZ/rVthgttnpv5nF1I0SIGf0sNLfekxv95/67A4nhj1Esp+zRa1ho9Oin?= =?us-ascii?Q?K0AvneW0nJwdJvc5NCI74ADmO7LcMoThH4eLhwWQfwThL5SbKjhJ?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: 4c9333be-7ecf-4d25-5751-08de53917bb9 X-MS-Exchange-CrossTenant-AuthSource: PH0PR12MB8800.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Jan 2026 17:22:24.5661 (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: Xyl0a6ysaNi6OVVLf17vriIZyjtARqyA7Ye8q04P6FkiEFRl57iN1CaeAycMbIzGxYFXFqTbMILrfmZjj1Uwkg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ5PPFDDE56F72B Content-Type: text/plain; charset="utf-8" establish_demotion_targets() and kernel_migrate_pages() call node_empty() immediately after calling nodes_and(). Now that nodes_and() return false if nodemask is empty, drop the latter. Signed-off-by: Yury Norov Acked-by: David Hildenbrand (Red Hat) Acked-by: Vlastimil Babka Reviewed-by: Gregory Price Reviewed-by: Joshua Hahn --- mm/memory-tiers.c | 3 +-- mm/mempolicy.c | 3 +-- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/mm/memory-tiers.c b/mm/memory-tiers.c index 864811fff409..2cbef49a587d 100644 --- a/mm/memory-tiers.c +++ b/mm/memory-tiers.c @@ -475,8 +475,7 @@ static void establish_demotion_targets(void) */ list_for_each_entry_reverse(memtier, &memory_tiers, list) { tier_nodes =3D get_memtier_nodemask(memtier); - nodes_and(tier_nodes, node_states[N_CPU], tier_nodes); - if (!nodes_empty(tier_nodes)) { + if (nodes_and(tier_nodes, node_states[N_CPU], tier_nodes)) { /* * abstract distance below the max value of this memtier * is considered toptier. diff --git a/mm/mempolicy.c b/mm/mempolicy.c index 68a98ba57882..92a0bf7619a2 100644 --- a/mm/mempolicy.c +++ b/mm/mempolicy.c @@ -1909,8 +1909,7 @@ static int kernel_migrate_pages(pid_t pid, unsigned l= ong maxnode, } =20 task_nodes =3D cpuset_mems_allowed(current); - nodes_and(*new, *new, task_nodes); - if (nodes_empty(*new)) + if (!nodes_and(*new, *new, task_nodes)) goto out_put; =20 err =3D security_task_movememory(task); --=20 2.43.0 From nobody Sun Feb 8 09:32:57 2026 Received: from SA9PR02CU001.outbound.protection.outlook.com (mail-southcentralusazon11013050.outbound.protection.outlook.com [40.93.196.50]) (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 8900E2DFA54; Wed, 14 Jan 2026 17:22:38 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.93.196.50 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768411359; cv=fail; b=r/Gu9Mh8sXcWznyESi0OElnQoB2Gvk8XSYQe1QZQICWOGcbizhAIdHBea7JDvIIovumwePcqTds0GE8eIPb1fTc0F/kk02LE1jfl6hWOU/9ikbKKEcrmmik0RSotxKKSvvB7wgP7TFQ1gf8KeAHbs0rnY9KcLwJXWFn4wH9Dhk4= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1768411359; c=relaxed/simple; bh=lgva61PGHlIM0viIdOzo1G/5wM8rozuyKoKKHhY3sw8=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: Content-Type:MIME-Version; b=b4/E7JIn8wGghY58OmXWz5Vdd73TDzXb4rTVVPy6ptgczGU9svz+VkIIIzJ2xShmrB6EgkchkTXtsOlljW3ZDQ9lv9ZbgjAeO5OboB4pUefrRJ60F1ROwiV2BJ/7+nGB+egpzl1afPjpt9rpnlJRHlYG3MInBSMEavFDD7jxuVE= 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=t5Y+jaug; arc=fail smtp.client-ip=40.93.196.50 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="t5Y+jaug" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=aWXvDXgIRHo7w7LA6ok8gbalQb+4BykphpPTBpSUgyfQt2OK4maSfWxrlGK8DpprXuHmMszYCW6+p/ihjptq1folwkW386ne4gMFzs66QoCV4zlAVL8cVPZ13CysDAWCAYaCjXNWTke015+k0GBH6zdpB/3NaoqONl5s/cy+rMc0/AUJ8vRjRDfzoOWT90JShuAI8vhXd8sNVl2WkLiZafomowQsYjoYQNAaoEyDsKxlcFjr2r3X3BZ7MduHc7ZxBIemX/zK3Tk9NmpD+85Pbxff2tb2jflsiXo4y0jDEAnhx7/pUEozjcc4y2eWtawBAAHx4AJuNmjHNBKP6xWTWg== 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=0vtuGYbXDGWw+lvnGnKqEi78jGFN2bwMihLEP0SH4IQ=; b=XuUQu2WBGyRRO9MeOqCioH89YSQuDUaowYUmE19U7/F3HrJBHDqeYQew6aHJ6eiyhHJrmsZF3/Mx4IE3Gp0kCZj/R8qtERnWgLMTKSFOFYmg7TR+gKXnJVcoYJm6RXTineumBlzaVe5s9mRQIDGnuB6Rnp5KQZ7Ztl0Qeei53I2RkZ1foijO0sXfuNAGXEAAmV8RcfHQqztWlFILVwyNBtpKu+KlIyp2BeA+WjTvaDqqI/QbbcCl9C8WBVzO+L0u9WiDIiYPCTEek2RerFGV8s9MegiJRt46XWkM59l5k2Ir0yCwX4CEtlkKhrptTWXaeFamHwthJyO/B4+4Fh6HqQ== 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=0vtuGYbXDGWw+lvnGnKqEi78jGFN2bwMihLEP0SH4IQ=; b=t5Y+jaug6gfRwEuOD251aZBU+DwQWrBG8+8FNkAHeFtcVUPO7x9bQhLuWtesx+iaKYD9S6ggznZvW0ESWGVhdG8Y/vuATxrMe0koVtmzCBhbfViNPSQmDR57NaYyoQCEstMn4elqF5TrF4pvlPWS3D8DbF4CEeCZ7Jg16Cpdkm70VJ0yWzIC7C0YZQYoY8S4WKWeB+5c9y+EPdp+XNLYdpZAxwD8NcrO4jD1B18eihwSDUewH67xop0I2GzxJx0E0TK6TiyT/O2Mbj/bnJP5xeKE08kZctlnKR3YxJVh/AG5NvozvxALnfHDfSSfTuWNMOU89ZhGI+uReRD0radMMQ== 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 SJ5PPFDDE56F72B.namprd12.prod.outlook.com (2603:10b6:a0f:fc02::9a5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9499.7; Wed, 14 Jan 2026 17:22:26 +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.9520.003; Wed, 14 Jan 2026 17:22:26 +0000 From: Yury Norov To: Andrew Morton , Alistair Popple , Byungchul Park , David Hildenbrand , Gregory Price , Johannes Weiner , Joshua Hahn , "Liam R. Howlett" , Lorenzo Stoakes , Matthew Brost , Michal Hocko , =?UTF-8?q?Michal=20Koutn=C3=BD?= , Mike Rapoport , Rakie Kim , Suren Baghdasaryan , Tejun Heo , Vlastimil Babka , Waiman Long , Ying Huang , Zi Yan , cgroups@vger.kernel.org Cc: Yury Norov , Yury Norov , Rasmus Villemoes , linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: [PATCH 3/3] cgroup: use nodes_and() output where appropriate Date: Wed, 14 Jan 2026 12:22:15 -0500 Message-ID: <20260114172217.861204-4-ynorov@nvidia.com> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20260114172217.861204-1-ynorov@nvidia.com> References: <20260114172217.861204-1-ynorov@nvidia.com> Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: BN9PR03CA0370.namprd03.prod.outlook.com (2603:10b6:408:f7::15) To PH0PR12MB8800.namprd12.prod.outlook.com (2603:10b6:510:26f::12) 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: PH0PR12MB8800:EE_|SJ5PPFDDE56F72B:EE_ X-MS-Office365-Filtering-Correlation-Id: 2e87cd62-c2fa-4af4-9341-08de53917cf5 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|366016|10070799003|7416014|376014|921020; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?ZMSDdjJ5DQxIv3/niHX9dbkZJL548E1/gyoFoWqxJyFJ49ICsgVb/M5j7sJH?= =?us-ascii?Q?LxLB8w7RstSYmmzriY5hxodYhITBSoew9DSLSGeiRSpxD/e4NwPzZU4PvNSL?= =?us-ascii?Q?W1ezkkfk4JRMgMARwBnAsGlvnanxIewiSqDz9ADyC/JZ+rAIOzDX7MWRjM3E?= =?us-ascii?Q?tMAEB9t1JTDY4942dW1p+FVUcbGEbC7+GOqLm4DfvWdUmpX1cdaJku7gBGVI?= =?us-ascii?Q?Yf+6KDM2ETc7AweZqjro403ZvEsTVkADR0ofYFZESYz1UuN8cJBJPOaw4T5w?= =?us-ascii?Q?wbZDN/sZTbRXr3my7hDhGLYKyX80NBVzS7drdxWJ7OkJlWZ4kSL0vYew1J6M?= =?us-ascii?Q?mStPAvxMqDbYsjosDspiT1vFQoPqXt3QXgoJsCUGhjIvQLKLs5BvJZl/vKJr?= =?us-ascii?Q?2HhgdcRzxOjo/S128pD7Nz2HPsIMdyPf+DZ7aL+0qJSul+YhFHkLDscaMsSS?= =?us-ascii?Q?aeAfrpn1CMpWtXWOeEgazfaXkBWx+N1SKyyh9wJSp/hjbv7EMC22uC9Yhb5Y?= =?us-ascii?Q?8g8rEftto6Hzaw3ywPxSzPsxyHGwY0bk2TP1mCZkl/GaXfjtDpyAKgQNhn0r?= =?us-ascii?Q?4UCQkB9TxEVunVMje/jaBBPdeG3LMxx/heDhkawO51B85juBj6+NKGrQUaoz?= =?us-ascii?Q?Ov/iIssz/YkiG7RJ8My+88HJmToR3g1ucHcQWh/Go5xUrudIT4tCu64eGeDH?= =?us-ascii?Q?rU1H5+s5r5/sCfspqmmhwjwKY04+JTLxDA1ip0fk35zYtJDNtNu+s0KvltEN?= =?us-ascii?Q?DOH5RkFvCOniabbnvNVvcur6PLD2vyhufXUIqUv5X/y4kwrI6WQoKxsToDxA?= =?us-ascii?Q?mpwf0mi4g2rPaAXXl+Nl+Q5HvQc7+v5PO3M594uuquNjIdrnp8pMlMFSlppo?= =?us-ascii?Q?+QvTS/kR/YoBjZsqPWtrhDV9tpL4JTWQfoRah9EwjMy4CDcIOQIpeQmsVPLt?= =?us-ascii?Q?yB+gGyngkZcJh4b9bk40yyrTxcz27GCTfJbkz9N/eht7IscZbIVYAxy2Enyw?= =?us-ascii?Q?FN0osFzdVtFWyRBA/iGPH39wQB+1/0aga1GuG2FRisTKfLWAe4Fvz2Zv8ej5?= =?us-ascii?Q?9VhaejPUljpKc2HZPceb+mbLh7A2lqz9lFe1aHfh5Zs0xiVQELOlj0dgNKjt?= =?us-ascii?Q?dOL9TEs7T1aZQiTO2BSyWSlESA5fyfAntHdPPc28Wmcf9LbpMdEufKI4xd1Z?= =?us-ascii?Q?HdCHvjVYSUxAaFPk0MHPBODWdfYmhWkxOwdbmIU9DQq0qPmIf5QF1y8yD1ko?= =?us-ascii?Q?I1GvbFx7MaPpvXTEC0Hp9TmvPpGglUW8OOonX7XZWooi+LVNcvCxgTDl6rtc?= =?us-ascii?Q?JN3r7osl0t5EduQHdE8psnya9nNR/a2q67sj/VFU+sHARQQw1esODX3/QlBf?= =?us-ascii?Q?S8RZAqePmbYdla9263ycoSNZSdKG68H6tIlFnHMyJOANO31ssUvhd7qd5jLJ?= =?us-ascii?Q?pjekiPNYzXxzdkVyjXUOq+XXstliKQAFfJ/ddgWglAQEt0Hl4gUR2SfMgWoR?= =?us-ascii?Q?EhUrWN7qrqiTND7RZlVdkrH7YC0/MLhqS+6XKCJN8krCHRu9yjRQIMGgooAv?= =?us-ascii?Q?qh76coxfUgO1NIx5VkzMvPIFJI3aUEenh1AQjuBR6bZxf9hg65iTFRq8faT9?= =?us-ascii?Q?gg=3D=3D?= 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)(1800799024)(366016)(10070799003)(7416014)(376014)(921020);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?MX5IYJw0sUom4ifuNDl0K+Ykf5RqxIoXHlL7h6H39TRo8yA/BudcHQwKJBoY?= =?us-ascii?Q?OY9GiToDHGaNosAP3OUfbZWse3fJCP7JAWuzYEVARIcF3eD9BjnXws10x8f8?= =?us-ascii?Q?mEu9NIUSKfxjdcwnXWAnY87V+zaA9ZDSmHja+YIEhW+1PlUtRaAHvf6+HPg9?= =?us-ascii?Q?dsA2E6scKPW/Oy0JSqsufAwSsvQtt3bbfNMDJXHrxtKMXLJ8DzlVDNi/uj1k?= =?us-ascii?Q?zQd48k6H+dShKACQWpShp1v0gYCTtRzFQbwicU/6s/yDwCx9uAXUvvKUtDO1?= =?us-ascii?Q?DCr9dF04t9VT7giPLFEQMiH6KXqUxBv2mCrVSdZrz1gqbj1mQoCK/Jx+0WLy?= =?us-ascii?Q?Z4+cLhw5AhKxVW6R6YwMT5a2lX8XQgNK1qK3KKYeiwWAvJs3+63nL5GTafgn?= =?us-ascii?Q?tBwgeXL5cU7gjgUlUc4QYZ39RPZTNgsv9m0SsrANyaoDGJ4CazVnnJds6OLl?= =?us-ascii?Q?gm6pTn6Aw02lQGAlw0LZOnV9p/2hchQUcLjubXj0qoZs8br6xDdItgjyc+sl?= =?us-ascii?Q?g6CK1Ly7mLkJ0F8IbKG4fR4QWjw18GUyWkx0uZgDTvWVC+J2o+P3bxXloDEJ?= =?us-ascii?Q?gcGUFSquNGTVV/4pSckQ7U/2u86sSmMenvwOW26n2dUTxaYfxcOLCf0H+ubB?= =?us-ascii?Q?YLb8ExGGamCD8OksvsbUqqxNJlPwi1Mmzi453ujfyGHaPXDYG3oRaPG/OD9J?= =?us-ascii?Q?30NdVYHRlFrq09rb6+YJbo3hHk4oBEcYb6WdEV/EiPlR/oCIuDx/R4bjzPCL?= =?us-ascii?Q?KwDZXfzZkhywxcBFEHdyIjPw6mRoXVgYLD93tONsFyF+t+hbcolZpsn9h0Vk?= =?us-ascii?Q?WZf/UOx722B8fRMtqTvzzBJKnMxhWgiiaF0HO9JuK1Pr/2Ctrq7xFT5wFA6S?= =?us-ascii?Q?udZw3JZZ1Nnt6Dz1JSizW9EN+dK/90k8sKrsk95U77llS6/u0Fd3DXu/3J3g?= =?us-ascii?Q?74vuZlZ+XF8F/yXNRaBeCgeptXCM2TSVK2pQOykcXwFZnM4yvdoezMLJavYK?= =?us-ascii?Q?YCeI5VhXpAmHSm8MaxySUh6SKmw/vHVs73P2hMswf4iOkbmBBaN4ewQmEyMY?= =?us-ascii?Q?uIm/b0tU25uwPKdAPo3IHHYS3r0K36S7zhpaj0UUrHPhHTyV6IYHzScdqXje?= =?us-ascii?Q?NKUEKNoenOUHR7KC1XF8ATBFyy9gSO/MWuHr6op7KslaZA3Vm4YkbqktB6vw?= =?us-ascii?Q?7w/0B+/zsko+JkbKhcVFbch531YZj6ti1JKxcedGDfWZ+YstzY+T24+jfuNl?= =?us-ascii?Q?sPVxqBrPllPQLcZRaW3DYnl54Qh7kRPZkKLUJ5xvzRtQXQISJy3IOoHvNyKo?= =?us-ascii?Q?ufYWdzEhyjZKn9ARCuvh75iOMwtDnhvGQWMnUYN8MAnCKrvk4zkSyknG81tn?= =?us-ascii?Q?tMNtDKNAPDxaJ6obAHXPqNvYig1IsBCxFK6Yw0F3zvgw29seoF7pR/CLoTW/?= =?us-ascii?Q?gAbyh6kOF5sdyDb1c5DYVj46SgIDNyeZdrL97opjXKIyWHzA0gBOkJNacIOs?= =?us-ascii?Q?Kt20cZDKJ2vB2uS64ZqLBfczxCXJINQcYQ1XPE+Pteu7CpRVfgVniNaNvh1v?= =?us-ascii?Q?1I7jCfHyTNIsKUXaEMpjwWoY9j/S7aN9WnLKZjmoLn5c7NLp2JT9RUEcAlad?= =?us-ascii?Q?zupLg08daTdjgnInjmFeppPnX7cJb+ZZXSV6fsX12D+xXmfq0NHVIlKeoFhj?= =?us-ascii?Q?yY7661YhbGQsePfOoVquXicfvqWFTib7ZCNQIT10Wf0J10XKTgxWWkBsZYqe?= =?us-ascii?Q?FWmMJli7CbV2BUbL0+jdXwR5nRf7DmToMUWvp1ZwAZF11n9xIYOU?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: 2e87cd62-c2fa-4af4-9341-08de53917cf5 X-MS-Exchange-CrossTenant-AuthSource: PH0PR12MB8800.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Jan 2026 17:22:26.6843 (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: VCgn1UyfPbS6WOzt08JtrYwvb0qyMMpdxJLaLUsGrOZ1BvkF7hEu7TAwj8UGoDnXviWRaCWFLe3T8DJYz23dng== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SJ5PPFDDE56F72B Content-Type: text/plain; charset="utf-8" Now that nodes_and() returns true if the result nodemask is not empty, drop useless nodes_intersects() in guarantee_online_mems() and nodes_empty() in update_nodemasks_hier(), which both are O(N). Signed-off-by: Yury Norov Acked-by: Tejun Heo Reviewed-by: Chen Ridong Reviewed-by: Gregory Price Reviewed-by: Joshua Hahn Reviewed-by: Michal Koutn=C3=BD Reviewed-by: Waiman Long --- kernel/cgroup/cpuset.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/kernel/cgroup/cpuset.c b/kernel/cgroup/cpuset.c index 3e8cc34d8d50..e962efbb300d 100644 --- a/kernel/cgroup/cpuset.c +++ b/kernel/cgroup/cpuset.c @@ -456,9 +456,8 @@ static void guarantee_active_cpus(struct task_struct *t= sk, */ static void guarantee_online_mems(struct cpuset *cs, nodemask_t *pmask) { - while (!nodes_intersects(cs->effective_mems, node_states[N_MEMORY])) + while (!nodes_and(*pmask, cs->effective_mems, node_states[N_MEMORY])) cs =3D parent_cs(cs); - nodes_and(*pmask, cs->effective_mems, node_states[N_MEMORY]); } =20 /** @@ -2862,13 +2861,13 @@ static void update_nodemasks_hier(struct cpuset *cs= , nodemask_t *new_mems) cpuset_for_each_descendant_pre(cp, pos_css, cs) { struct cpuset *parent =3D parent_cs(cp); =20 - nodes_and(*new_mems, cp->mems_allowed, parent->effective_mems); + bool has_mems =3D nodes_and(*new_mems, cp->mems_allowed, parent->effecti= ve_mems); =20 /* * If it becomes empty, inherit the effective mask of the * parent, which is guaranteed to have some MEMs. */ - if (is_in_v2_mode() && nodes_empty(*new_mems)) + if (is_in_v2_mode() && !has_mems) *new_mems =3D parent->effective_mems; =20 /* Skip the whole subtree if the nodemask remains the same. */ --=20 2.43.0