]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
sbitmap: don't loop for find_next_zero_bit() for !round_robin
authorJens Axboe <axboe@kernel.dk>
Thu, 29 Nov 2018 19:35:16 +0000 (12:35 -0700)
committerJens Axboe <axboe@kernel.dk>
Thu, 29 Nov 2018 20:58:34 +0000 (13:58 -0700)
commit27fae429acee1e9418059e7fa545438075af5256
tree9d1258df6416f59265bfca42b13c46576963bb9b
parentb2c5d16b72df1116f05c9be16a630ac939d34101
sbitmap: don't loop for find_next_zero_bit() for !round_robin

If we aren't forced to do round robin tag allocation, just use the
allocation hint to find the index for the tag word, don't use it for the
offset inside the word. This avoids a potential extra round trip in the
bit looping, and since we're fetching this cacheline, we may as well
check the whole word from the start.

Reviewed-by: Omar Sandoval <osandov@fb.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
lib/sbitmap.c