Re: [PATCH] zonefs: Simplify the allocation of slab caches in zonefs_init_inodecache

From: Kunwu Chan
Date: Mon Feb 19 2024 - 03:58:03 EST


Thanks for the reply.

On 2024/2/9 12:06, Damien Le Moal wrote:
On 2/5/24 17:10, Kunwu Chan wrote:
Use the new KMEM_CACHE() macro instead of direct kmem_cache_create
to simplify the creation of SLAB caches.

Signed-off-by: Kunwu Chan <chentao@xxxxxxxxxx>
---
fs/zonefs/super.c | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/fs/zonefs/super.c b/fs/zonefs/super.c
index 93971742613a..9b578e7007e9 100644
--- a/fs/zonefs/super.c
+++ b/fs/zonefs/super.c
@@ -1387,10 +1387,8 @@ static struct file_system_type zonefs_type = {
static int __init zonefs_init_inodecache(void)
{
- zonefs_inode_cachep = kmem_cache_create("zonefs_inode_cache",
- sizeof(struct zonefs_inode_info), 0,
- (SLAB_RECLAIM_ACCOUNT | SLAB_MEM_SPREAD | SLAB_ACCOUNT),
- NULL);
+ zonefs_inode_cachep = KMEM_CACHE(zonefs_inode_info,
+ SLAB_RECLAIM_ACCOUNT | SLAB_MEM_SPREAD | SLAB_ACCOUNT);
if (zonefs_inode_cachep == NULL)
return -ENOMEM;
return 0;

I do not really see a meaningful simplification here. Using kmem_cache_create()
The main reason is 'it hides all the 0 or NULL parameters'.
directly is not *that* complicated... Also, this changes the name of the cache
from "zonefs_inode_cache" to "zonefs_inode_info".
Cache name is used in /proc/slabinfo to identify this cache.


Thank again for taking the time to review and reply.

--
Thanks,
Kunwu