[PATCH] fat: fix slab cache leak
[pandora-kernel.git] / fs / fat / inode.c
index 8ccee84..3e31c4a 100644 (file)
@@ -1331,12 +1331,21 @@ void __exit fat_cache_destroy(void);
 
 static int __init init_fat_fs(void)
 {
-       int ret;
+       int err;
 
-       ret = fat_cache_init();
-       if (ret < 0)
-               return ret;
-       return fat_init_inodecache();
+       err = fat_cache_init();
+       if (err)
+               return err;
+
+       err = fat_init_inodecache();
+       if (err)
+               goto failed;
+
+       return 0;
+
+failed:
+       fat_cache_destroy();
+       return err;
 }
 
 static void __exit exit_fat_fs(void)