From 398d8745262d10040720d9d772b5b44c10edf7ec Mon Sep 17 00:00:00 2001 From: Jens Axboe Date: Fri, 24 Feb 2023 09:59:44 -0700 Subject: [PATCH] block: clear bio->bi_bdev when putting a bio back in the cache commit 11eb695feb636fa5211067189cad25ac073e7fe5 upstream. This isn't strictly needed in terms of correctness, but it does allow polling to know if the bio has been put already by a different task and hence avoid polling something that we don't need to. Cc: stable@vger.kernel.org Fixes: be4d234d7aeb ("bio: add allocation cache abstraction") Reviewed-by: Keith Busch Signed-off-by: Jens Axboe Signed-off-by: Greg Kroah-Hartman --- block/bio.c | 1 + 1 file changed, 1 insertion(+) diff --git a/block/bio.c b/block/bio.c index 57c2f32..d5cd825 100644 --- a/block/bio.c +++ b/block/bio.c @@ -747,6 +747,7 @@ void bio_put(struct bio *bio) bio_uninit(bio); cache = per_cpu_ptr(bio->bi_pool->cache, get_cpu()); bio->bi_next = cache->free_list; + bio->bi_bdev = NULL; cache->free_list = bio; if (++cache->nr > ALLOC_CACHE_MAX + ALLOC_CACHE_SLACK) bio_alloc_cache_prune(cache, ALLOC_CACHE_SLACK); -- 2.7.4