net/mlx4: Fix firmware command timeout during interrupt test
[cascardo/linux.git] / fs / mbcache.c
index eccda3a..c5bd19f 100644 (file)
@@ -366,7 +366,11 @@ struct mb_cache *mb_cache_create(int bucket_bits)
        cache->c_shrink.count_objects = mb_cache_count;
        cache->c_shrink.scan_objects = mb_cache_scan;
        cache->c_shrink.seeks = DEFAULT_SEEKS;
-       register_shrinker(&cache->c_shrink);
+       if (register_shrinker(&cache->c_shrink)) {
+               kfree(cache->c_hash);
+               kfree(cache);
+               goto err_out;
+       }
 
        INIT_WORK(&cache->c_shrink_work, mb_cache_shrink_worker);