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 6C469C77B7A for ; Wed, 24 May 2023 12:56:31 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id F27F8280001; Wed, 24 May 2023 08:56:30 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id ED6D9900002; Wed, 24 May 2023 08:56:30 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id D9F57280001; Wed, 24 May 2023 08:56:30 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id C6251900002 for ; Wed, 24 May 2023 08:56:30 -0400 (EDT) Received: from smtpin30.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id 99ACB120985 for ; Wed, 24 May 2023 12:56:30 +0000 (UTC) X-FDA: 80825147340.30.264DE2E Received: from mail-pl1-f172.google.com (mail-pl1-f172.google.com [209.85.214.172]) by imf25.hostedemail.com (Postfix) with ESMTP id BED04A000F for ; Wed, 24 May 2023 12:56:28 +0000 (UTC) Authentication-Results: imf25.hostedemail.com; dkim=pass header.d=gmail.com header.s=20221208 header.b=X5JIciBw; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf25.hostedemail.com: domain of 42.hyeyoo@gmail.com designates 209.85.214.172 as permitted sender) smtp.mailfrom=42.hyeyoo@gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1684932988; 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: in-reply-to:in-reply-to:references:references:dkim-signature; bh=N/g7tBS5u6Von8EKmDLctwcChKzRVNgl5GIylDauKPQ=; b=FkhMV2JhphfNtmax/CmiIXmF0I5D9b6LtEzcoSXsvYCywC5DidS32k7AJlx/itHl5tUDpM DOMmpm6VGg2eGgd0Gh+30Fk/rofYenMEcST/UzpReuxHgk6EEyilyc0SvcRo2Mc4x9DeN6 IFCEnaDFejLptVeAH47iSVp0vGQOnZk= ARC-Authentication-Results: i=1; imf25.hostedemail.com; dkim=pass header.d=gmail.com header.s=20221208 header.b=X5JIciBw; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf25.hostedemail.com: domain of 42.hyeyoo@gmail.com designates 209.85.214.172 as permitted sender) smtp.mailfrom=42.hyeyoo@gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1684932988; a=rsa-sha256; cv=none; b=2jocuyI/E7TNYTJnh5J6142V9HabbbvsGRbN/P2/HMNJxkwXqWGWEpADRsFgYb6QjMGq7H nZF1ciioF/PTVtN+dDyziw7L3vZMSetbFM683v9X/9KuXm1Dj29dO3AvU4Y+CjTUnD+0+s GqWqYfeSlb0nzK/kMp6wVLqr4KS1KQE= Received: by mail-pl1-f172.google.com with SMTP id d9443c01a7336-1ae3ed1b0d6so1585745ad.3 for ; Wed, 24 May 2023 05:56:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1684932987; x=1687524987; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=N/g7tBS5u6Von8EKmDLctwcChKzRVNgl5GIylDauKPQ=; b=X5JIciBwn1ojpj7ZLSlq5M9BXCDaq1QZbmRr3XOn3BnnM5ivOyhS/6fYEZ71F+hwX9 SuVVYcnO3kuNX3tzXLKWMqZYYoh5Dac2cfAgVmqE/7SThLehyQjyt1po+HU20w5ttIR7 qc+bGiCxrisIYeMRfDyxhehMyMjIKkNxYuaA5W+QFhaC0EJdxe4XyxJqaRZeFdyFI6W/ B5OK+JreMF8Zt4H1V+gwnPZU0tvcvA63DG7ORAlZkmv6akVhCl+a6HqD4FI89CO6CMAn fY2Wn/fCFGQ+nl1U2CfrcjkfmpWPsN/s/YYtdaBe1ik1cggWzeHQV/4OxuEEENHRRbcd 8Pcg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1684932987; x=1687524987; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=N/g7tBS5u6Von8EKmDLctwcChKzRVNgl5GIylDauKPQ=; b=FA7Xo2es4p9PNSkb3zrzH2FBcC39KSYftb20e5b3i0anhjGi//5StiryffN/PEoCYF eVCKnyIb/8Jpkj1Hf6aILNZRfACo7tFsOWsCx2oc55XV2COEnd3U0fWW+Tt/tyurNKWZ Fgj9I3qA8N9NIX/TIJxC243fcMRT7So9odslH8Q2WclplbmjPwOXoIbaeuKAsN34LIGt kizukF6bNFlhJSGldato3dTEXqNwkUsiX2kMp0Cad98keyDn9n70pink2Y1s6BwcbR/C OiZDCysXNy9cKPPvc5o48CqsZI3/smgqMSc6xmITdZje5+OP8lnFnPfy0sxIIlQvyUe4 AFbw== X-Gm-Message-State: AC+VfDxqQTc4/6j7BR72U9SjGMYXmCA+aQydT1wvrL7v1AL37vv2ZLAC ntAGFtic0gDR/+qRoBrPbPw= X-Google-Smtp-Source: ACHHUZ4TEVvly0Ml+koYFbnHhIW11Y44PieE+NHbnKorGQLPAgDmlgSvgBiCxv3SOjfsqK7+oKydRQ== X-Received: by 2002:a17:902:f681:b0:1ad:e8f5:7c7b with SMTP id l1-20020a170902f68100b001ade8f57c7bmr21146312plg.62.1684932987287; Wed, 24 May 2023 05:56:27 -0700 (PDT) Received: from debian-BULLSEYE-live-builder-AMD64 ([221.158.187.64]) by smtp.gmail.com with ESMTPSA id j3-20020a170902da8300b0019a6cce2060sm8649195plx.57.2023.05.24.05.56.24 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 24 May 2023 05:56:26 -0700 (PDT) Date: Wed, 24 May 2023 21:56:02 +0900 From: Hyeonggon Yoo <42.hyeyoo@gmail.com> To: David Sterba Cc: Christoph Lameter , David Rientjes , Pekka Enberg , Vlastimil Babka , Andrew Morton , Joonsoo Kim , linux-kernel@vger.kernel.org, linux-mm@kvack.org, Roman Gushchin Subject: Re: [PATCH] mm/slab: add new flag SLAB_NO_MERGE to avoid merging per slab Message-ID: References: <20230524101748.30714-1-dsterba@suse.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230524101748.30714-1-dsterba@suse.com> X-Rspam-User: X-Stat-Signature: 1n5bge8cwhk13yw73jh6x9pkg4z6iau8 X-Rspamd-Server: rspam07 X-Rspamd-Queue-Id: BED04A000F X-HE-Tag: 1684932988-465235 X-HE-Meta: U2FsdGVkX19rTn4PRCWZAXP/usSdqu/ooO7LNTx+bDX0lPIRwbISx06jafCgRUQal6b4sweMPuLoKND7dVdUhDb1amZ8O1HonFIyHn8/DdRQp+e4UttVRyTRv5/XVNXijVMujlB5kwrp1iUHv/nbTnaLa+R5u4kyPCGAFswrN974yTd9PCyEwGn3mMSHVLnKd+iC0u4qyAb2QMK42SupZfEN2dq6nXbpyiUwaWa9G59dMBbyRlCoSdp6xeTYm1zZx4lI46ekB3Af8ivrSjlmIeisRnyYU4JngVGzZKbgIJqo8rRa5Yf2NoePL5GYYWdDBODQIos4mED97PgVtJ/pMNYYjZdATAcGdo9RT8Q3RJV1q5HqfASFqsZIWVtIKaAbZ44VDbPcnFnZo6Do+0rhTjjcv3BQDwN7C4Ug2wTuLQzcOndjNpX6VqcFqs3gdT0WoC+RnavSzb6D1HSYsYzDkyPSwz05KgkGeTP8ePHcdHF3uyIEvBhyVQHNTCY589uHyNEAWSoNyogvC76X7Lpe6wmy92Tfd5L+rLKQQXkIbJEANBiZUY14FuKnSHxh/xQD2CKT12fYuoFfQ8xlEKvFGYO/9KwESMues0iK+f8f9GE58yVpDmLX0dibEWOIFT/ES/wE6dVptdoQP3sDVlwR+6OtEQvAyWAMDJJRVoydLYDQQZXBmhwlKeI2oe5zSr8nYEtvXzMHvFc414ji1rHVJ0+o3G01ptTyNLQTJBdUr4BssmnzBy1dBgF8wjjiviJU0BPwle9iHw+2wMGQRMtx0M1fzgJtUvWSNHMKA5t4Ij3CGyuE0B6yjxWwC/R7BkvOHuPPgzB80XZVba+2lg+0gt49t/HnEEEYTGoFziDzoBH38mUgUcFqK373/4BnkWnCcysembdPmSi4sDj9Wk81paPdsnXkcRezxEjx8QMIsMk8trYra3Flo4IDHi6ydI2f1YZLOPWbaM1RbgLF2o3 WT0mNh+n 5cuFjW+2nRp3Q4NiKY4pf6+izf9wPPIj+4HyOhGBCq64jCD6lbRurvJhObLL7lfh9DKrdBE4uMQxdWUEcmALLsXl1cbIHjBXF1o/Iwi3JRpE6Al4c2khMM+dy9D2f4rDpBO3xxFwA2efMnct+B++NaU76Ts+oeGY5h50WOcmaMPMnEgEUJvZrcEkQ9M7GRYOj/DrDcsfZSrTY6BLaUAV1Q5l/ytPTBCQzz1DpyXwblFpgBFhZiXUZ7Oqvu8ae/tvECwjnR0r5so3SMxXkKGuJK9ucIgJDpZs11DWxTndKg+7cRkghveZF/AGT2b4yPUqLTGVm9cgMZ2csjsUxo5kLnrY9yur5BJc/lbZ2fjMqsM2VhfVaHI8jO02CS7ONq9GFeWOnY71ESGL6HLMRq4Loj8Mw0jo2EvTNgOCOr7yUOkdZYwJ02rbSsvDtujGHzDIdddCiZKbak9iDNMKlOMwr8v9Ev3ZabZdhSh19QP2udslGYZAL0wPZWhTe24VJPzCcuMUCTagYiaahB8zU06NvRh5qWVziVMt/9p/2bAV+9XwZaeZYFREjMKYBSUs2yvT5rDH33LphgEDsl+1aVFbgfMHm6EZm5iFxiZdGDlJQBVWml2Y= 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: On Wed, May 24, 2023 at 12:17:48PM +0200, David Sterba wrote: > Add a flag that allows to disable merging per slab. This can be used for > more fine grained control over the caches or for debugging builds where > separate slabs can verify that no objects leak. > The slab_nomerge boot option is too coarse and would need to be enabled > on all testing hosts. Hello David, There is no users nor interface to set this flag, I guess you're going to use it by modifying source code, when debugging? Does introducing new slub_debug option (i.e. slub_debug=N,pid_namespace) work for your use case? (there are some boot-time slub_debug options described in Documentation/mm/slub.rst) > There are some other ways how to disable merging, > e.g. a slab constructor but this disables poisoning besides that it adds > additional overhead. Other flags are internal and may have other > semantics. > > A concrete example what motivates the flag. During 'btrfs balance' slab > top reported huge increase in caches like > > 1330095 1330095 100% 0.10K 34105 39 136420K Acpi-ParseExt > 1734684 1734684 100% 0.14K 61953 28 247812K pid_namespace > 8244036 6873075 83% 0.11K 229001 36 916004K khugepaged_mm_slot > > which was confusing and that it's because of slab merging was not the > first idea. After rebooting with slab_nomerge all the caches were from > btrfs_ namespace as expected. > > Signed-off-by: David Sterba > --- > include/linux/slab.h | 3 +++ > mm/slab_common.c | 2 +- > 2 files changed, 4 insertions(+), 1 deletion(-) > > diff --git a/include/linux/slab.h b/include/linux/slab.h Thanks, -- Hyeonggon Yoo Doing kernel stuff as a hobby Undergraduate | Chungnam National University Dept. Computer Science & Engineering