if elv_register fail, bfq_pool should be free.

Signed-off-by: weiping zhang <zhangweip...@didichuxing.com>
---
 block/bfq-iosched.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/block/bfq-iosched.c b/block/bfq-iosched.c
index 436b6ca..bdb072f 100644
--- a/block/bfq-iosched.c
+++ b/block/bfq-iosched.c
@@ -5048,10 +5048,12 @@ static int __init bfq_init(void)
 
        ret = elv_register(&iosched_bfq_mq);
        if (ret)
-               goto err_pol_unreg;
+               goto slab_kill;
 
        return 0;
 
+slab_kill:
+       bfq_slab_kill();
 err_pol_unreg:
 #ifdef CONFIG_BFQ_GROUP_IOSCHED
        blkcg_policy_unregister(&blkcg_policy_bfq);
-- 
2.9.4

Reply via email to