Commit 11eb695f authored by Jens Axboe's avatar Jens Axboe

block: clear bio->bi_bdev when putting a bio back in the cache

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: be4d234d ("bio: add allocation cache abstraction")
Reviewed-by: default avatarKeith Busch <kbusch@kernel.org>
Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
parent 9f6ad5d5
...@@ -772,6 +772,7 @@ static inline void bio_put_percpu_cache(struct bio *bio) ...@@ -772,6 +772,7 @@ static inline void bio_put_percpu_cache(struct bio *bio)
if ((bio->bi_opf & REQ_POLLED) && !WARN_ON_ONCE(in_interrupt())) { if ((bio->bi_opf & REQ_POLLED) && !WARN_ON_ONCE(in_interrupt())) {
bio->bi_next = cache->free_list; bio->bi_next = cache->free_list;
bio->bi_bdev = NULL;
cache->free_list = bio; cache->free_list = bio;
cache->nr++; cache->nr++;
} else { } else {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment