From: Chengming Zhou <[email protected]>
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 <[email protected]>
---
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;
--
2.40.1
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, [email protected] wrote:
> From: Chengming Zhou <[email protected]>
>
> 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 <[email protected]>
> ---
> 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/[email protected]/
Thanks!
>
> Thanks
>
> - Xiubo
>
> On 2/24/24 21:47, [email protected] wrote:
>> From: Chengming Zhou <[email protected]>
>>
>> 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 <[email protected]>
>> ---
>> 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/[email protected]/
>
> 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/[email protected]/
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, [email protected] wrote:
>>>> From: Chengming Zhou <[email protected]>
>>>>
>>>> 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 <[email protected]>
>>>> ---
>>>> 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/[email protected]/
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, [email protected] wrote:
>>> From: Chengming Zhou <[email protected]>
>>>
>>> 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 <[email protected]>
>>> ---
>>> 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/[email protected]/
>> 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/[email protected]/
>
> 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, [email protected] wrote:
>>>>> From: Chengming Zhou <[email protected]>
>>>>>
>>>>> 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 <[email protected]>
>>>>> ---
>>>>> 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/[email protected]/
>>> 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/[email protected]/
>>
>> 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/[email protected]/
>>>> 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/[email protected]/
>>>
>>> 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