dm ebs: use dm_bufio_forget_buffers
Use dm_bufio_forget_buffers instead of a block-by-block loop that calls dm_bufio_forget. dm_bufio_forget_buffers is faster than the loop because it searches for used buffers using rb-tree. Signed-off-by: Mikulas Patocka <mpatocka@redhat.com> Signed-off-by: Mike Snitzer <snitzer@redhat.com>
This commit is contained in:
Родитель
33a180623b
Коммит
334b4fc172
|
@ -167,8 +167,8 @@ static void __ebs_forget_bio(struct ebs_c *ec, struct bio *bio)
|
||||||
sector_t blocks, sector = bio->bi_iter.bi_sector;
|
sector_t blocks, sector = bio->bi_iter.bi_sector;
|
||||||
|
|
||||||
blocks = __nr_blocks(ec, bio);
|
blocks = __nr_blocks(ec, bio);
|
||||||
for (; blocks--; sector += ec->u_bs)
|
|
||||||
dm_bufio_forget(ec->bufio, __sector_to_block(ec, sector));
|
dm_bufio_forget_buffers(ec->bufio, __sector_to_block(ec, sector), blocks);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Worker funtion to process incoming bios. */
|
/* Worker funtion to process incoming bios. */
|
||||||
|
|
Загрузка…
Ссылка в новой задаче