From d00a11df691466772435ec02471292eae07885e5 Mon Sep 17 00:00:00 2001 From: Kent Overstreet Date: Sat, 2 Jun 2018 13:45:04 -0400 Subject: [PATCH] dm-crypt: fix warning in shutdown path The counter for the number of allocated pages includes pages in the mempool's reserve, so checking that the number of allocated pages is 0 needs to happen after we exit the mempool. Fixes: 6f1c819c219f ("dm: convert to bioset_init()/mempool_init()") Signed-off-by: Kent Overstreet Reported-by: Krzysztof Kozlowski Acked-by: Mike Snitzer Fixed to always just use percpu_counter_sum() Signed-off-by: Jens Axboe --- drivers/md/dm-crypt.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/drivers/md/dm-crypt.c b/drivers/md/dm-crypt.c index eaf6b279accbaf..da02f4d8e4b95b 100644 --- a/drivers/md/dm-crypt.c +++ b/drivers/md/dm-crypt.c @@ -2221,14 +2221,13 @@ static void crypt_dtr(struct dm_target *ti) bioset_exit(&cc->bs); - if (mempool_initialized(&cc->page_pool)) - WARN_ON(percpu_counter_sum(&cc->n_allocated_pages) != 0); - percpu_counter_destroy(&cc->n_allocated_pages); - mempool_exit(&cc->page_pool); mempool_exit(&cc->req_pool); mempool_exit(&cc->tag_pool); + WARN_ON(percpu_counter_sum(&cc->n_allocated_pages) != 0); + percpu_counter_destroy(&cc->n_allocated_pages); + if (cc->iv_gen_ops && cc->iv_gen_ops->dtr) cc->iv_gen_ops->dtr(cc);