erofs: add necessary kmem_cache_create flags for erofs inode cache
authorFerry Meng <mengferry@linux.alibaba.com>
Tue, 15 Aug 2023 09:48:48 +0000 (17:48 +0800)
committerGao Xiang <hsiangkao@linux.alibaba.com>
Wed, 23 Aug 2023 15:40:03 +0000 (23:40 +0800)
To improve memory access efficiency and enable statistics functionality,
add SLAB_MEM_SPREAD and SLAB_ACCOUNT flag during erofs_inode_cachep's
allocation time.

Signed-off-by: Ferry Meng <mengferry@linux.alibaba.com>
Reviewed-by: Gao Xiang <hsiangkao@linux.alibaba.com>
Reviewed-by: Chao Yu <chao@kernel.org>
Link: https://lore.kernel.org/r/20230815094849.53249-2-mengferry@linux.alibaba.com
Signed-off-by: Gao Xiang <hsiangkao@linux.alibaba.com>
fs/erofs/super.c

index f3b3333..e5fb177 100644 (file)
@@ -941,9 +941,9 @@ static int __init erofs_module_init(void)
        erofs_check_ondisk_layout_definitions();
 
        erofs_inode_cachep = kmem_cache_create("erofs_inode",
-                                              sizeof(struct erofs_inode), 0,
-                                              SLAB_RECLAIM_ACCOUNT,
-                                              erofs_inode_init_once);
+                       sizeof(struct erofs_inode), 0,
+                       SLAB_RECLAIM_ACCOUNT | SLAB_MEM_SPREAD | SLAB_ACCOUNT,
+                       erofs_inode_init_once);
        if (!erofs_inode_cachep)
                return -ENOMEM;