diff options
Diffstat (limited to 'fs/hfs/super.c')
-rw-r--r-- | fs/hfs/super.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/fs/hfs/super.c b/fs/hfs/super.c index 34937ee83ab1..d43b4fcc8ad3 100644 --- a/fs/hfs/super.c +++ b/fs/hfs/super.c | |||
@@ -356,11 +356,10 @@ static int hfs_fill_super(struct super_block *sb, void *data, int silent) | |||
356 | struct inode *root_inode; | 356 | struct inode *root_inode; |
357 | int res; | 357 | int res; |
358 | 358 | ||
359 | sbi = kmalloc(sizeof(struct hfs_sb_info), GFP_KERNEL); | 359 | sbi = kzalloc(sizeof(struct hfs_sb_info), GFP_KERNEL); |
360 | if (!sbi) | 360 | if (!sbi) |
361 | return -ENOMEM; | 361 | return -ENOMEM; |
362 | sb->s_fs_info = sbi; | 362 | sb->s_fs_info = sbi; |
363 | memset(sbi, 0, sizeof(struct hfs_sb_info)); | ||
364 | INIT_HLIST_HEAD(&sbi->rsrc_inodes); | 363 | INIT_HLIST_HEAD(&sbi->rsrc_inodes); |
365 | 364 | ||
366 | res = -EINVAL; | 365 | res = -EINVAL; |
@@ -455,8 +454,7 @@ static int __init init_hfs_fs(void) | |||
455 | static void __exit exit_hfs_fs(void) | 454 | static void __exit exit_hfs_fs(void) |
456 | { | 455 | { |
457 | unregister_filesystem(&hfs_fs_type); | 456 | unregister_filesystem(&hfs_fs_type); |
458 | if (kmem_cache_destroy(hfs_inode_cachep)) | 457 | kmem_cache_destroy(hfs_inode_cachep); |
459 | printk(KERN_ERR "hfs_inode_cache: not all structures were freed\n"); | ||
460 | } | 458 | } |
461 | 459 | ||
462 | module_init(init_hfs_fs) | 460 | module_init(init_hfs_fs) |