Forum | Documentation | Website | Blog

Skip to content
Snippets Groups Projects
user avatar
Jens Axboe authored
The block layer tag allocation batching still calls into sbitmap to get
each tag, but we can improve on that. Add __sbitmap_queue_get_batch(),
which returns a mask of tags all at once, along with an offset for
those tags.

An example return would be 0xff, where bits 0..7 are set, with
tag_offset == 128. The valid tags in this case would be 128..135.

A batch is specific to an individual sbitmap_map, hence it cannot be
larger than that. The requested number of tags is automatically reduced
to the max that can be satisfied with a single map.

On failure, 0 is returned. Caller should fall back to single tag
allocation at that point/

Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
9672b0d4
Forked from BeagleBoard.org / Linux
Source project has a limited visibility.
Name Last commit Last update