diff options
Diffstat (limited to 'fs/ext2/super.c')
| -rw-r--r-- | fs/ext2/super.c | 12 | 
1 files changed, 7 insertions, 5 deletions
diff --git a/fs/ext2/super.c b/fs/ext2/super.c index 554c98b8a93a..db5f9daa7780 100644 --- a/fs/ext2/super.c +++ b/fs/ext2/super.c @@ -221,11 +221,13 @@ static void init_once(void *foo)  static int __init init_inodecache(void)  { -	ext2_inode_cachep = kmem_cache_create("ext2_inode_cache", -					     sizeof(struct ext2_inode_info), -					     0, (SLAB_RECLAIM_ACCOUNT| -						SLAB_MEM_SPREAD|SLAB_ACCOUNT), -					     init_once); +	ext2_inode_cachep = kmem_cache_create_usercopy("ext2_inode_cache", +				sizeof(struct ext2_inode_info), 0, +				(SLAB_RECLAIM_ACCOUNT|SLAB_MEM_SPREAD| +					SLAB_ACCOUNT), +				offsetof(struct ext2_inode_info, i_data), +				sizeof_field(struct ext2_inode_info, i_data), +				init_once);  	if (ext2_inode_cachep == NULL)  		return -ENOMEM;  	return 0;  |