mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-28 10:41:38 -04:00
mbcache: fix to detect failure of register_shrinker
register_shrinker in mb_cache_create may fail due to no memory. This patch fixes to do the check of return value of register_shrinker and handle the error case, otherwise mb_cache_create may return with no error, but losing the inner shrinker. Signed-off-by: Chao Yu <[email protected]> Reviewed-by: Jan Kara <[email protected]> Signed-off-by: Theodore Ts'o <[email protected]>
This commit is contained in:
parent
14fbd4aa61
commit
8913f343cd
1 changed files with 5 additions and 1 deletions
|
|
@ -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);
|
||||
|
||||
|
|
|
|||
Loading…
Reference in a new issue