]> git.baikalelectronics.ru Git - kernel.git/commit
sbitmap: flush deferred clears for resize and shallow gets
authorJens Axboe <axboe@kernel.dk>
Wed, 12 Dec 2018 01:39:41 +0000 (18:39 -0700)
committerJens Axboe <axboe@kernel.dk>
Wed, 12 Dec 2018 01:39:41 +0000 (18:39 -0700)
commit012584df5977f5e89d55f99c00a8fafcf88cc24d
tree52f74b5b06c2ba8fbfb6f3cd12e479c869572afa
parent55b4f1b7a9320f0194047be98109a0a46a5d4dc6
sbitmap: flush deferred clears for resize and shallow gets

We're missing a deferred clear off the shallow get, which can cause
a hang. Additionally, when we resize the sbitmap, we should also
flush deferred clears for good measure.

Ensure we have full coverage on batch clears, even for paths where
we would not be doing deferred clear. This makes it less error
prone for future additions.

Reported-by: Bart Van Assche <bvanassche@acm.org>
Tested-by: Ming Lei <ming.lei@redhat.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
lib/sbitmap.c