From patchwork Tue Jun 27 13:21:31 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Julian Pidancet X-Patchwork-Id: 13294505 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 kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id E9C6DEB64D9 for ; Tue, 27 Jun 2023 13:22:28 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 531728D0002; Tue, 27 Jun 2023 09:22:28 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 4E3C58D0001; Tue, 27 Jun 2023 09:22:28 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 334228D0002; Tue, 27 Jun 2023 09:22:28 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id 222228D0001 for ; Tue, 27 Jun 2023 09:22:28 -0400 (EDT) Received: from smtpin23.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id D8DCE140923 for ; Tue, 27 Jun 2023 13:22:27 +0000 (UTC) X-FDA: 80948591934.23.8E3E71C Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) by imf18.hostedemail.com (Postfix) with ESMTP id 230241C0024 for ; Tue, 27 Jun 2023 13:22:22 +0000 (UTC) Authentication-Results: imf18.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2023-03-30 header.b=EKiLqyrR; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=lfKh71AJ; dmarc=pass (policy=none) header.from=oracle.com; spf=pass (imf18.hostedemail.com: domain of julian.pidancet@oracle.com designates 205.220.177.32 as permitted sender) smtp.mailfrom=julian.pidancet@oracle.com; arc=pass ("microsoft.com:s=arcselector9901:i=1") ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1687872143; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding:in-reply-to: references:dkim-signature; bh=ZRtoZJjCHS6795vahpZRjPH8xqpkl7eJhQWDakJQ/OE=; b=o84TvrtPUaCD83lXZfSa1EqllZO1OqkvYM2CJ3gR1PyWoY8W5R75YXdobcLw1iDwQz+XOc +YthcqUywEzxR3Ll6CIXmTwgrUWd5DvkW/BX7Hf1xAaC0bV5HyS3pU46PTaDdG+sc78bP2 Sjn+tXZUH9j/wElhikxhCCGPpMk+JtU= ARC-Authentication-Results: i=2; imf18.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2023-03-30 header.b=EKiLqyrR; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=lfKh71AJ; dmarc=pass (policy=none) header.from=oracle.com; spf=pass (imf18.hostedemail.com: domain of julian.pidancet@oracle.com designates 205.220.177.32 as permitted sender) smtp.mailfrom=julian.pidancet@oracle.com; arc=pass ("microsoft.com:s=arcselector9901:i=1") ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1687872143; a=rsa-sha256; cv=pass; b=DtUNWuAe7dB0QRoQjYQFQ4qc8HcWmcBR2OphS0E2Mwb7jZ7qnUFXGuwP2OaxYy5s7Yylgy WA+4YmnT/DbYyK6EAcJQaoljcuEJuekUtVmksgP47aMXFK+GmbyQHnP9K7NfBDVCSxpNLB L/LbgoWk3+S02athKXeLlqYRXTU0DKw= Received: from pps.filterd (m0246631.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 35RDBh8S030826; Tue, 27 Jun 2023 13:21:49 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=from : to : cc : subject : date : message-id : content-type : content-transfer-encoding : mime-version; s=corp-2023-03-30; bh=ZRtoZJjCHS6795vahpZRjPH8xqpkl7eJhQWDakJQ/OE=; b=EKiLqyrRFm0N0BWlwq5KmFusNL3lIiz9EGCQHThgQidR8MppbKDNQArW3Hzt2mA3/5+7 MUDDP3OwJlDRdR55gtI+Mtfbw6P8eU6NWlXgrJo0Rt2S1Um+RYHlx3GtZW1t2FZDKgjb C2sBHndPmtb3ycisdSkJ7Zddf6f6AJM+UxbYFdhAnXVytmBXTui+5DpmYSdItllM6GYt uEwj2DolUTtVNrBdB+Iw8hTmXY3YAY6c8twYIckujKFY8oQRTcS+7yrCoua9rBe849Ns rrOaqK5XdUVUSWZSL1y5E2uGU5aoEM/yZcgsv5jnBDP4cclTnAD30jTgiDBu1Q3RtdXD Gw== Received: from iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta02.appoci.oracle.com [147.154.18.20]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3rdq934xay-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 27 Jun 2023 13:21:48 +0000 Received: from pps.filterd (iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 35RBtFaM020111; Tue, 27 Jun 2023 13:21:48 GMT Received: from nam12-mw2-obe.outbound.protection.outlook.com (mail-mw2nam12lp2041.outbound.protection.outlook.com [104.47.66.41]) by iadpaimrmta02.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3rdpxa8pd1-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 27 Jun 2023 13:21:47 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=ByKaN90sUwaAcpyenbow5L6x4vZydQMEF6g7kkkT9S95NdNhRz7KAQ1orvocWqVq5DZtuvMQ2SkBXKXTpElFExveDCcxzjBXaEiMFw2iQ1nRZExQHDMYosiCEwHLf/orp6lV1q0UmmTxfHArNlGbFmhB7BVu1d1rW5/aX/y0JlAarkuDwiVD9L6axVMdjW8rL02yIPQALnnh9hgYZOkuqEq6uWezO+qV5FOzkxlWiFbE2NmeQg+sUkgDtMok+SMS25e8EkqwCxC3I04rNBxcx32wQXrYiZ7Zak4imUoxPZltcFSqHpe/7F5bCUGcNBu2FnjM2FL+MDzjWtDWVyu0Cw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; 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=ZRtoZJjCHS6795vahpZRjPH8xqpkl7eJhQWDakJQ/OE=; b=gqxar6aOqCgu/ZPwZ+c0UGpOX38dZTLf9gHC5qxxkkBRrHojQewTEWh2RK7DUHHxzR4bpXV94kuPEnaFjSLTgOMR5a3C/J05s9wApNOLMkDqT1TR73hwyWCintEtCzXB4HJMf+A1/On59QhqXtIup01HkEJIhAU2KTD4IHAo1gPZPnYZG7Z3MBD0yIYBvmEi25/INvuo/HlfrxeEyTZ1rgmQYBXSq0LPoZW9K4A/0lZXAOjRLsBzTpGtUlR/tfeUI4BQdhBszq6uMD/QYe/aBJCWPf1m5TMoTkmY1N1yRMqMq6CesF99SF/zBClyKY5771kD8BluXkjQzXTTa2JXvg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ZRtoZJjCHS6795vahpZRjPH8xqpkl7eJhQWDakJQ/OE=; b=lfKh71AJ0ZJIy1C///mhPn5m4F3sreIdqdeL1hwSEKwK2fWAErJd/qhoW2WcaFgoWIvu25C+O+JWi5Dspb+2yZxdVLzfbruMWP7a7CAa6zjFcYbowKPj9S4BtzOOxADST6RyN71aqV5PRwCZjIG8YxBTmzAcqkjOfa0rAEEpBF0= Received: from DM5PR1001MB2153.namprd10.prod.outlook.com (2603:10b6:4:2c::27) by MW6PR10MB7552.namprd10.prod.outlook.com (2603:10b6:303:23f::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6500.37; Tue, 27 Jun 2023 13:21:45 +0000 Received: from DM5PR1001MB2153.namprd10.prod.outlook.com ([fe80::519a:c7a8:90cf:81]) by DM5PR1001MB2153.namprd10.prod.outlook.com ([fe80::519a:c7a8:90cf:81%4]) with mapi id 15.20.6521.024; Tue, 27 Jun 2023 13:21:44 +0000 From: Julian Pidancet To: Christoph Lameter , Pekka Enberg , David Rientjes , Joonsoo Kim , Andrew Morton , Vlastimil Babka Cc: Roman Gushchin , Hyeonggon Yoo <42.hyeyoo@gmail.com>, linux-mm@kvack.org, Jonathan Corbet , linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, Matthew Wilcox , Kees Cook , Rafael Aquini , Julian Pidancet Subject: [PATCH] mm/slub: disable slab merging in the default configuration Date: Tue, 27 Jun 2023 15:21:31 +0200 Message-Id: <20230627132131.214475-1-julian.pidancet@oracle.com> X-Mailer: git-send-email 2.40.1 X-ClientProxiedBy: LO2P265CA0060.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:60::24) To DM5PR1001MB2153.namprd10.prod.outlook.com (2603:10b6:4:2c::27) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DM5PR1001MB2153:EE_|MW6PR10MB7552:EE_ X-MS-Office365-Filtering-Correlation-Id: beb30e1a-066e-456f-f361-08db771173cd X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: fXNqc3g9LE99ZkaTbGk3EjFqMNdXlnQHdeKthy+1TsOR3DlHc2W3FRt/Bz3L0/goMSEXGi/kLP0VX603BHRF4YEUqOwRtW64xlF/aYwPV/kaN9Ez+dhZ8sFgvw9ZfqTzRRPHY7pq+4FFK6yfRhjnpSO9+Vz72ekiNDXQrxK7tKONbr57i/bSZWFIWwmLyp+N2yFcbDTmaY4ZcgGkQORj2dincuz3iluhWpDBNhsVtKhrU7aHehHcU3Pb/G0F5P0SZfikI30fXza5NtmtZvSdjPaobRRnBcvQVZnL5ejuEFdf/0pUJiKAmv9pHDJTlt3VhrNRPYRol3BNokFwQJbW42aahtobnEL2M+KlK2Sog0gKXyN9YAEubVJ1bT+B9Ejc1dkYAj4F6kNG83e/FQEO3JXIO4iTSEphGvPs4I0W1lE//earx7+GbD1CXsMN4eD/iNetV52p5uM/8up7jZ0qdye3CZO4bFmFr6jBTi0iXwNqENvWoz5H5czu2NTvegzgb1fUAABsVwMvXpGXIUfJoDzCiuPHkptMMCTbq8KnlGyY3jwDKra7Rfm0XFmIi7c6 X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM5PR1001MB2153.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230028)(376002)(136003)(366004)(39860400002)(396003)(346002)(451199021)(83380400001)(110136005)(54906003)(478600001)(6486002)(6666004)(1076003)(2906002)(6512007)(66556008)(66946007)(107886003)(186003)(66476007)(6506007)(316002)(7416002)(44832011)(41300700001)(38100700002)(8676002)(5660300002)(8936002)(36756003)(4326008)(86362001)(2616005);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?q?RjSA/gXw/IbpEM2l5fwrIryZHKRf?= =?utf-8?q?0dLDIhQ9hFG6i5li7wEXzUPf1d3oweZGoaXVfig7bJNx9M4gU3DjibK5yC0jDBB5W?= =?utf-8?q?nlGT/bfDOQugHYKBza21VFlaWe5GujvblXZ31uyf/nikfyC0i2vJS5Z7YGTXBImA5?= =?utf-8?q?Mn0KYH92IM9JvBNEfpIL4pDJalFMvWeHh7UEmvf8w2DVVgnX7Qy8bDHVgzgalRlO7?= =?utf-8?q?CvpXMPE3rPbkKAxgneyjPHtf+vJmEHW8SzZehMzIQ+WVieu2WyNaRDGJZE0jWRN6/?= =?utf-8?q?0tGhps/vis4HmOCaVUOLgAb+YJ/AcH4fwnPx+90vb2Yj51Mit0pOlYZmaG2Z4zis/?= =?utf-8?q?ttHymFUUPts4OttTXMxwunG8PPEaXnlPh5idQawd1MeGSztVZgn7xjzcO6ieCXBsz?= =?utf-8?q?3LCpM8Y4Rr0w17/bXjqTPjN8RVMnqF/YRuaF9uq45Aq1J2FhPI16k2GP/MAR7llY8?= =?utf-8?q?FDNHZdxGivThEs4XWVxIGdJd4fOuQiPNz84m8iruke6E0jtBkLhcMsx+FAgIwFpSZ?= =?utf-8?q?Vn5d/Rn0YVt1rwwqDmJAo1LW0vLxs8KUwvywkIuiJY7PCH+WWJ4tTxHiWtfdImd6I?= =?utf-8?q?U9xVzDucv8Mji82Ju50NpZlD05mmj2wtZDR8lp1fTZjgVmFQhmzThi06mQkdYEyMX?= =?utf-8?q?4Ykw3XiD6iWL/lGcrq+fvXcffKmz+erYskzYQYzdtOTZ4/SrCA0Hl8Hhb/yMA/lnw?= =?utf-8?q?03FXrPpyUyeksheQ7IjPlAW9tRFmPmsOy9+HYJGcxLGoDu8s0pMkjMzYpOnO69TIY?= =?utf-8?q?PUZwAgVT1KKoh+HpoXj7O7F4ZzepUXJConYOhhuLsoE7CyCtrEabqhtwycIcL4o9y?= =?utf-8?q?eylpktYajQ60u6mWF9n8C3faJh2jvD4mRm/O4CRwpm8VIZ3St7eWauAmsfaIoxx8V?= =?utf-8?q?GyiUyheZmFjat8/M1R2L1kEl8wjF3dX0gkSe9BQ10sjW/0XjLmK9NtuveGFtiup1b?= =?utf-8?q?NPnUGcYVWC1iFxvkX/vZFPoiWHwejoWy6VIt2qdNouduiNe/7qS3Vy90PfbpCxnFf?= =?utf-8?q?Rg689i3ofSfnOiGU9h+OudVRv7axahbPQJFMsjpKe2ZVv6jldzqVOF08/0IqB3E92?= =?utf-8?q?gAUThJ0ULUy2P6AZPf96aHiiRwGgRjQvXpTpVTGBlk2gXfDEO4KYCgPxl2erxjDv9?= =?utf-8?q?Lm0dWMy4C6gyi6BqI0qQH+0DT7FxSMrB/wyzMRPpblP1HAhUvX13g15W4Zk28SCPo?= =?utf-8?q?krcSDzkptLrJ5FjntSUlOGW7AuzHE/Ods+llP2HlwSdVtPnD9qXCKPpuFIwGcOElB?= =?utf-8?q?+F9E0PKGxNYBoHwzauVR+AiZimnepM9lgtupvWpvw5TZ8v7pZTFkOTUynoNExvAW6?= =?utf-8?q?TMxlYMJKZ61/RX4rzAWhGOiiQgSz/9+bQUfuBojh03rSjlzpChLR7/9hPvDK+KlEH?= =?utf-8?q?SpjEmHtzQoXDjEFJ67qLnQsRFhrjBhoPBTLoOHnM4Ft2ZS5ahBCnp9s4lz/K8itCN?= =?utf-8?q?fCHBUWSoaUbPSxOJnKWF81whshMqDd+miJxx3SKNh/rEW1FKpuaDLDE8UGxekdoxf?= =?utf-8?q?+VZpc8k+FgIvct4wwX3TdBouDK/cq+GOMDCXhmC1LWF9vPXpBT9foWQ=3D?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: =?utf-8?q?VKV4JyL0NTwljHgy?= =?utf-8?q?wcqrir1jnEtwhL+n/952ynzF+yuuzDds060PBNomtzfNbD1/JNciVDb/n4j5no6vW?= =?utf-8?q?7/eSsu/0Im1guuxywMGgk1S5Tqh6rQSANtq+8VdrgcsZqFZQ4c+FHghV1Hjbig9U0?= =?utf-8?q?OGLO6OnOz+Lj98apnl1X8SiJViGDDDD3qe7tggLYAP0H8aTFqSWistk/8J9qBYW5n?= =?utf-8?q?rRarDsaxUj9bnEYRDAJiudnid0lUsju8QU4SFsMwRf6vnyznkDs8aa8NAfSbspqbK?= =?utf-8?q?uAzRMAZgxQiXUT9oKjnFKhZzMTFYllIM4becJKEaDnlmtnMHGnKKLXd12zuEtdsfs?= =?utf-8?q?7pHSTUIsngnjag2bi9iiT4y0tzNDB4qn1q43wDhxWxvOC7VMxmPjJq30vgrOBeLtq?= =?utf-8?q?vxP6OxpxgnEBZeVVcozHbT0OCSRSh3GXMC812lb0ltRRNE/aVC+5D+w+k0r1oLf+v?= =?utf-8?q?8NErkcpaq6NmTsTLqGazGOliyKiBq5N4j08l44CPk6FXGiubt25QyGNYUcuzX9+IM?= =?utf-8?q?SEa/SMfTkEs5KFxeMigGe94lH/aiknFMxv3lJLW5WRVpx+qM2d7w8fcpNbIOzcB4Q?= =?utf-8?q?Q6tn2bh9n6W32c8QEncAZbPUr0iZHTBBEgpiTbXPuG7lkuSwa1fbLvS5HmrBQD2Md?= =?utf-8?q?sVGToPuA0vXf3rlhz3/nDfvhWlxh7vTiGER/TwAKMsmIB+51Xo8rd+OPeDkoTR2T7?= =?utf-8?q?TcFLkXwkLbEufSDmO1LBpC80Kzo/Ne0mjooth1a+hx5OD9EafB9/5e2+cYUzNI9Tz?= =?utf-8?q?Avic0M6+il2ncSknz5VNMjXEHrfQPRPETUF/6cDLYKk5XA+Koh2WBbhisnL4G72bW?= =?utf-8?q?UosoREvQdd4Y5fj3p0d9LJ6ioJh2v0jYf2jSPrzKdF/gAGNfWXV3czwjUZ0mJKTJQ?= =?utf-8?q?q5CBzl9c+qJX7l5vYN2fhlnJ+S8ZyIOosdPTvQHGyijJgBsBUeb4kKR4kHdyCcQLc?= =?utf-8?q?bYzT/W1zLgPOdhxrhz2dPoS/dfPEZB65RKaKtRmfdFc38N2dSP0oumD9+la1eWacb?= =?utf-8?q?W8C9hoXlUSquLp180yx/sGMNdvAONZ9hN2nG5lleRyTVjVRgJ5F3p880S4BXWt6Qs?= =?utf-8?q?TDYoI57nqZOX17uYZ6Uao+FAh5kf+J383ZHIvOkoyoRJJes6N0XvA=3D=3D?= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: beb30e1a-066e-456f-f361-08db771173cd X-MS-Exchange-CrossTenant-AuthSource: DM5PR1001MB2153.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 27 Jun 2023 13:21:44.8449 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: uzgD6SLhdP71WzsOiffU07gN7k+rbnPnJZ3sF9ak6eA+OwOptROHNQTBQVeAWI1fQpDlzybGDsGF5WzDP2E7DP3nkN6sX3FlKBM+60WM/gs= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW6PR10MB7552 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.254,Aquarius:18.0.957,Hydra:6.0.591,FMLib:17.11.176.26 definitions=2023-06-27_09,2023-06-27_01,2023-05-22_02 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxscore=0 suspectscore=0 malwarescore=0 phishscore=0 bulkscore=0 spamscore=0 adultscore=0 mlxlogscore=999 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2305260000 definitions=main-2306270124 X-Proofpoint-ORIG-GUID: ZjnY10BdDKAvexO7TeMvEBIR3FaEJSpg X-Proofpoint-GUID: ZjnY10BdDKAvexO7TeMvEBIR3FaEJSpg X-Rspamd-Queue-Id: 230241C0024 X-Rspam-User: X-Rspamd-Server: rspam04 X-Stat-Signature: yeanasrkdhqtjtp86codmyeczmgh744m X-HE-Tag: 1687872142-944907 X-HE-Meta: U2FsdGVkX1+miCl9pJ5/FqVRNGBhRIipnILIlaFF3RiBG7HXQRwbf4dmODgi8reCJx03Bpv2LrB+b6/yMSXlTyZVmk56r0KMpXc3HfH/e5qMPfXh+2r9sqlMjN2SqvQT2zy0/Kj0pJXn5cqp2DFZVLpXrsnElVi03nnJEKuzkHAsZkqhgKomgvf5vhTrOHBfd2uJ8h7WvMutALYN4WhEAbqT1hoXQE+737+ML8wRBHpQh8tfyjQEuj7VmsOCW19FCt6S09H5jyXRwO/5sRncb2myO52EW0m+R+IiTt1bYC8pGYaOBFCqb+AEsUzUiQOOPlYgR5/T5eYoR3vM4ENUF0UL7+kHXD8XstegFLfc52bARfHSzb9ZPMXji5ITWv0xaUJSILW2K3bYLxYnH13eN0icQ5pnvELTpEXGIo7kDR/yehBhgISg8CDumA6cvZukuwkPtDgC9okW6ubxyG6zrgXciX3tM6J2tTLIQx3X+UEavAd/dLbiKBnNLZRnz+Lf5Fy1jPNxghLXzPE2P2mh4viJYX+qO0gi+IqYFBOYyomT4lLaML0rN9HLxeCimFn5h2ZVEizsF96jRvTSOju5xYEARseF11K0W+1Uzjc43F3N/47rHuS9YQ5D/ZWTbMUH1ugLwSGfyeGGG6yjJ+kv3GR3QrNn9FyyUiMw1fuJBd+vMuJtYrOmYTyB+awfT3AdUhc1Q1uuom+6x9VvhZxGJNMSfg2ZIKyjnft/QnkpecW2otqjGkYogjR+P5o/ziWYVOgiivLfts7c8km4eaGr31MwolQj0AHWsTkJ8tAN/yqGWA8tpwTjTr9nOl/gBtqTW+v9QvL6zpe4jCA7QCEt3DSIm2EpZh8WKK8Fp+Jem6wQg22jh20BLWHsOFRDoBOZvWgbphO6Vm0b0S/7of6DDIUXX7paimjLFssnxSg2uDaQSkNj/K2N4dSivNZkEnmKbr2EDTsytr7ym0onv69 6Nmn9IU+ +lUi51yZglgkV5RxM+5hSVukhUPr8HZZdopShw6F3TkSKhYUTJIEIIJNQdzXAJ0bJ5Oz6Ie7hNp86oxtL/S0UiTjjXbBH0OL0Uwtrq+1tfvIDYZHs6EmdEizovqXriSmgXHf4LHiAH/g7TDDuF6OE2NMgccMiA1Oi/NlXre3yVCFkO/QlVCypdAzDJbdAi9AV0bUQe736A+3kMGIpXJJZF4iOCflFqYh1GKGwdF0ZFenwRJ5X1+4OZ9u2LpboEo9ElgYGQUGg4CPhOHsQ1XWO6R0qJYcNX6k7WMzl64bt75sa02InmxZtSIwvAPx0ZUq9iO1e5tO1Xk0sFJ/tdihtcV17siDLysDtOnRyU9rsjVS6NGwjtDSjLnuD2enEDWb3xtgyb4EK3BfiuBFR2DmKVoD102sLquCiJEVROHgDhEf8cIRDJxXvNGgJhGWc34JvOqBKVVs/o89aGgDUMfYakeZ2vO1CWPoS142ReLNs2GUcMHE= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: Make CONFIG_SLAB_MERGE_DEFAULT default to n unless CONFIG_SLUB_TINY is enabled. Benefits of slab merging is limited on systems that are not memory constrained: the overhead is negligible and evidence of its effect on cache hotness is hard to come by. On the other hand, distinguishing allocations into different slabs will make attacks that rely on "heap spraying" more difficult to carry out with success. Take sides with security in the default kernel configuration over questionnable performance benefits/memory efficiency. Signed-off-by: Julian Pidancet Reviewed-by: Kees Cook Acked-by: Christoph Hellwig --- In an attempt to assess the performance impact of disabling slab merging, a timed linux kernel compilation test has been conducted first using slab_merge, then using slab_nomerge. Both tests started in an identical state. Commodity hardware was used: a laptop with an AMD Ryzen 5 3500U CPU, and 16GiB of RAM. The kernel source files were placed on an XFS partition because of the extensive use of slab caches in XFS. The results are as follows: | slab_merge | slab_nomerge | ------+------------------+------------------| Time | 489.074 ± 10.334 | 489.975 ± 10.350 | Min | 459.688 | 460.554 | Max | 493.126 | 494.282 | The benchmark favors the configuration where merging is disabled, but the difference is only ~0.18%, well under statistical significance. .../admin-guide/kernel-parameters.txt | 29 ++++++++++--------- Documentation/mm/slub.rst | 5 ++-- mm/Kconfig | 6 ++-- 3 files changed, 21 insertions(+), 19 deletions(-) diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt index 9e5bab29685f..5fbf6ed3c62e 100644 --- a/Documentation/admin-guide/kernel-parameters.txt +++ b/Documentation/admin-guide/kernel-parameters.txt @@ -5652,21 +5652,22 @@ slram= [HW,MTD] - slab_merge [MM] - Enable merging of slabs with similar size when the - kernel is built without CONFIG_SLAB_MERGE_DEFAULT. - slab_nomerge [MM] - Disable merging of slabs with similar size. May be - necessary if there is some reason to distinguish - allocs to different slabs, especially in hardened - environments where the risk of heap overflows and - layout control by attackers can usually be - frustrated by disabling merging. This will reduce - most of the exposure of a heap attack to a single - cache (risks via metadata attacks are mostly - unchanged). Debug options disable merging on their - own. + Disable merging of slabs with similar size when + the kernel is built with CONFIG_SLAB_MERGE_DEFAULT. + Allocations of the same size made in distinct + caches will be placed in separate slabs. In + hardened environment, the risk of heap overflows + and layout control by attackers can usually be + frustrated by disabling merging. + + slab_merge [MM] + Enable merging of slabs with similar size. May be + necessary to reduce overhead or increase cache + hotness of objects, at the cost of increased + exposure in case of a heap attack to a single + cache. (risks via metadata attacks are mostly + unchanged). For more information see Documentation/mm/slub.rst. slab_max_order= [MM, SLAB] diff --git a/Documentation/mm/slub.rst b/Documentation/mm/slub.rst index be75971532f5..e2549f4a98dd 100644 --- a/Documentation/mm/slub.rst +++ b/Documentation/mm/slub.rst @@ -122,8 +122,9 @@ used on the wrong slab. Slab merging ============ -If no debug options are specified then SLUB may merge similar slabs together -in order to reduce overhead and increase cache hotness of objects. +If the kernel is built with ``CONFIG_SLAB_MEGE_DEFAULT`` or if ``slab_merge`` +is specified on the kernel command line, then SLUB may merge similar slabs +together in order to reduce overhead and increase cache hotness of objects. ``slabinfo -a`` displays which slabs were merged together. Slab validation diff --git a/mm/Kconfig b/mm/Kconfig index 7672a22647b4..05b0304302d4 100644 --- a/mm/Kconfig +++ b/mm/Kconfig @@ -255,7 +255,7 @@ config SLUB_TINY config SLAB_MERGE_DEFAULT bool "Allow slab caches to be merged" - default y + default n depends on SLAB || SLUB help For reduced kernel memory fragmentation, slab caches can be @@ -264,8 +264,8 @@ config SLAB_MERGE_DEFAULT overwrite objects from merged caches (and more easily control cache layout), which makes such heap attacks easier to exploit by attackers. By keeping caches unmerged, these kinds of exploits - can usually only damage objects in the same cache. To disable - merging at runtime, "slab_nomerge" can be passed on the kernel + can usually only damage objects in the same cache. To enable + merging at runtime, "slab_merge" can be passed on the kernel command line. config SLAB_FREELIST_RANDOM