From mboxrd@z Thu Jan 1 00:00:00 1970 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 6A275C282EC for ; Mon, 17 Mar 2025 05:42:42 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 90F92280003; Mon, 17 Mar 2025 01:42:41 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 8BE56280001; Mon, 17 Mar 2025 01:42:41 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 6E934280003; Mon, 17 Mar 2025 01:42:41 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 477F8280001 for ; Mon, 17 Mar 2025 01:42:41 -0400 (EDT) Received: from smtpin04.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id 11288141796 for ; Mon, 17 Mar 2025 05:42:41 +0000 (UTC) X-FDA: 83229948522.04.FEA1509 Received: from mx0a-00069f02.pphosted.com (mx0a-00069f02.pphosted.com [205.220.165.32]) by imf01.hostedemail.com (Postfix) with ESMTP id 3527C40003 for ; Mon, 17 Mar 2025 05:42:37 +0000 (UTC) Authentication-Results: imf01.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2023-11-20 header.b=Dm81Husw; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b="Y2Pkwn/i"; arc=pass ("microsoft.com:s=arcselector10001:i=1"); dmarc=pass (policy=reject) header.from=oracle.com; spf=pass (imf01.hostedemail.com: domain of harry.yoo@oracle.com designates 205.220.165.32 as permitted sender) smtp.mailfrom=harry.yoo@oracle.com ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1742190157; a=rsa-sha256; cv=pass; b=BMVgkesTxHjlrfBHpZZe7scNnCw1xezekPoYPEa6LULtGjfHA9nkVslxeyL1UWsdHdfiBO X2YLi7K8+Ez8UXjq0/90x+IxtE4aO2yWYa0Nae8gwV0eLPzc6irKmP1MwxtHXuI5II+ho2 Q8iuPu7+SmVd2yc8nrgjAdPeENYIhao= ARC-Authentication-Results: i=2; imf01.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2023-11-20 header.b=Dm81Husw; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b="Y2Pkwn/i"; arc=pass ("microsoft.com:s=arcselector10001:i=1"); dmarc=pass (policy=reject) header.from=oracle.com; spf=pass (imf01.hostedemail.com: domain of harry.yoo@oracle.com designates 205.220.165.32 as permitted sender) smtp.mailfrom=harry.yoo@oracle.com ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1742190157; 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:in-reply-to:references:references:dkim-signature; bh=ZhX9dDTU0NvSE9iCL2Oq9rrB/C1CKEFysTL67F50U/w=; b=U0osmY+iqEnqPAXQV8z6HAkaBOJokxUjzFa7prxvTBRjj49nPIwG86xsnT12wRSiDsbYGA l/8DcSHAJoLD0cumLOEObHvYtFoDeuqYGLI1fBU/NTzAE14bafRmUqITgJf+kXfliLdOwm HtPEn2I0NUkbADrUbnSCxIa6m9QGbvQ= Received: from pps.filterd (m0333521.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 52GLJL2l011959; Mon, 17 Mar 2025 05:42:27 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=cc :content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s= corp-2023-11-20; bh=ZhX9dDTU0NvSE9iCL2Oq9rrB/C1CKEFysTL67F50U/w=; b= Dm81Husw3h29O0WCbpzeUEQKfcGDJYBG1oVIj/oAGXWBSom7NNmqFijo8Y1LiiLL rOVPitcOuwamRQT8xDYBDA2x3IGxUhRGwH00yZyI+hO1Hv0CxsevbAuIDbJsvnx7 BB+1UlmUrHgzcLIsONagXGuD8OFKTD6lFrCSIKStLCylFzcjVhWbGxxEbi6SYG10 sIDURRNyPxrBh9dp74bj/Y3yxPieq3NGMDJZHeiFsfNIgxLJ6ZFKzd7rxEy4Gx6G qhQe3AO2mUW2cFLBybeotDRmqo2L8edTXU0it8hWhJZBQ5or52N1JBnvPz0HhxuE p152n4dePVtzcchd84K+Fg== Received: from phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta01.appoci.oracle.com [138.1.114.2]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 45d1s8hxfb-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 17 Mar 2025 05:42:27 +0000 (GMT) Received: from pps.filterd (phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (8.18.1.2/8.18.1.2) with ESMTP id 52H3jLLJ023558; Mon, 17 Mar 2025 05:42:26 GMT Received: from nam11-dm6-obe.outbound.protection.outlook.com (mail-dm6nam11lp2168.outbound.protection.outlook.com [104.47.57.168]) by phxpaimrmta01.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 45dxc3qnfs-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 17 Mar 2025 05:42:26 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=a1+xcBdWdVK6L+vnehgP2vFmu8mQQpEgIzWT1HJDo5IlAfb4+qt6ZiA7aHFPGJV/y93AsQWLLr3D1QXyCSdWTCgH09PH9qx/kQhnRjivMtM9nXXs0BlEPYbRkKbvv4FW++wer+A82WjYAamrVwmg+k0IUk/lLf/7/5KAMJZ/ntbm6nPRQHE8sv1a8Ba0WE+l5aG78CDNfH5G8pVoXRtixdBuIz4WthYOi5ZcVfEpq+E9A7b1i0Qx9hHriXsj8OH/aSj9g0Sef7TVbZxRPmdc4mWzqq+GGNBryUdP46GG/xkt8HpaBnD2YMC3yG6koEAjVHVx35t6VQ/3tZSmgbqQ7Q== 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=ZhX9dDTU0NvSE9iCL2Oq9rrB/C1CKEFysTL67F50U/w=; b=Vdfp/ZVsS6HXqfO7lUg23O/CU764ZpAkUjgdUDELA4b/eYrYHfDUVyRMcVViSb3D3izSmm9fU0V/3gLdTOKQuEise4lWHWCAkPv6SjNutWrZ12WXTyJxbCqyC50/RzWCQwVZ5ZBnMTAoRqzSyB/jj+UhEL3R6E4cLm/9Gb1IPWC5fOrZ5/VJqGduI8/fI+oFpQ7e04kDXOYJqZfoWlUMk2YYICLlM6Kf1GB1PkKp/Q79gNs6UBhGqp55p+xCUb0NP6ewmktcOO7+FlatFjBFApFYuGYFsrn2pQxrTj1tYAP+ei5/qCatBxwYX70B9r47hsNaugCZHabSTsqZ1AxpGw== 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=ZhX9dDTU0NvSE9iCL2Oq9rrB/C1CKEFysTL67F50U/w=; b=Y2Pkwn/i0SP0g1+xzGq0fLkuSSyUskICPH5rslz0TPWo3YniM9le1OZ011Kkx78kE89w638mWKIhDvqd8DHaFrylX+n5jBlz2Gq1wwHHG1cZyLvnJ/mgUgf3/S1iPBw68ba0eVPwaDM1Ho1tdHJkodJ3iwmPYovZ+GUwjeDJ4Io= Received: from CH3PR10MB7329.namprd10.prod.outlook.com (2603:10b6:610:12c::16) by LV3PR10MB7746.namprd10.prod.outlook.com (2603:10b6:408:1bb::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8534.33; Mon, 17 Mar 2025 05:42:19 +0000 Received: from CH3PR10MB7329.namprd10.prod.outlook.com ([fe80::f238:6143:104c:da23]) by CH3PR10MB7329.namprd10.prod.outlook.com ([fe80::f238:6143:104c:da23%6]) with mapi id 15.20.8534.031; Mon, 17 Mar 2025 05:42:19 +0000 Date: Mon, 17 Mar 2025 14:42:07 +0900 From: Harry Yoo To: Mateusz Guzik Cc: Vlastimil Babka , Hyeonggon Yoo <42.hyeyoo@gmail.com>, linux-mm , Dennis Zhou Subject: Re: a case for a destructor for slub: mm_struct Message-ID: References: Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: X-ClientProxiedBy: SE2P216CA0096.KORP216.PROD.OUTLOOK.COM (2603:1096:101:2c2::17) To CH3PR10MB7329.namprd10.prod.outlook.com (2603:10b6:610:12c::16) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: CH3PR10MB7329:EE_|LV3PR10MB7746:EE_ X-MS-Office365-Filtering-Correlation-Id: dffc52b2-ab9a-4d83-44c1-08dd65167b34 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|366016|376014; X-Microsoft-Antispam-Message-Info: =?utf-8?B?WmE4NlpDeEc5SGRLRnBaUjlwRUpqVUM5SnNFNzJZNXgrcXRlSVllTTFVZ1h0?= =?utf-8?B?MWVXUzBkRyttV29sSThZSWdtaEtVSTgyZ0pmTVYyNVBxbzAzRjJKSXVNWHN5?= =?utf-8?B?UUtNSTR1VDh5MGJzNmRvZDVPZjl0QXBWNXg4WTFIQStoZzh3OWVYK1duRGtD?= =?utf-8?B?azdOT0llRFJhNGViZXpHL2VsdjBROEp2MUVRWEljVkowSDRnM0Q3N1g0NmxY?= =?utf-8?B?cFFKUjVpVXg5aHMyUW4yNmsxYmdSczdGa1NXd0RSMFNlSlBSYUJEcS9oYUZU?= =?utf-8?B?WENzdEJoYS9KeEg3WDZCU0FteXRhZUNwV2dpREJrcTdOU2lxSWdRdTczeU5J?= =?utf-8?B?bHl6Szc2M3BKKzRTSTNkK2hTMUVIQzh0NnV0YllNN0JTbTlKMjIyaytrb05O?= =?utf-8?B?RFg4RFlYNFFrN0VsdWVkOVhUaUpDVDdoZlY0WUVlWTlRVGhWeEhrSUYveFBI?= =?utf-8?B?U1NoV3dpTWVWdm5VdUJvcTJDM3QzWjB3aWwyRDJLV1ZsSFNKSmI3MFVraXdD?= =?utf-8?B?TVZ1M2U1YUlYZHcyVExETDByZVdmSUhWbXN1ZiszZzFZcGJEVWJnUEdocnd2?= =?utf-8?B?eURlM20wVkhncFFOVEdvZkplei9TMDBTT0dTK2tVQUxEd1UvYk40MTkrWEoz?= =?utf-8?B?ODMyc2RaN2k4RDBDOU1zd0oyOWpvRUtiV2pmbHlSNlR4c1RoZFZTSTJ0TVRU?= =?utf-8?B?L0tsVkNhd3o0aEpSam1hZ01KSmZCT3NuVWlGT1dyU3o4NGZwM0ZlVmVwOG1Z?= =?utf-8?B?SGtWK2F1WTYzbERYSzRjNVlCRllESVRSSHltK1BYa2ZvVEpkcmFlTm9FeHNy?= =?utf-8?B?OTNLV3VsMkltQkx1MzdyS3RpM0piWUhOekZLeFJvdUJ0T0F5THo4c2NXcWVE?= =?utf-8?B?dWdvZER1ZU9aZEY2clM5TGY5NjVwdEsxS00yODlnYXk1ZW8ya0wzb0p1dCts?= =?utf-8?B?Tm9MUU41VGg5eTZrRFAva01NdFpYU2ZCc3FRbHJzM01LTlZYLzFNTjZaSzRi?= =?utf-8?B?UVJvRDVZSmx2UGpkczZpcUVJdi9MMkpYZ25zSkN5WTk0b0NvaUtFRmxHTWJn?= =?utf-8?B?c1pHb3QrZTlTL252emJMZzNHcGg0cHlqQnByUFBFSkRncTZIWVhYaml6K0hG?= =?utf-8?B?UFZaOWxHdTBpL25vS0xYMHh0VjZIYmRwRGlZS3VMeDBBVTVhdDFTNjM4VHBE?= =?utf-8?B?eXZGamd5ekRKUVZnTWNicDFESk5JbXZucFVMTnZRVVpiTmNYcU1IMjNNWFFi?= =?utf-8?B?WHdoOXhpdm5GSDJZVUVBakpjbU5KeXFIQmljOXhnNGdnMWxzQm9FQlJlWXJQ?= =?utf-8?B?aXlsTEFxbWcyZ0x5SVVQckQxMjcyNktEU0xNSFF0OWF0VWN5dGJXZ0J5ZW40?= =?utf-8?B?bWRxek5jcjJUVkhoa3lSZklIcmlZbWhGelZxam12OG5KRzJ0NHpNeWpNV01s?= =?utf-8?B?RmZFbS9wM0FtSG5DRU9NRWwwRGduelZMaVFmNk1nSGkrVGpnNHhWUHNMSjRw?= =?utf-8?B?VkJnRHBlTGdnVVUxQ254dGp2WjkwL3ZRTVpZU0wyT21IWk5JcjZJaHdQMG5G?= =?utf-8?B?ZjE4NTM4N0RSZlFacGtWeVFza0hSZ1Q4eTJ1cUpPRjlYTzdJalh2UG9hQzV1?= =?utf-8?B?c2o4YWphR0JoWWcvcmN4Sy85RlhEVXdrM1VFWGc4N2htTjgxbGw4dnkxNUxy?= =?utf-8?B?UVQ5T0VQRndMNk4vVlBZRlpLZTZKVnhkSjZwOGhpNUJnLy9TQWdlemg4aFAx?= =?utf-8?B?WVFndHFFelZBVTZPcjlDMURLWlZoM3BNWVJ3SnJtQUtzelUybGl1dlNqMzFI?= =?utf-8?B?NVJzakQzd29qZzNRUGRheFNUaWZNUjZwaU1EM21wTWo2STNaVW5wRFhuNDJZ?= =?utf-8?Q?O5B4wwzTChXUZ?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CH3PR10MB7329.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(1800799024)(366016)(376014);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?SFJNR2I4MWRRM01OcUtSdE5JMXd6UTFCeUZGaWFWWk0yUDRSeUw0cGdqYlNl?= =?utf-8?B?OWpyT0grbGVTK0k4aGlVVWtQVXIxMk0vb2NGUHVkUk5ZOFBta1JzWThoTmRH?= =?utf-8?B?b3VEMVE3b0M2alJRMzg3Z2NEckF1VVZRMGx3ZU1jcHZaVnBkOXd5L3Qra2lp?= =?utf-8?B?V09lUW9McFgxWWRhbnAyTUdUQ2c5K0RpbjI1eWE4dG5yTG5BR0Y5RGVpdnNI?= =?utf-8?B?cER0Z0h5L0crSDh5YWJJVGJEb2VuQmtqMjNmcE1BSGpTLzJyYXp3a1VOd0lq?= =?utf-8?B?Zzg2RW5kN3JoQk9iZjJTemlZWkdnU0xqRlNHb0xRdnlMSURpSWRLeXZEQ3Bs?= =?utf-8?B?UkpvOHovK1ZTaUVvRHpoVys2NlVsSTZOMVloYTM3YzNwVkZWZFk2R2FTUVRT?= =?utf-8?B?ZThBazd5SUU5a0NMNmJZbThFOWRNZCtST0lRR3JFWVFyaXZmYWlTZkNEMFNj?= =?utf-8?B?dHVSYXhZZEpPR1RmcFdrSGk1NXY0K04vajBXMlRrUjY2QXVreVIyK0NaQmVZ?= =?utf-8?B?cWk3TkVhNEd6c0lyYWg3NjVqNlFHZ010V0ZGSGtyMHpjNjllR3l6eERNd28r?= =?utf-8?B?RXArQTVuMlY3ekNIRzNsQWJwbkxWNXFqeW1tU1VpT1A0VkRlalR5RjBOalRL?= =?utf-8?B?Um5hU0k5YzQxNkFVdUhtc3liRUVqZ1pFbHptcE5XbEVsTEVyT3JzMjBjU0Fk?= =?utf-8?B?SXV1VFoxbTlhRTkxLzl1dlErZlR1NFhLSGs1c2lOdVFBTmF4enRhdHJGaSs4?= =?utf-8?B?VFRlblRta1M2L2NzckZXOXFSY2xRSUp4ZjRsakR1dzhJSFNjbHpETCt0TkRK?= =?utf-8?B?MXNWbmp0RmNGMlMwdklmcDJCczJNQTVlc1o3dnRRZitKUEZVSnNwMUV6RFhE?= =?utf-8?B?YmwzOFVESWIxbkRkeE5scHZ2S1JRL0hmVUY0OXlRck84RjhYUjk3bUlCaEtt?= =?utf-8?B?akNBQzF3cXlPbnduOWxLMFpHNHE5MGdxazYwclYzMTBZNVdVd2J1UUgzcE1z?= =?utf-8?B?SG9DZFI4c2M1QlNWYWR1UEJtYjBkMGlGNVpTRkFJOTZyd201YVYvRmpJbXcw?= =?utf-8?B?ajB3VFBtTEVobVVKZnZlaFFSR0FsSTRBSXFWNmppRTRReE8xRzVFR0owbjVT?= =?utf-8?B?VFVCcmhpMjE4am83RDE0YlB5ZWhGeUlkUVllQWcyVS9ndHRBUmFLa091UWh3?= =?utf-8?B?RnVlMkJuMkU0UGhVazdEL011aVhyZU14TXZkRWRSbGp5RCtWQ3g4T3ArUVJv?= =?utf-8?B?N25IRG9TNkszWE5pbWwyMkY5UFB0byt0RHFydEloOTFid0hOVE9IbzVEK2x3?= =?utf-8?B?MTd5amU5R3hHM09aYXE0UnNsRkRwZUNKTjlVZ3pMbmJDdG1GVXhaYmFXMEFj?= =?utf-8?B?Z1BuRUVIaWxoenlFVUMwNGdhb3E0SUNxZFRtS3hPcHNOci9OcTNRZmkzS0Zj?= =?utf-8?B?QlErU2RJUUQ2TjFyMUc4VG16c3V1aWZKck1xQUpSRlZ3WkhNdnNha2Q5KzFs?= =?utf-8?B?ZCtZMURmdjV5eVMwQWZHOU9JTjFNNytEZVdSSWs0TEZJZU1iek96b2NXOVAz?= =?utf-8?B?V2tMYzdHWDVOWGhrdGRNSE9jZHp3ZE11VFpSVm54ZDlWdzlWQjNqdStldlZx?= =?utf-8?B?Qks0a2l5N1FZdVBkRUFuNDdJeTR6RVFRU1BwU0pyMDdDNk5wR0J3OFVoaU9z?= =?utf-8?B?VXlBbGhBajIxQW8vNXVLL240OWViQXAzV0lpR25JSklleFNlai9wR1VkZkl0?= =?utf-8?B?QTRxR0NZODFzLzFpRUhyMkZxSE1yaHhVUG40RCthUkZ2aVM5NS9PLzFvVnI4?= =?utf-8?B?WUU0VG5XUkNLTThKak9UOS9nNEdFQzl0MTU2d0FnMHNFcS9ITi9OVUxqdEZ0?= =?utf-8?B?NEd3NGhkN28rQmY4ZzVrTDhQam1nWFh6WjBUNnl3dHRVOVlzWlp6Qm96WmlG?= =?utf-8?B?Mk91alJ5RndzRDJmcnJCZ3dwRnNsQldsbk9GSTNnYmpiUjBNQjZzek5IM0JH?= =?utf-8?B?UTAwRzc0S2tEWlQrRUVQdVE0TS8xV3gxaWRrenZWUVlXN3JNVTVlRzRGYkgr?= =?utf-8?B?ckpiU3FxWW9mY1dDVHdlb3M0MW9qenlWdlY5MElMMnNmZ1BZSGNPNi9GV3Bw?= =?utf-8?Q?IQLvzU7Qo/JK1IQ33J4EO4Kvt?= X-MS-Exchange-AntiSpam-ExternalHop-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-ExternalHop-MessageData-0: C2JcVCabc2rOCvjECHcBcHayjlBgTYTd2xYAdTDIjAcbR1dczN7LFRbv27STWr+qb1BW/yVVspNGN7xpiiVy+RgEo+iFC86i+MGjaK1+WhHU4lCPvbRy3AV6OBpGt3W3H+kEo1tFMVyKkWwgo3uJ5c8VstzPgtn1mmF/bpWuIb6cLNZbOe4bf7O0GsWaVW82G8YM2/zyEOd2eU0rFBoliLgzMrmO3Xt8gI0BXkth3EUzWy2osHbYp+CtJh+2L/+IblI+ojv3vJQxuBwO6vnq2H0Nr3/E4hK2Ku+/+zFpr2PXAkrSR7/680VvH1idglMdAq8iKkwx2SN2FR57OHQhnQuqcnqO6XvQjZhAp1S02hU6my708XsbM5HK/5KkzCj3X4hdq4eJQTIvy3wIYSKxG3uJIK7IIEy3YZ00CirGjI7DCP0soqvz99OKbPhIbaOIeO96pX8YH3dJonscY/1/4a7kTHHd2eNGBjHWgB5H/FHi6rq9+6BGPrAlD2pDOZ4iBJEctYUUtxv6OpWkBBfH2OovE/7jPQ9RYuYGVUMHtDv9Sav5bRjQvmu4I4XNOFMJhuW9EzKdrAM6yr81NG3cphePgriDZ8RFsuVSBTuqTX0= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: dffc52b2-ab9a-4d83-44c1-08dd65167b34 X-MS-Exchange-CrossTenant-AuthSource: CH3PR10MB7329.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Mar 2025 05:42:19.0560 (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: k+ZnNYvSq1vjxkw7q4M0lERIDaUJaW/dl7CNf1EIOkcYasbOr4Zc0l4SfcfthwWYwrEKDrBpLYBftUdtnqsydg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: LV3PR10MB7746 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1093,Hydra:6.0.680,FMLib:17.12.68.34 definitions=2025-03-17_01,2025-03-17_01,2024-11-22_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=0 phishscore=0 bulkscore=0 malwarescore=0 adultscore=0 mlxscore=0 spamscore=0 mlxlogscore=999 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2502280000 definitions=main-2503170039 X-Proofpoint-ORIG-GUID: xt6M5X2OftO8RTEaiJ491_EDs0cxLPeA X-Proofpoint-GUID: xt6M5X2OftO8RTEaiJ491_EDs0cxLPeA X-Rspam-User: X-Rspamd-Queue-Id: 3527C40003 X-Rspamd-Server: rspam05 X-Stat-Signature: 5ofg4r9kkyh7k5etktera5p57x17m4hi X-HE-Tag: 1742190157-783262 X-HE-Meta: U2FsdGVkX18AOaqZHvNTTLSTzlFCRolnTUtsdPMqVR2PLTmlHzM1iyRLIj1VdNgmXdvc68h6VmBVE+LE0vK3+NsoO9QuozXfK0cFl+qlby0jym5taa30MnQkFL5Mp8ut0ggs2dC/bHYLR9T+xTHMAAddoSxFlnEN2mxcsqBVsi/H0Fik7lVaAH6Viee6arJ7VYG5jigP6rO26pvFPi0BvB9ZsL26dpzA33xg1wGhjt9c4Ok2+tnm/fSmNOluZ9zJFwUPrPcNzgLtjraw6jIGYyyMSbg8F63emXp/KeqtdHCxPjzB8yrHTfIOHd62BPF4JiKK3yEBA1miCTCMg2o8g04RUjlzt8YKHAB2Bv7CnkQeHsNQ3sqZ5ex7/EjhVESxQ5FWKZPUVtOUY0CpTYJoeQZGqTBR3J4VJlWZwIjpSyccCmklDKRyAT9PbUYF8FBypg1/LqXRfwmZTZbx7xs0JkbNjanfACtSEt0LSuT/XDuMvsvDWuaeVthrtoqziiSkE6O8jvQufs3It/6zPck5APzWbe+mcic8swi7mhz5NfG2FzKmdPekVKSqnuKlO1KpCZxM4PjGf7rXYeFq0MzDRtn+sO0JC6lMgYdPob+mddJkq3+Su6dPIQyiUOLKl2lyGZKgLUf1pb7dX7ByLwH43th67CJo2slwN9zgll3FgKcIbEN+4/MxkN71E0s25r5Nojah/Bc9mWu/g6kKNppPUpvoY9LfbQR8vgrg+yvMJQsG/Gen6GAm/HBqbXvIpxaVjvjP1AVsPchzfRwVV0dl32VgZzSFscww7iSjZBWrEz0UBzXcKSyqc2w0OADfd8FGk16pBXB88nVHPcugTZd6j6gn6yL64h9PxZo+We2eZ1eYdNdD77803ECiPFdz0ttOlvIAG9O47Q2rHqdH21KRL1BPb3N353t3Q0UvFZYJz8RFijA7AyoaXy43U8IJMGPWrMRVS7lfE1noZSPZtrr Li6A0mJc Q0um25zydnnaMJlk5cteadf+52VR9tKvFHwqBnIlRSvmqFawCnazvzJlWlC5CU1c2CBy3e6rFMv75uy7sbQYMiqwUqv2TTzbEUckZgcvHw7cxr4FNKP/7VlyGtRSCSIJ2Pb9+CICXJCbnx96sVacPCzKCwGYzYGAbJK2a535LokH0fJDZpatb4C0+cetJfYfF5ImqjmmSj7s4kTF/7gFP3+Agsetu9brgUhETQrWwm1sImToj0Fxb6LkQKJ6xLuXmBDgJ0NSw05t4XP6lnzufx6z1C+UbjtEZwNh/Ub3t+E2mWSkAx8BRQtvqmg8W9EMmGShB2iO3myeWD+NhjcqPB5aCofiYxsxvGf0/w5ES0izrGLhavThj8DIDHWsohm2OipmPIb2PrIj7sF6BH7kN0U6CgIrY7hJHGUNy4lPOmk7CJ4VJ95KaISrJiFAJln07yIeJdQ1FWLOIQnuvIfa8MxeyoNsCpBWa4GDr0FCVoW2OxjiiyCapp7wBZDtUsGLt9vGAICiB775jA/Rg/VWRF3AM8hKs0tycjGHifT2c6gDhsTXuau5/ctn046fC1wITmCWyvob/6PIqHMQs5UOueZmiORL72qikXYUHz7A0Dz4gVVlkzgnqf6DG5q38ZiQkX58uZrBRkNDDMVC5DU2oAJk1Xid8TbOEVL/dvVwri+r9reBf4RdDDYabCF2fBmcGF3fNoWhMNqRtKg49uH6YRYuqgAf1S9Rux5TIFiwztu5CDuHaSFmotslptyuqrDzmWMi+ig/tKWMwsDJBkCDf1d7QV2QL+C1ygyjBwPd1FJJ81jbyPkVyKqF5HuTN2A1BZ8ujOwReHwuL6P4toINa6ovGRhiSola0mIqPMa83IMzZreNDKfvZHUHVGg== X-Bogosity: Ham, tests=bogofilter, spamicity=0.000001, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: On Fri, Mar 14, 2025 at 01:32:16PM +0100, Mateusz Guzik wrote: > On Fri, Mar 14, 2025 at 9:27 AM Harry Yoo wrote: > > > > On Thu, Mar 13, 2025 at 12:23:55PM +0100, Mateusz Guzik wrote: > > > On Thu, Mar 13, 2025 at 9:59 AM Harry Yoo wrote: > > > > > There is other expensive work which can also be modified this way. > > > > > > > > Not sure what you're referring to? > > > > > > > > > > There is pgd_alloc/free calls which end up taking the global pgd_list > > > lock. Instead, this could be patched to let mm hang out on the get > > > skipped by the pgd list iterating machinery as needed. > > > > Okay, IIUC, you want to remove it from the list in the destructor > > and not remove it from the list when freeing it, and the code iterating > > over the list needs to verify whether it is still allocated. > > > > Would this be with SLAB_TYPESAFE_BY_RCU, or by taking a lock within > > the destructor? > > > > The RFC patch [1] that removes the destructor states that "taking a spinlock > > in a destructor is a bit risky since the slab allocators may run the > > destructors anytime they decide a slab is no longer needed", > > but I need to think a bit more about how risky that actually is. > > > > [1] https://urldefense.com/v3/__https://lore.kernel.org/linux-kernel/Pine.LNX.4.64.0705101156190.10663@schroedinger.engr.sgi.com/*t__;Iw!!ACWV5N9M2RV99hQ!LWzNjGjW2lHHrdKWHilJ8BXUlkkEPrOlbI6Py5pptw_gPpPMH03guZnDYgYrAtMuyMEmMwgWrg6gKuQ$ > > > > It's a spinlock which disables interrupts around itself, so it should > not be a problem. > > > > > > there may be spurious mm_struct's hanging out and eating pcpu resources. > > > > > Something can be added to reclaim those by the pcpu allocator. > > > > > > > > Not sure if I follow. What do you mean by spurious mm_struct, and how > > > > does the pcpu allocator reclaim that? > > > > > > > > > > Suppose a workload was ran which created tons of mm_struct. The > > > workload is done and they can be reclaimed, but hang out just in case. > > > > > > Another workload showed up, but one which wants to do many percpu > > > allocs and is not mm_struct-heavy. > > > > > > In case of resource shortage it would be good if the percpu allocator > > > knew how to reclaim the known cached-but-not-used memory instead of > > > grabbing new patches. > > > > > > As for how to get there, so happens the primary consumer (percpu > > > counters) already has a global list of all allocated objects. The > > > allocator could walk it and reclaim as needed. > > > > You mean reclaiming per-cpu objects along withthe slab objects that uses them? > > That sounds like a new slab shrinker for mm_struct? > > > > at least the per-cpu thing, mm_struct itself optionally If we allow reclaiming per-cpu stuff only biut do not reclaim the slab object that contains it... Does that mean the users of the cache need to check if the percpu memory has been reclaimed and if so, should call init routines (e.g., mm_init())? > > > > > So that's it for making the case, as for the APIs, I think it would be > > > > > best if both dtor and ctor accepted a batch of objects to operate on, > > > > > but that's a lot of extra churn due to pre-existing ctor users. > > > > > > > > Why do you want to pass batch of objects, instead of calling one by one > > > > for each object when a slab folio is allocated/freed? > > > > > > > > Is it solely to reduce the overhead of extra function calls when > > > > allocating or freeing a slab folio? > > > > > > > > > > The single-threaded overhead is one thing, some contention is another. > > > back-to-back acquires are a degenerate case from scalability > > > standpoint. > > > > > > While these codepaths should be executing rarely, there is still no > > > need to get spikes when they do. > > > > > > Even so, that's a minor thing which can be patched up later -- even a > > > ctor/dtor pair which operates one obj at a time is almost entirety of > > > the improvement. > > > > Hmm, but I think even a ctor/dtor pair that operations on one object at > > a time requires changing the semantic of how the ctor works :'( > > > > For now the constructor is not expected to fail, but looking at > > mm_init()... it can fail. There is no way to let slab allocator know > > that it failed. > > > > Looks like some churn is needed anyway? > > > > indeed, i did not realize it at the time, sorry :) > > I'm happy to split the churn and add some 'return 0;' myself. Fortunately, there were only a handful users of of constructor ;-) Never mind, I converted all of them in an hour (splitting the work + ping pong-ing seemed like unnecessary overhead). Will send the patch series before too late. But please be patient—since LSFMM is next week, I'm expecting to be busier than usual :) -- Cheers, Harry