Message ID | 20240224134715.829225-1-chengming.zhou@linux.dev |
---|---|
State | New |
Headers | show |
Series | ceph: remove SLAB_MEM_SPREAD flag usage | expand |
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;