Message ID | 20240224134715.829225-1-chengming.zhou@linux.dev |
---|---|
State | New |
Headers |
Return-Path: <linux-kernel+bounces-79652-ouuuleilei=gmail.com@vger.kernel.org> Delivered-To: ouuuleilei@gmail.com Received: by 2002:a05:7300:a81b:b0:108:e6aa:91d0 with SMTP id bq27csp1153840dyb; Sat, 24 Feb 2024 05:48:23 -0800 (PST) X-Forwarded-Encrypted: i=3; AJvYcCXNIZCv1gXt/6KZun21FuKYvlapXuW6zxJiP24OxKvcKuc3EBPVkiBb7NRCxgmqjmp9ISwb3ghBxNfG76A2EHQxlZDyiA== X-Google-Smtp-Source: AGHT+IGme+4lVfL77mLCCIWNELKvdobXlZQ+za47goegUGJrn27tH+zJntRq6uSdbpbjSr+6gDfQ X-Received: by 2002:a17:90a:9403:b0:299:3334:51d1 with SMTP id r3-20020a17090a940300b00299333451d1mr2258584pjo.10.1708782503375; Sat, 24 Feb 2024 05:48:23 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1708782503; cv=pass; d=google.com; s=arc-20160816; b=ZLOPzGPJnmH0GTUjsGj62hL+Ig8F9wx7s874nqi5bTGldRN2HCbsOJqLsjpNDxMM0k yI96D3D5bk59WsZnO91VbxRianKZ92VKbVzrlDwSiOhV4FqAwJbxs22F4vdGyOYyuFtQ M5nhjaWKUx9mlH1Tysckf4vyU3hNC2KHPpeObfx5Sy9zhwqj+aF7LM/GGv+/d9SdJA5V j1E1RtM4EUQOXQp6vbc3ylSUFhJirktcyMlX+vtt4j37IJy/PvxkOkvYWf0/MEFU7HfS MWhOFk/ICkJU2TJ7ZVdr25qlFrU/SlGfvRVDAinTVMj1/Df3q69qqrEJDrlnCdXHCAd8 Efxw== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:message-id:date:subject:cc:to :from:dkim-signature; bh=Ho3UnjUX0G/0cAL94mP3MsaLfyC4THaAsSQamvgM/pw=; fh=HefD8QgwFRNcKZtfbBkn7ljw2U7fPawK6QyhE9dpcho=; b=qdQa7T54onP6V6AmneGF29hzudgz9gtT2YLc6vj5iAff7TlrWb9a4gY78fEb8phVf2 Gb9pm5kyiXkuWmVa0CV4VgB+n4n9VqCIgLnUXaO7uIcSqUUtd/FOgXwR5QzMqnhBQGWG 7Ya27rKQq0ziA6mwhz80FrwfcbdYUIXAuqPQ6xfWQIadpf3JovNpxeSfu+KfBOV+3fvg 7nqkkSX3zxN6c5/hXY9j1s/0YDgF8WhO+jVJk8El83HAC4kC2Gfn12NGMzrbOlOqyvjM 2nqN+y7B2VTmFM8HdegwGLqsSFZlfS4XW3KguGKb1bo6wNthjFwo0rxlhZRDIW1MiBSX 2aYw==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@linux.dev header.s=key1 header.b=e7nv61Ye; arc=pass (i=1 spf=pass spfdomain=linux.dev dkim=pass dkdomain=linux.dev dmarc=pass fromdomain=linux.dev); spf=pass (google.com: domain of linux-kernel+bounces-79652-ouuuleilei=gmail.com@vger.kernel.org designates 139.178.88.99 as permitted sender) smtp.mailfrom="linux-kernel+bounces-79652-ouuuleilei=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linux.dev Received: from sv.mirrors.kernel.org (sv.mirrors.kernel.org. [139.178.88.99]) by mx.google.com with ESMTPS id 40-20020a17090a09ab00b00290b369b456si2720908pjo.155.2024.02.24.05.48.23 for <ouuuleilei@gmail.com> (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 24 Feb 2024 05:48:23 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel+bounces-79652-ouuuleilei=gmail.com@vger.kernel.org designates 139.178.88.99 as permitted sender) client-ip=139.178.88.99; Authentication-Results: mx.google.com; dkim=pass header.i=@linux.dev header.s=key1 header.b=e7nv61Ye; arc=pass (i=1 spf=pass spfdomain=linux.dev dkim=pass dkdomain=linux.dev dmarc=pass fromdomain=linux.dev); spf=pass (google.com: domain of linux-kernel+bounces-79652-ouuuleilei=gmail.com@vger.kernel.org designates 139.178.88.99 as permitted sender) smtp.mailfrom="linux-kernel+bounces-79652-ouuuleilei=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linux.dev Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by sv.mirrors.kernel.org (Postfix) with ESMTPS id 1133D282700 for <ouuuleilei@gmail.com>; Sat, 24 Feb 2024 13:48:23 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 5BB60481AD; Sat, 24 Feb 2024 13:47:33 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linux.dev header.i=@linux.dev header.b="e7nv61Ye" Received: from out-189.mta1.migadu.com (out-189.mta1.migadu.com [95.215.58.189]) (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 32156481A5 for <linux-kernel@vger.kernel.org>; Sat, 24 Feb 2024 13:47:29 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=95.215.58.189 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708782450; cv=none; b=bPt9SrJkNn30TxpQiqSsH4XShBKzLZ0rpN4ZzV8OPJLo28HnGFxV/iTQv2EZ2fd/BnYkXw+2L0tvmb2Wrx5rOheCFaLFanMJXXVzl7BaMH2z5u4vvrOBcc5jMZesrBhg5G64TWzox2+lF7ZEEEm8HpO7iuNggG7gh5IUQRR8BaY= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1708782450; c=relaxed/simple; bh=rd7aE2Bs7zSZDXtE9k0rqYhIb0LEAOqGjjkepCRrSVw=; h=From:To:Cc:Subject:Date:Message-Id:MIME-Version; b=VTjiIGcx79cnBYZgHAn+vxB0+5QxNHL6qCvQFYqvcWAqDT7zkhnC8XvwyqOcg7fVDS97CO6v1uFeKXdthGQiolJ5xoUnqK2ZI0NDjgoBHet7eXJvGXacxgGAP4mo2y1vce+RAHrcc7ExJ7ZChik1+l3aq2HiU6d5TyWUrU1fjtQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.dev; spf=pass smtp.mailfrom=linux.dev; dkim=pass (1024-bit key) header.d=linux.dev header.i=@linux.dev header.b=e7nv61Ye; arc=none smtp.client-ip=95.215.58.189 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.dev Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linux.dev X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.dev; s=key1; t=1708782447; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=Ho3UnjUX0G/0cAL94mP3MsaLfyC4THaAsSQamvgM/pw=; b=e7nv61Ye0jDbqkUz7jMCTV3eK0UvUuitiYM9KnDygUXl4MT4cjBnK90vNwbPfokCwyo60B fW0x+Dog4Xb9oK0TZgcU1Ko8x37ce+15tZ1YSVnA9GNPG6jxCaJg1s4Oyx98p+Sfa1qrSP YIUuVEuostxV4Rl4zTBfMEL8npqjMO0= From: chengming.zhou@linux.dev To: xiubli@redhat.com, idryomov@gmail.com, jlayton@kernel.org Cc: ceph-devel@vger.kernel.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org, vbabka@suse.cz, roman.gushchin@linux.dev, Xiongwei.Song@windriver.com, chengming.zhou@linux.dev, Chengming Zhou <zhouchengming@bytedance.com> Subject: [PATCH] ceph: remove SLAB_MEM_SPREAD flag usage Date: Sat, 24 Feb 2024 13:47:15 +0000 Message-Id: <20240224134715.829225-1-chengming.zhou@linux.dev> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: <linux-kernel.vger.kernel.org> List-Subscribe: <mailto:linux-kernel+subscribe@vger.kernel.org> List-Unsubscribe: <mailto:linux-kernel+unsubscribe@vger.kernel.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Migadu-Flow: FLOW_OUT X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1791788322150949781 X-GMAIL-MSGID: 1791788322150949781 |
Series |
ceph: remove SLAB_MEM_SPREAD flag usage
|
|
Commit Message
Chengming Zhou
Feb. 24, 2024, 1:47 p.m. UTC
From: Chengming Zhou <zhouchengming@bytedance.com> The SLAB_MEM_SPREAD flag is already a no-op as of 6.8-rc1, remove its usage so we can delete it from slab. No functional change. Signed-off-by: Chengming Zhou <zhouchengming@bytedance.com> --- fs/ceph/super.c | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-)
Comments
Hi Chengming, Thanks for your patch. BTW, could you share the link of the relevant patches to mark this a no-op ? Thanks - Xiubo On 2/24/24 21:47, chengming.zhou@linux.dev wrote: > From: Chengming Zhou <zhouchengming@bytedance.com> > > The SLAB_MEM_SPREAD flag is already a no-op as of 6.8-rc1, remove > its usage so we can delete it from slab. No functional change. > > Signed-off-by: Chengming Zhou <zhouchengming@bytedance.com> > --- > fs/ceph/super.c | 18 +++++++++--------- > 1 file changed, 9 insertions(+), 9 deletions(-) > > diff --git a/fs/ceph/super.c b/fs/ceph/super.c > index 5ec102f6b1ac..4dcbbaa297f6 100644 > --- a/fs/ceph/super.c > +++ b/fs/ceph/super.c > @@ -928,36 +928,36 @@ static int __init init_caches(void) > ceph_inode_cachep = kmem_cache_create("ceph_inode_info", > sizeof(struct ceph_inode_info), > __alignof__(struct ceph_inode_info), > - SLAB_RECLAIM_ACCOUNT|SLAB_MEM_SPREAD| > - SLAB_ACCOUNT, ceph_inode_init_once); > + SLAB_RECLAIM_ACCOUNT|SLAB_ACCOUNT, > + ceph_inode_init_once); > if (!ceph_inode_cachep) > return -ENOMEM; > > - ceph_cap_cachep = KMEM_CACHE(ceph_cap, SLAB_MEM_SPREAD); > + ceph_cap_cachep = KMEM_CACHE(ceph_cap, 0); > if (!ceph_cap_cachep) > goto bad_cap; > - ceph_cap_snap_cachep = KMEM_CACHE(ceph_cap_snap, SLAB_MEM_SPREAD); > + ceph_cap_snap_cachep = KMEM_CACHE(ceph_cap_snap, 0); > if (!ceph_cap_snap_cachep) > goto bad_cap_snap; > ceph_cap_flush_cachep = KMEM_CACHE(ceph_cap_flush, > - SLAB_RECLAIM_ACCOUNT|SLAB_MEM_SPREAD); > + SLAB_RECLAIM_ACCOUNT); > if (!ceph_cap_flush_cachep) > goto bad_cap_flush; > > ceph_dentry_cachep = KMEM_CACHE(ceph_dentry_info, > - SLAB_RECLAIM_ACCOUNT|SLAB_MEM_SPREAD); > + SLAB_RECLAIM_ACCOUNT); > if (!ceph_dentry_cachep) > goto bad_dentry; > > - ceph_file_cachep = KMEM_CACHE(ceph_file_info, SLAB_MEM_SPREAD); > + ceph_file_cachep = KMEM_CACHE(ceph_file_info, 0); > if (!ceph_file_cachep) > goto bad_file; > > - ceph_dir_file_cachep = KMEM_CACHE(ceph_dir_file_info, SLAB_MEM_SPREAD); > + ceph_dir_file_cachep = KMEM_CACHE(ceph_dir_file_info, 0); > if (!ceph_dir_file_cachep) > goto bad_dir_file; > > - ceph_mds_request_cachep = KMEM_CACHE(ceph_mds_request, SLAB_MEM_SPREAD); > + ceph_mds_request_cachep = KMEM_CACHE(ceph_mds_request, 0); > if (!ceph_mds_request_cachep) > goto bad_mds_req; >
On 2024/2/26 09:43, Xiubo Li wrote: > Hi Chengming, > > Thanks for your patch. > > BTW, could you share the link of the relevant patches to mark this a no-op ? Update changelog to make it clearer: The SLAB_MEM_SPREAD flag used to be implemented in SLAB, which was removed as of v6.8-rc1, so it became a dead flag. And the series[1] went on to mark it obsolete to avoid confusion for users. Here we can just remove all its users, which has no functional change. [1] https://lore.kernel.org/all/20240223-slab-cleanup-flags-v2-1-02f1753e8303@suse.cz/ Thanks! > > Thanks > > - Xiubo > > On 2/24/24 21:47, chengming.zhou@linux.dev wrote: >> From: Chengming Zhou <zhouchengming@bytedance.com> >> >> The SLAB_MEM_SPREAD flag is already a no-op as of 6.8-rc1, remove >> its usage so we can delete it from slab. No functional change. >> >> Signed-off-by: Chengming Zhou <zhouchengming@bytedance.com> >> --- >> fs/ceph/super.c | 18 +++++++++--------- >> 1 file changed, 9 insertions(+), 9 deletions(-) >> >> diff --git a/fs/ceph/super.c b/fs/ceph/super.c >> index 5ec102f6b1ac..4dcbbaa297f6 100644 >> --- a/fs/ceph/super.c >> +++ b/fs/ceph/super.c >> @@ -928,36 +928,36 @@ static int __init init_caches(void) >> ceph_inode_cachep = kmem_cache_create("ceph_inode_info", >> sizeof(struct ceph_inode_info), >> __alignof__(struct ceph_inode_info), >> - SLAB_RECLAIM_ACCOUNT|SLAB_MEM_SPREAD| >> - SLAB_ACCOUNT, ceph_inode_init_once); >> + SLAB_RECLAIM_ACCOUNT|SLAB_ACCOUNT, >> + ceph_inode_init_once); >> if (!ceph_inode_cachep) >> return -ENOMEM; >> - ceph_cap_cachep = KMEM_CACHE(ceph_cap, SLAB_MEM_SPREAD); >> + ceph_cap_cachep = KMEM_CACHE(ceph_cap, 0); >> if (!ceph_cap_cachep) >> goto bad_cap; >> - ceph_cap_snap_cachep = KMEM_CACHE(ceph_cap_snap, SLAB_MEM_SPREAD); >> + ceph_cap_snap_cachep = KMEM_CACHE(ceph_cap_snap, 0); >> if (!ceph_cap_snap_cachep) >> goto bad_cap_snap; >> ceph_cap_flush_cachep = KMEM_CACHE(ceph_cap_flush, >> - SLAB_RECLAIM_ACCOUNT|SLAB_MEM_SPREAD); >> + SLAB_RECLAIM_ACCOUNT); >> if (!ceph_cap_flush_cachep) >> goto bad_cap_flush; >> ceph_dentry_cachep = KMEM_CACHE(ceph_dentry_info, >> - SLAB_RECLAIM_ACCOUNT|SLAB_MEM_SPREAD); >> + SLAB_RECLAIM_ACCOUNT); >> if (!ceph_dentry_cachep) >> goto bad_dentry; >> - ceph_file_cachep = KMEM_CACHE(ceph_file_info, SLAB_MEM_SPREAD); >> + ceph_file_cachep = KMEM_CACHE(ceph_file_info, 0); >> if (!ceph_file_cachep) >> goto bad_file; >> - ceph_dir_file_cachep = KMEM_CACHE(ceph_dir_file_info, SLAB_MEM_SPREAD); >> + ceph_dir_file_cachep = KMEM_CACHE(ceph_dir_file_info, 0); >> if (!ceph_dir_file_cachep) >> goto bad_dir_file; >> - ceph_mds_request_cachep = KMEM_CACHE(ceph_mds_request, SLAB_MEM_SPREAD); >> + ceph_mds_request_cachep = KMEM_CACHE(ceph_mds_request, 0); >> if (!ceph_mds_request_cachep) >> goto bad_mds_req; >> >
On 2/26/24 10:42, Chengming Zhou wrote: > On 2024/2/26 09:43, Xiubo Li wrote: >> Hi Chengming, >> >> Thanks for your patch. >> >> BTW, could you share the link of the relevant patches to mark this a no-op ? > Update changelog to make it clearer: > > The SLAB_MEM_SPREAD flag used to be implemented in SLAB, which was > removed as of v6.8-rc1, so it became a dead flag. And the series[1] > went on to mark it obsolete to avoid confusion for users. Here we > can just remove all its users, which has no functional change. > > [1] https://lore.kernel.org/all/20240223-slab-cleanup-flags-v2-1-02f1753e8303@suse.cz/ Thanks for your quick feedback. BTW, I couldn't find this change in Linus' tree in the master and even the v6.8-rc1 tag, please see https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/tree/include/linux/slab.h?h=master. Did I miss something ? Or has this patch been merged ? - Xiubo > Thanks! > >> Thanks >> >> - Xiubo >> >> On 2/24/24 21:47, chengming.zhou@linux.dev wrote: >>> From: Chengming Zhou <zhouchengming@bytedance.com> >>> >>> The SLAB_MEM_SPREAD flag is already a no-op as of 6.8-rc1, remove >>> its usage so we can delete it from slab. No functional change. >>> >>> Signed-off-by: Chengming Zhou <zhouchengming@bytedance.com> >>> --- >>> fs/ceph/super.c | 18 +++++++++--------- >>> 1 file changed, 9 insertions(+), 9 deletions(-) >>> >>> diff --git a/fs/ceph/super.c b/fs/ceph/super.c >>> index 5ec102f6b1ac..4dcbbaa297f6 100644 >>> --- a/fs/ceph/super.c >>> +++ b/fs/ceph/super.c >>> @@ -928,36 +928,36 @@ static int __init init_caches(void) >>> ceph_inode_cachep = kmem_cache_create("ceph_inode_info", >>> sizeof(struct ceph_inode_info), >>> __alignof__(struct ceph_inode_info), >>> - SLAB_RECLAIM_ACCOUNT|SLAB_MEM_SPREAD| >>> - SLAB_ACCOUNT, ceph_inode_init_once); >>> + SLAB_RECLAIM_ACCOUNT|SLAB_ACCOUNT, >>> + ceph_inode_init_once); >>> if (!ceph_inode_cachep) >>> return -ENOMEM; >>> - ceph_cap_cachep = KMEM_CACHE(ceph_cap, SLAB_MEM_SPREAD); >>> + ceph_cap_cachep = KMEM_CACHE(ceph_cap, 0); >>> if (!ceph_cap_cachep) >>> goto bad_cap; >>> - ceph_cap_snap_cachep = KMEM_CACHE(ceph_cap_snap, SLAB_MEM_SPREAD); >>> + ceph_cap_snap_cachep = KMEM_CACHE(ceph_cap_snap, 0); >>> if (!ceph_cap_snap_cachep) >>> goto bad_cap_snap; >>> ceph_cap_flush_cachep = KMEM_CACHE(ceph_cap_flush, >>> - SLAB_RECLAIM_ACCOUNT|SLAB_MEM_SPREAD); >>> + SLAB_RECLAIM_ACCOUNT); >>> if (!ceph_cap_flush_cachep) >>> goto bad_cap_flush; >>> ceph_dentry_cachep = KMEM_CACHE(ceph_dentry_info, >>> - SLAB_RECLAIM_ACCOUNT|SLAB_MEM_SPREAD); >>> + SLAB_RECLAIM_ACCOUNT); >>> if (!ceph_dentry_cachep) >>> goto bad_dentry; >>> - ceph_file_cachep = KMEM_CACHE(ceph_file_info, SLAB_MEM_SPREAD); >>> + ceph_file_cachep = KMEM_CACHE(ceph_file_info, 0); >>> if (!ceph_file_cachep) >>> goto bad_file; >>> - ceph_dir_file_cachep = KMEM_CACHE(ceph_dir_file_info, SLAB_MEM_SPREAD); >>> + ceph_dir_file_cachep = KMEM_CACHE(ceph_dir_file_info, 0); >>> if (!ceph_dir_file_cachep) >>> goto bad_dir_file; >>> - ceph_mds_request_cachep = KMEM_CACHE(ceph_mds_request, SLAB_MEM_SPREAD); >>> + ceph_mds_request_cachep = KMEM_CACHE(ceph_mds_request, 0); >>> if (!ceph_mds_request_cachep) >>> goto bad_mds_req; >>>
On 2024/2/26 12:23, Xiubo Li wrote: > > On 2/26/24 10:42, Chengming Zhou wrote: >> On 2024/2/26 09:43, Xiubo Li wrote: >>> Hi Chengming, >>> >>> Thanks for your patch. >>> >>> BTW, could you share the link of the relevant patches to mark this a no-op ? >> Update changelog to make it clearer: >> >> The SLAB_MEM_SPREAD flag used to be implemented in SLAB, which was >> removed as of v6.8-rc1, so it became a dead flag. And the series[1] >> went on to mark it obsolete to avoid confusion for users. Here we >> can just remove all its users, which has no functional change. >> >> [1] https://lore.kernel.org/all/20240223-slab-cleanup-flags-v2-1-02f1753e8303@suse.cz/ > > Thanks for your quick feedback. > > BTW, I couldn't find this change in Linus' tree in the master and even the v6.8-rc1 tag, please see https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/tree/include/linux/slab.h?h=master. > > Did I miss something ? Or has this patch been merged ? You're right, this patch hasn't been merged. But it's already a dead flag as of v6.8-rc1. Update changelog to make it clearer: The SLAB_MEM_SPREAD flag used to be implemented in SLAB, which was removed as of v6.8-rc1, so it became a dead flag since the commit 16a1d968358a ("mm/slab: remove mm/slab.c and slab_def.h"). And the series[1] went on to mark it obsolete to avoid confusion for users. Here we can just remove all its users, which has no functional change. [1] https://lore.kernel.org/all/20240223-slab-cleanup-flags-v2-1-02f1753e8303@suse.cz/ Does this look clearer to you? I can improve it if there is still confusion. Thanks! > > - Xiubo > >> Thanks! >> >>> Thanks >>> >>> - Xiubo >>> >>> On 2/24/24 21:47, chengming.zhou@linux.dev wrote: >>>> From: Chengming Zhou <zhouchengming@bytedance.com> >>>> >>>> The SLAB_MEM_SPREAD flag is already a no-op as of 6.8-rc1, remove >>>> its usage so we can delete it from slab. No functional change. >>>> >>>> Signed-off-by: Chengming Zhou <zhouchengming@bytedance.com> >>>> --- >>>> fs/ceph/super.c | 18 +++++++++--------- >>>> 1 file changed, 9 insertions(+), 9 deletions(-) >>>> >>>> diff --git a/fs/ceph/super.c b/fs/ceph/super.c >>>> index 5ec102f6b1ac..4dcbbaa297f6 100644 >>>> --- a/fs/ceph/super.c >>>> +++ b/fs/ceph/super.c >>>> @@ -928,36 +928,36 @@ static int __init init_caches(void) >>>> ceph_inode_cachep = kmem_cache_create("ceph_inode_info", >>>> sizeof(struct ceph_inode_info), >>>> __alignof__(struct ceph_inode_info), >>>> - SLAB_RECLAIM_ACCOUNT|SLAB_MEM_SPREAD| >>>> - SLAB_ACCOUNT, ceph_inode_init_once); >>>> + SLAB_RECLAIM_ACCOUNT|SLAB_ACCOUNT, >>>> + ceph_inode_init_once); >>>> if (!ceph_inode_cachep) >>>> return -ENOMEM; >>>> - ceph_cap_cachep = KMEM_CACHE(ceph_cap, SLAB_MEM_SPREAD); >>>> + ceph_cap_cachep = KMEM_CACHE(ceph_cap, 0); >>>> if (!ceph_cap_cachep) >>>> goto bad_cap; >>>> - ceph_cap_snap_cachep = KMEM_CACHE(ceph_cap_snap, SLAB_MEM_SPREAD); >>>> + ceph_cap_snap_cachep = KMEM_CACHE(ceph_cap_snap, 0); >>>> if (!ceph_cap_snap_cachep) >>>> goto bad_cap_snap; >>>> ceph_cap_flush_cachep = KMEM_CACHE(ceph_cap_flush, >>>> - SLAB_RECLAIM_ACCOUNT|SLAB_MEM_SPREAD); >>>> + SLAB_RECLAIM_ACCOUNT); >>>> if (!ceph_cap_flush_cachep) >>>> goto bad_cap_flush; >>>> ceph_dentry_cachep = KMEM_CACHE(ceph_dentry_info, >>>> - SLAB_RECLAIM_ACCOUNT|SLAB_MEM_SPREAD); >>>> + SLAB_RECLAIM_ACCOUNT); >>>> if (!ceph_dentry_cachep) >>>> goto bad_dentry; >>>> - ceph_file_cachep = KMEM_CACHE(ceph_file_info, SLAB_MEM_SPREAD); >>>> + ceph_file_cachep = KMEM_CACHE(ceph_file_info, 0); >>>> if (!ceph_file_cachep) >>>> goto bad_file; >>>> - ceph_dir_file_cachep = KMEM_CACHE(ceph_dir_file_info, SLAB_MEM_SPREAD); >>>> + ceph_dir_file_cachep = KMEM_CACHE(ceph_dir_file_info, 0); >>>> if (!ceph_dir_file_cachep) >>>> goto bad_dir_file; >>>> - ceph_mds_request_cachep = KMEM_CACHE(ceph_mds_request, SLAB_MEM_SPREAD); >>>> + ceph_mds_request_cachep = KMEM_CACHE(ceph_mds_request, 0); >>>> if (!ceph_mds_request_cachep) >>>> goto bad_mds_req; >>>> >
On 2/26/24 12:30, Chengming Zhou wrote: > On 2024/2/26 12:23, Xiubo Li wrote: >> On 2/26/24 10:42, Chengming Zhou wrote: >>> On 2024/2/26 09:43, Xiubo Li wrote: >>>> Hi Chengming, >>>> >>>> Thanks for your patch. >>>> >>>> BTW, could you share the link of the relevant patches to mark this a no-op ? >>> Update changelog to make it clearer: >>> >>> The SLAB_MEM_SPREAD flag used to be implemented in SLAB, which was >>> removed as of v6.8-rc1, so it became a dead flag. And the series[1] >>> went on to mark it obsolete to avoid confusion for users. Here we >>> can just remove all its users, which has no functional change. >>> >>> [1] https://lore.kernel.org/all/20240223-slab-cleanup-flags-v2-1-02f1753e8303@suse.cz/ >> Thanks for your quick feedback. >> >> BTW, I couldn't find this change in Linus' tree in the master and even the v6.8-rc1 tag, please see https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/tree/include/linux/slab.h?h=master. >> >> Did I miss something ? Or has this patch been merged ? > You're right, this patch hasn't been merged. But it's already a dead flag as of v6.8-rc1. > > Update changelog to make it clearer: > > The SLAB_MEM_SPREAD flag used to be implemented in SLAB, which was > removed as of v6.8-rc1, so it became a dead flag since the commit > 16a1d968358a ("mm/slab: remove mm/slab.c and slab_def.h"). And the > series[1] went on to mark it obsolete to avoid confusion for users. > Here we can just remove all its users, which has no functional change. > > [1] https://lore.kernel.org/all/20240223-slab-cleanup-flags-v2-1-02f1753e8303@suse.cz/ > > Does this look clearer to you? I can improve it if there is still confusion. Yeah, much clearer, thanks! Maybe we should just wait for the [1] to get merged first ? Ilya, what do you think ? Thanks - Xiubo > Thanks! > >> - Xiubo >> >>> Thanks! >>> >>>> Thanks >>>> >>>> - Xiubo >>>> >>>> On 2/24/24 21:47, chengming.zhou@linux.dev wrote: >>>>> From: Chengming Zhou <zhouchengming@bytedance.com> >>>>> >>>>> The SLAB_MEM_SPREAD flag is already a no-op as of 6.8-rc1, remove >>>>> its usage so we can delete it from slab. No functional change. >>>>> >>>>> Signed-off-by: Chengming Zhou <zhouchengming@bytedance.com> >>>>> --- >>>>> fs/ceph/super.c | 18 +++++++++--------- >>>>> 1 file changed, 9 insertions(+), 9 deletions(-) >>>>> >>>>> diff --git a/fs/ceph/super.c b/fs/ceph/super.c >>>>> index 5ec102f6b1ac..4dcbbaa297f6 100644 >>>>> --- a/fs/ceph/super.c >>>>> +++ b/fs/ceph/super.c >>>>> @@ -928,36 +928,36 @@ static int __init init_caches(void) >>>>> ceph_inode_cachep = kmem_cache_create("ceph_inode_info", >>>>> sizeof(struct ceph_inode_info), >>>>> __alignof__(struct ceph_inode_info), >>>>> - SLAB_RECLAIM_ACCOUNT|SLAB_MEM_SPREAD| >>>>> - SLAB_ACCOUNT, ceph_inode_init_once); >>>>> + SLAB_RECLAIM_ACCOUNT|SLAB_ACCOUNT, >>>>> + ceph_inode_init_once); >>>>> if (!ceph_inode_cachep) >>>>> return -ENOMEM; >>>>> - ceph_cap_cachep = KMEM_CACHE(ceph_cap, SLAB_MEM_SPREAD); >>>>> + ceph_cap_cachep = KMEM_CACHE(ceph_cap, 0); >>>>> if (!ceph_cap_cachep) >>>>> goto bad_cap; >>>>> - ceph_cap_snap_cachep = KMEM_CACHE(ceph_cap_snap, SLAB_MEM_SPREAD); >>>>> + ceph_cap_snap_cachep = KMEM_CACHE(ceph_cap_snap, 0); >>>>> if (!ceph_cap_snap_cachep) >>>>> goto bad_cap_snap; >>>>> ceph_cap_flush_cachep = KMEM_CACHE(ceph_cap_flush, >>>>> - SLAB_RECLAIM_ACCOUNT|SLAB_MEM_SPREAD); >>>>> + SLAB_RECLAIM_ACCOUNT); >>>>> if (!ceph_cap_flush_cachep) >>>>> goto bad_cap_flush; >>>>> ceph_dentry_cachep = KMEM_CACHE(ceph_dentry_info, >>>>> - SLAB_RECLAIM_ACCOUNT|SLAB_MEM_SPREAD); >>>>> + SLAB_RECLAIM_ACCOUNT); >>>>> if (!ceph_dentry_cachep) >>>>> goto bad_dentry; >>>>> - ceph_file_cachep = KMEM_CACHE(ceph_file_info, SLAB_MEM_SPREAD); >>>>> + ceph_file_cachep = KMEM_CACHE(ceph_file_info, 0); >>>>> if (!ceph_file_cachep) >>>>> goto bad_file; >>>>> - ceph_dir_file_cachep = KMEM_CACHE(ceph_dir_file_info, SLAB_MEM_SPREAD); >>>>> + ceph_dir_file_cachep = KMEM_CACHE(ceph_dir_file_info, 0); >>>>> if (!ceph_dir_file_cachep) >>>>> goto bad_dir_file; >>>>> - ceph_mds_request_cachep = KMEM_CACHE(ceph_mds_request, SLAB_MEM_SPREAD); >>>>> + ceph_mds_request_cachep = KMEM_CACHE(ceph_mds_request, 0); >>>>> if (!ceph_mds_request_cachep) >>>>> goto bad_mds_req; >>>>>
On 2/26/24 05:54, Xiubo Li wrote: > > On 2/26/24 12:30, Chengming Zhou wrote: >> On 2024/2/26 12:23, Xiubo Li wrote: >>> On 2/26/24 10:42, Chengming Zhou wrote: >>>> On 2024/2/26 09:43, Xiubo Li wrote: >>>>> Hi Chengming, >>>>> >>>>> Thanks for your patch. >>>>> >>>>> BTW, could you share the link of the relevant patches to mark this a no-op ? >>>> Update changelog to make it clearer: >>>> >>>> The SLAB_MEM_SPREAD flag used to be implemented in SLAB, which was >>>> removed as of v6.8-rc1, so it became a dead flag. And the series[1] >>>> went on to mark it obsolete to avoid confusion for users. Here we >>>> can just remove all its users, which has no functional change. >>>> >>>> [1] https://lore.kernel.org/all/20240223-slab-cleanup-flags-v2-1-02f1753e8303@suse.cz/ >>> Thanks for your quick feedback. >>> >>> BTW, I couldn't find this change in Linus' tree in the master and even the v6.8-rc1 tag, please see https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/tree/include/linux/slab.h?h=master. >>> >>> Did I miss something ? Or has this patch been merged ? >> You're right, this patch hasn't been merged. But it's already a dead flag as of v6.8-rc1. >> >> Update changelog to make it clearer: >> >> The SLAB_MEM_SPREAD flag used to be implemented in SLAB, which was >> removed as of v6.8-rc1, so it became a dead flag since the commit >> 16a1d968358a ("mm/slab: remove mm/slab.c and slab_def.h"). And the >> series[1] went on to mark it obsolete to avoid confusion for users. >> Here we can just remove all its users, which has no functional change. >> >> [1] https://lore.kernel.org/all/20240223-slab-cleanup-flags-v2-1-02f1753e8303@suse.cz/ >> >> Does this look clearer to you? I can improve it if there is still confusion. > > Yeah, much clearer, thanks! > > Maybe we should just wait for the [1] to get merged first ? It's really not necessary to wait, [1] just makes it explicit but the flag is really effectively dead since v6.8-rc1 because nothing acts on it.
On 2/26/24 16:32, Vlastimil Babka wrote: > On 2/26/24 05:54, Xiubo Li wrote: >> On 2/26/24 12:30, Chengming Zhou wrote: >>> On 2024/2/26 12:23, Xiubo Li wrote: >>>> On 2/26/24 10:42, Chengming Zhou wrote: >>>>> On 2024/2/26 09:43, Xiubo Li wrote: >>>>>> Hi Chengming, >>>>>> >>>>>> Thanks for your patch. >>>>>> >>>>>> BTW, could you share the link of the relevant patches to mark this a no-op ? >>>>> Update changelog to make it clearer: >>>>> >>>>> The SLAB_MEM_SPREAD flag used to be implemented in SLAB, which was >>>>> removed as of v6.8-rc1, so it became a dead flag. And the series[1] >>>>> went on to mark it obsolete to avoid confusion for users. Here we >>>>> can just remove all its users, which has no functional change. >>>>> >>>>> [1] https://lore.kernel.org/all/20240223-slab-cleanup-flags-v2-1-02f1753e8303@suse.cz/ >>>> Thanks for your quick feedback. >>>> >>>> BTW, I couldn't find this change in Linus' tree in the master and even the v6.8-rc1 tag, please see https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/tree/include/linux/slab.h?h=master. >>>> >>>> Did I miss something ? Or has this patch been merged ? >>> You're right, this patch hasn't been merged. But it's already a dead flag as of v6.8-rc1. >>> >>> Update changelog to make it clearer: >>> >>> The SLAB_MEM_SPREAD flag used to be implemented in SLAB, which was >>> removed as of v6.8-rc1, so it became a dead flag since the commit >>> 16a1d968358a ("mm/slab: remove mm/slab.c and slab_def.h"). And the >>> series[1] went on to mark it obsolete to avoid confusion for users. >>> Here we can just remove all its users, which has no functional change. >>> >>> [1] https://lore.kernel.org/all/20240223-slab-cleanup-flags-v2-1-02f1753e8303@suse.cz/ >>> >>> Does this look clearer to you? I can improve it if there is still confusion. >> Yeah, much clearer, thanks! >> >> Maybe we should just wait for the [1] to get merged first ? > It's really not necessary to wait, [1] just makes it explicit but the flag > is really effectively dead since v6.8-rc1 because nothing acts on it. Okay, will apply this to ceph-client tree and run the tests. Thanks - Xiubo
diff --git a/fs/ceph/super.c b/fs/ceph/super.c index 5ec102f6b1ac..4dcbbaa297f6 100644 --- a/fs/ceph/super.c +++ b/fs/ceph/super.c @@ -928,36 +928,36 @@ static int __init init_caches(void) ceph_inode_cachep = kmem_cache_create("ceph_inode_info", sizeof(struct ceph_inode_info), __alignof__(struct ceph_inode_info), - SLAB_RECLAIM_ACCOUNT|SLAB_MEM_SPREAD| - SLAB_ACCOUNT, ceph_inode_init_once); + SLAB_RECLAIM_ACCOUNT|SLAB_ACCOUNT, + ceph_inode_init_once); if (!ceph_inode_cachep) return -ENOMEM; - ceph_cap_cachep = KMEM_CACHE(ceph_cap, SLAB_MEM_SPREAD); + ceph_cap_cachep = KMEM_CACHE(ceph_cap, 0); if (!ceph_cap_cachep) goto bad_cap; - ceph_cap_snap_cachep = KMEM_CACHE(ceph_cap_snap, SLAB_MEM_SPREAD); + ceph_cap_snap_cachep = KMEM_CACHE(ceph_cap_snap, 0); if (!ceph_cap_snap_cachep) goto bad_cap_snap; ceph_cap_flush_cachep = KMEM_CACHE(ceph_cap_flush, - SLAB_RECLAIM_ACCOUNT|SLAB_MEM_SPREAD); + SLAB_RECLAIM_ACCOUNT); if (!ceph_cap_flush_cachep) goto bad_cap_flush; ceph_dentry_cachep = KMEM_CACHE(ceph_dentry_info, - SLAB_RECLAIM_ACCOUNT|SLAB_MEM_SPREAD); + SLAB_RECLAIM_ACCOUNT); if (!ceph_dentry_cachep) goto bad_dentry; - ceph_file_cachep = KMEM_CACHE(ceph_file_info, SLAB_MEM_SPREAD); + ceph_file_cachep = KMEM_CACHE(ceph_file_info, 0); if (!ceph_file_cachep) goto bad_file; - ceph_dir_file_cachep = KMEM_CACHE(ceph_dir_file_info, SLAB_MEM_SPREAD); + ceph_dir_file_cachep = KMEM_CACHE(ceph_dir_file_info, 0); if (!ceph_dir_file_cachep) goto bad_dir_file; - ceph_mds_request_cachep = KMEM_CACHE(ceph_mds_request, SLAB_MEM_SPREAD); + ceph_mds_request_cachep = KMEM_CACHE(ceph_mds_request, 0); if (!ceph_mds_request_cachep) goto bad_mds_req;