From nobody Tue Dec 2 02:49:49 2025 Received: from OSPPR02CU001.outbound.protection.outlook.com (mail-norwayeastazon11023088.outbound.protection.outlook.com [40.107.159.88]) (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 E3D302EC57C for ; Tue, 18 Nov 2025 06:46:16 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=fail smtp.client-ip=40.107.159.88 ARC-Seal: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1763448378; cv=fail; b=crKlFD3Osd0CEYETPpU/kth2DZsLFweKQjSCavtdnOOScolyYDeaAV5cdJXY6IUCxEnGHkQcqvmysQe2/zXvf11GmpvaZDY8y8ynaQN3fpuhnrUZJF8xk1/kHCcIrjZ7bLMhFSPEoYqq09zAlzRxNo01meI464bs/MKrTq02yo4= ARC-Message-Signature: i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1763448378; c=relaxed/simple; bh=wP85w++A4rT8/YVM+kU1x+j/CILWuOQwZdVCVDTHfS0=; h=From:To:Cc:Subject:Date:Message-ID:Content-Type:MIME-Version; b=UmiKnti1wvS+FHHW8zZ/bSDLxni4u4uYslk0gzR1fZeoHWIGqWjmiTWepfvaoqG42709IzFnSw64leDojLNkJSjWdhGmfgks9sfu0g9+b31JR4nnuiW5zFSF9Jinqa46H3qinHt8scyFxxDmdnVj+SDpo86lU12Hu5zhinLKqyo= ARC-Authentication-Results: i=2; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=virtuozzo.com; spf=pass smtp.mailfrom=virtuozzo.com; dkim=pass (2048-bit key) header.d=virtuozzo.com header.i=@virtuozzo.com header.b=kagRegjO; arc=fail smtp.client-ip=40.107.159.88 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=virtuozzo.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=virtuozzo.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=virtuozzo.com header.i=@virtuozzo.com header.b="kagRegjO" ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=ALpZi8w0Yo9+A0WKjiMI6er29x7LiIh7jpATUSrVxASBTepBJi2h1qtGjCiX3Gy65CH1nJzG0kIt2nZk9TyveGF7bT41uqr9ZboBDtDE16BSqiWbiJhZVmkv7VtMDrfA0O5Iaw0uae1PUKJDInm698W32bnrvEAZ0+lI+uPlLnGpqsSHAVGdxonEQialOB37OaYNpOylJMLg+0jLgwOvKy2GqE1DmMcOme1MexG30tuLd53XOEGCfhGZYu5X6O1OVablmALfIca4FUtF/reRvVdVZof81+aKdFLghL/Kp04ZiJua7G2YUMUAp4+kdd3vy0/rw6wZCeTGy2jbD9z/lw== 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=kUhtmoYvMpmeQaNMKSaB/RZBvFwl2SXShJwcX8oH71I=; b=Ozc4FF90daB9op3YJyfc7Lq4/BxhgftKWHm1lAx4chUuGdUN8tobHM1f50uRAD4oi3FYQMxsYb8p2hw0HZ0iUf7vn6bu8JKtfuNlhu3u4NLOm+ihJVc2BLG18RaJ0GzIXp3cnbH/jU8utLVG3NlCmWANR74Lyuh/IRIYy7HN4Pl6CSBfR26oV7/X8UUTkOwaYdrUP9uDZPq8l1CQo2+Q5i2ewIv7+2Ow0BqKSZBL3HF7t92TOM9wC1jf6ml7i0pthVzCw6FICMvHPFjw3xIm5v5oeOxofYuF8oCAY1Ka/oYMnq8Odg9n1wziM30VDAOg1hHbMGi/IVczZfRlwKrTEw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=virtuozzo.com; dmarc=pass action=none header.from=virtuozzo.com; dkim=pass header.d=virtuozzo.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=virtuozzo.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=kUhtmoYvMpmeQaNMKSaB/RZBvFwl2SXShJwcX8oH71I=; b=kagRegjOSqbU34t3jWjRWgkSY9nW++6BJJWKEh1ULXJjS08vqNLJ4W0R2uFM7Cu7Ia+eO3PGYLVE8zYagkelnT9OONuXT/s82z8ncsJRfjEtTIasniB7pjht63ZqF66+BLPwEOR68XzrkOKSPVRg5dFQesg5q8pHfoDNzvFqAdr0teZNjqZJVbN+JD5pnlnZyXsE7q/s5aFrUAuiK5xo/6jmt78zvK6sUfiX2uXe6aTKqEvGzMBa3xK1p1LDCHRl/8HHvmBER82MwQ/vqUNtiN119esw5d9Geid9nReFoPAxZApfcZnNyNR9oX0O3kRO/okpyAwclnoUuq3J/L+uUw== Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=virtuozzo.com; Received: from DU0PR08MB9003.eurprd08.prod.outlook.com (2603:10a6:10:471::13) by AS8PR08MB8417.eurprd08.prod.outlook.com (2603:10a6:20b:569::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9320.21; Tue, 18 Nov 2025 06:46:12 +0000 Received: from DU0PR08MB9003.eurprd08.prod.outlook.com ([fe80::7261:fca8:8c2e:29ce]) by DU0PR08MB9003.eurprd08.prod.outlook.com ([fe80::7261:fca8:8c2e:29ce%6]) with mapi id 15.20.9320.021; Tue, 18 Nov 2025 06:46:12 +0000 From: Pavel Tikhomirov To: Ingo Molnar Cc: Peter Zijlstra , Juri Lelli , Vincent Guittot , Dietmar Eggemann , Steven Rostedt , Ben Segall , Mel Gorman , Valentin Schneider , Andrew Morton , David Hildenbrand , Lorenzo Stoakes , "Liam R. Howlett" , Vlastimil Babka , Mike Rapoport , Suren Baghdasaryan , Michal Hocko , Kees Cook , "Eric W. Biederman" , Alexey Gladkov , linux-kernel@vger.kernel.org, linux-mm@kvack.org, Pavel Tikhomirov Subject: [PATCH] unshare: Fix nsproxy leak on set_cred_ucounts() error path Date: Tue, 18 Nov 2025 14:45:50 +0800 Message-ID: <20251118064552.936962-1-ptikhomirov@virtuozzo.com> X-Mailer: git-send-email 2.51.1 Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: KU2P306CA0011.MYSP306.PROD.OUTLOOK.COM (2603:1096:d10:14::12) To DU0PR08MB9003.eurprd08.prod.outlook.com (2603:10a6:10:471::13) 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: DU0PR08MB9003:EE_|AS8PR08MB8417:EE_ X-MS-Office365-Filtering-Correlation-Id: 82278f8a-bde3-4291-ceed-08de266e297b X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|52116014|10070799003|376014|7416014|1800799024|366016; X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?eD5nOcMIXwh2iOJqCbwey6y4mUMzkWy3FPof63VLM4zuFL4X0Vnbj24moxUw?= =?us-ascii?Q?qhA3lntIzlrMQTOTK04hWB0iTYNwFci3b+Degl4bWUXgMDqZ77JVAe4kj/xv?= =?us-ascii?Q?7ugy0Epiyrxl+YPADEH593m+pipPg9jQQEt3rH+umCJ8rKyYfCwjRQoThtbO?= =?us-ascii?Q?0uOw0b35kNfSXBOohRiMVsC6s1Y7tZX4tckB6aUnf8lFKorO1HCROwiQD/u1?= =?us-ascii?Q?X4iOtEriwHfAsTJ2CHqn5ljahyw4HEypAsZrYYxP23d1PibgBQogwT0Gb9iQ?= =?us-ascii?Q?w2TO192mAT5ILnsN3kGzCpODOyW6WjNklNmgmyiSDYHkEPwbMvbUoueuhkjS?= =?us-ascii?Q?nsSoJvHBYtRuNw/7aXgOJ9hwil6AdZfqE64mjdKR0lo8HXStzb+Q1691f3Na?= =?us-ascii?Q?kkSSvlvBiKIbyaFNCuWR+9b12xYx5kwQf0AEJ1emaJgy47qdLdT13+Iylm7L?= =?us-ascii?Q?Y/j983r5pARjUOJmLDA9uOq0lF3s5aM4bDLeOEll5sHGtPKR7ZkaNLBu3vFl?= =?us-ascii?Q?5yRUeVY3OfHKuAqzO+OdLzD+cR9z4vNDkAXAzaOeLO95NHwie8Ify7axN/c5?= =?us-ascii?Q?xIftXCln59ypQfPEEedkc/oQLLd4HklymLopIYFZ1BufxzPj2RVoNiUPpMo6?= =?us-ascii?Q?vfD3bvPpULZT91d/6l0wDWbLozhQ4c4HgWxcu9HrNINdMhSfX056ZH34G8Q7?= =?us-ascii?Q?JMayrJLN9iUCAZ1r/D7rof7pjxF9o7buhD/Yuri7G6VjWao0xHUJQA5pJFr6?= =?us-ascii?Q?eGnm238nvbFOJXngWv8eVSoMLkEkhfmnukJ3x4GOEc/SKhBzuodx5MFVi39e?= =?us-ascii?Q?8FtiokT/CWUNVAn9G6KQTx8OrTPMePNTtl9lBabNxhi5vYVY/b4wFpM37Hty?= =?us-ascii?Q?wSO9LR7eI0ehzlR8Z/isHh4aVlCArltucAKeiwcXpJ1l43EbnXj6yTWugNOD?= =?us-ascii?Q?r/ZJQM0vllUHI4nyeYbqqL1TIlrCRb2kg0P/uxmeKmsYn2fSYzUOKcqw9yxS?= =?us-ascii?Q?CfrNGaCvREQCG5nL4qbDLvgToC7joOd/Kg1YXFG4INlsVRm3sgH56WO9AI4F?= =?us-ascii?Q?zu04jmgIWKbWOYvQvQqajm8hHH1akUvWERLmLwwt8B49/5Co3KNIqFaAFIGp?= =?us-ascii?Q?LwoDJIYr13BYbJui9yVY3bTZchmJB7Z3aY8mcPHyvZqpyBYD3DrZVvsFJTec?= =?us-ascii?Q?1vUxTA3WcskdBsO1zyAtR7WNmvNb4wjwmXZUP3M891C3BWLOnFR9LR+lQmYw?= =?us-ascii?Q?bfLCsGV3kaI+cax9AfAoE7l3dWquh0Hgx5MOCa1GnoDhpSn8VslgJZYt5kmc?= =?us-ascii?Q?uAWhp2TgjBGHgJm+VyiDuYJAXamRrAOIP3mcJNIQ2ioWuQ81qoTA86dRJJlD?= =?us-ascii?Q?S0jherFrqJlpnrcArEvoEF4HTyFZRyhcEYySHRjDjAfkkqs2chqIf/SMmy9S?= =?us-ascii?Q?vR4mETBWpOt8YFO+axG1JcGmooNo3LNQ?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DU0PR08MB9003.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(52116014)(10070799003)(376014)(7416014)(1800799024)(366016);DIR:OUT;SFP:1102; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?UXmuAnjRNx4tslrxAfMNmT238Xo9s3BD+WjthLlesbgKLb5S0iZkICYopAk4?= =?us-ascii?Q?tSbsJBzpinzyktHJbqz2RXFx3f9mZeQzcgLjmvpMGSSIh0JRLZ1k1rJQL+xh?= =?us-ascii?Q?SHtg2bUXp4NnR05Pp74lwEvwrJZw1A1jLYSajq/krv43rBzT1SvYIhFibu7M?= =?us-ascii?Q?cTCJKP/MAZeDSU28dkiX2WM3VnkhXM/AJAV+yjBI1a7xgcG6lKEheEEmbMwg?= =?us-ascii?Q?T77XuSJQ2FPOs4vEbUb0LiAInSMiUfn+BqVxiNZVFhPlp6RScr6QDD+0PA+H?= =?us-ascii?Q?MLe+oShkLtipve8lTnwG3jQB+vATtKmfc9RU3/62hIPaBk/ZDckrT9MTG7Bw?= =?us-ascii?Q?iNeT7Ge+9M/dWRQfGHZVGi2ok36tSfDXqVO486XebdXui0xFPxH5hrCr8S/j?= =?us-ascii?Q?Dz2DsNtkzA/5JXcV4pEZlZCXub0jOndaaHCVwSpwd3UXQYjnWrvH1wnPAfN4?= =?us-ascii?Q?95rBJFC8Yx8O7+EIr/bWBjX/lAOQ30P9hndTEQacynNESB78TijjTWM+0vO4?= =?us-ascii?Q?4koTZbwYCkrsy5qHLtL+MvnuSeR6JWMtCX4uXHSQ2V8MhUpwzOhw04qZKBJh?= =?us-ascii?Q?awvLPqVdGpqtwIvNyKIsnK5SFu6AK85x56jhdrWoLQ4nOCoCGMGIDFZBfycx?= =?us-ascii?Q?PfiN6hHB+eMkZPe/1aGwt8F8jPgxDcNp5EmmD3PodiVvkWJvlrv1g78DuoEe?= =?us-ascii?Q?3UiCiJOZTT/mghY/6aQ0EX9cWAezApKCgiuy6yvEKNw4xQGmVefTeSc1fBA0?= =?us-ascii?Q?KCBt+qynBURY7Cbt3Z6OJasWkgOIBBT50VRqgAjXz8Xs/UblqCthQTpmeav6?= =?us-ascii?Q?96Muz76d4FjPE1XL+GplmK9mCTWRE+Ioz7HYy84/hnHsJFqmV6KaqVkB7hff?= =?us-ascii?Q?6KUUjFCek4A1nHIeRji5qPURElPJYu+islp+rC8wQ9+r2mshAyQP2pga4m5Z?= =?us-ascii?Q?A4e70KOkOjMbTKoMDc6+MvwVcZkhfr9O82/B3uLgs8Tnq3fdFQP6l4Jtelpy?= =?us-ascii?Q?jih2WpuTJJ1EXYNGF/Q6NgcOHJNPMlhoQxx5088vHOWBDOFwnqa6/x0SJMl0?= =?us-ascii?Q?R5483EUIRQvhsc9dr28y5lOAJVb9nhnNjfNO9kSLHA1WQcOc0bJX6c7Txt3l?= =?us-ascii?Q?mSRJKh+8HyZcHhegylGN0vfscfmRFVWenA1o4gGzdJZcGcx9cOv4U1EbOXdE?= =?us-ascii?Q?Gq2ARDdBLGr0h8NVHt9fAFpct8mD+YOObeu4RKelTrKVGSF/5kzt5ZXr4cT0?= =?us-ascii?Q?l45aHgzfKv1rAXTyAIh/JnIiwbZ1K7O7A83WVYqNowGsYavzas+xdwY20bft?= =?us-ascii?Q?mlqLtk2gQiLiJy9gizw9o4Z78yaUYBibiUq2Eh9JhE4xaKutj0KxnPc1N1Vn?= =?us-ascii?Q?83fTs4WoNdFPfY9O5cvSglGBopEifmaKa8hNKhRrxysAZkblKg0aAjJeQzn3?= =?us-ascii?Q?yMofV6ZLnEeEU6Tb1REgb8mnl1D4/T88CQGwOEAeDL2NZ5UlvrQX8j4A9BVd?= =?us-ascii?Q?0zay4O99MF23DiAyoDuisvuYwThUX8TYZoAwaUvJQfxvvoNVKUf5VUhZ+59b?= =?us-ascii?Q?Wi+CDL/0miMNxGsUSBh+WGIBHtu5eV80BXM2G1oIVtxu5qEpYpvFuoKEyfDK?= =?us-ascii?Q?tUE8PijVsTKiJeBIBg8szqAPxdaLSc7BvGWkjPZ+5BFpZgRxt+Q3JtV4cSUP?= =?us-ascii?Q?PPcvyQ=3D=3D?= X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-Network-Message-Id: 82278f8a-bde3-4291-ceed-08de266e297b X-MS-Exchange-CrossTenant-AuthSource: DU0PR08MB9003.eurprd08.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Nov 2025 06:46:12.1151 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 0bc7f26d-0264-416e-a6fc-8352af79c58f X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: 1hXM2P2YAuHPBDV35wv2O85TtIX4gMQXHqHb1H67FR1L+Mp1LG/ZnoCLk8XRzRmXV1X/DLs+lj19E6IXOf6ot6YhWgp6BdIIzxPQ5f4u8Pg= X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB8417 Content-Type: text/plain; charset="utf-8" If unshare_nsproxy_namespaces() successfully creates the new_nsproxy, but then set_cred_ucounts() fails, on its error path there is no cleanup for new_nsproxy, so it is leaked. Let's fix that by freeing new_nsproxy if it's not NULL on this error path. Fixes: 905ae01c4ae2a ("Add a reference to ucounts for each cred") Signed-off-by: Pavel Tikhomirov Acked-by: Alexey Gladkov Reviewed-by: Liam R. Howlett --- kernel/fork.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/kernel/fork.c b/kernel/fork.c index 3da0f08615a95..6f7332e3e0c8c 100644 --- a/kernel/fork.c +++ b/kernel/fork.c @@ -3133,8 +3133,11 @@ int ksys_unshare(unsigned long unshare_flags) =20 if (new_cred) { err =3D set_cred_ucounts(new_cred); - if (err) + if (err) { + if (new_nsproxy) + free_nsproxy(new_nsproxy); goto bad_unshare_cleanup_cred; + } } =20 if (new_fs || new_fd || do_sysvsem || new_cred || new_nsproxy) { --=20 2.51.1