mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-02 07:13:54 -06:00
block/dirty-bitmap: add _next_dirty API
We have bdrv_dirty_bitmap_next_zero, let's add corresponding bdrv_dirty_bitmap_next_dirty, which is more comfortable to use than bitmap iterators in some cases. For test modify test_hbitmap_next_zero_check_range to check both next_zero and next_dirty and add some new checks. Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@virtuozzo.com> Reviewed-by: Max Reitz <mreitz@redhat.com> Reviewed-by: John Snow <jsnow@redhat.com> Message-id: 20200205112041.6003-7-vsementsov@virtuozzo.com Signed-off-by: John Snow <jsnow@redhat.com>
This commit is contained in:
parent
642700fda0
commit
9399c54b75
5 changed files with 126 additions and 85 deletions
|
@ -297,6 +297,19 @@ void hbitmap_free(HBitmap *hb);
|
|||
*/
|
||||
void hbitmap_iter_init(HBitmapIter *hbi, const HBitmap *hb, uint64_t first);
|
||||
|
||||
/*
|
||||
* hbitmap_next_dirty:
|
||||
*
|
||||
* Find next dirty bit within selected range. If not found, return -1.
|
||||
*
|
||||
* @hb: The HBitmap to operate on
|
||||
* @start: The bit to start from.
|
||||
* @count: Number of bits to proceed. If @start+@count > bitmap size, the whole
|
||||
* bitmap is looked through. You can use INT64_MAX as @count to search up to
|
||||
* the bitmap end.
|
||||
*/
|
||||
int64_t hbitmap_next_dirty(const HBitmap *hb, int64_t start, int64_t count);
|
||||
|
||||
/* hbitmap_next_zero:
|
||||
*
|
||||
* Find next not dirty bit within selected range. If not found, return -1.
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue