if elv_register fail, bfq_pool should be free. Signed-off-by: weiping zhang <zhangweiping@xxxxxxxxxxxxxxx> --- 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