raid5: handle register_shrinker failure
authorShaohua Li <shli@fb.com>
Wed, 21 Sep 2016 16:07:13 +0000 (09:07 -0700)
committerShaohua Li <shli@fb.com>
Wed, 21 Sep 2016 16:09:44 +0000 (09:09 -0700)
register_shrinker() now can fail. When it happens, shrinker.nr_deferred is
null. We use it to determine if unregister_shrinker is required.

Signed-off-by: Shaohua Li <shli@fb.com>
drivers/md/raid5.c

index 08274b4..f94472d 100644 (file)
@@ -6372,7 +6372,7 @@ static void free_conf(struct r5conf *conf)
 {
        if (conf->log)
                r5l_exit_log(conf->log);
-       if (conf->shrinker.seeks)
+       if (conf->shrinker.nr_deferred)
                unregister_shrinker(&conf->shrinker);
 
        free_thread_groups(conf);