[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] ping2 Re: [PATCH v4 0/8] dirty-bitmap: rewrite bdrv_dirty_i
From: |
Vladimir Sementsov-Ogievskiy |
Subject: |
[Qemu-devel] ping2 Re: [PATCH v4 0/8] dirty-bitmap: rewrite bdrv_dirty_iter_next_area |
Date: |
Wed, 12 Dec 2018 09:27:38 +0000 |
ping. No dependencies, apply to master.
17.09.2018 17:57, Vladimir Sementsov-Ogievskiy wrote:
> Hi all.
>
> 1. bdrv_dirty_iter_next_area don't use hbitmap_next_zero and uses
> inefficient loop instead. Let's improve it.
>
> 2. bdrv_dirty_iter_next_area don't handle unaligned offset and
> max_offset correctly. I'm not sure that it is a real bug. But if it is,
> we need these series in 3.0.
>
> Details are in 05 commit message.
>
> Note: "[PATCH] nbd/server: fix bitmap export" should be applied first:
> Based-on: <address@hidden>
>
> v4:
>
> Rework: switch interface to start,count / offset,bytes style.
> Fix wrong handling of the case when requested region end exceeds
> overall bitmap end.
> Some other changes.
>
> 06-08: add John's r-b.
>
> v3:
> 01: - change interface to start/end, and -1 as special end-marker instead of 0
> - "not found" for invalid regions instead of assert
> 02: rebase on 01 changes
> 03: - fix mistake in hbitmap_iter_init arguments (mistake in
> hbitmap_next_zero arguments is fixed automatically due to 01 changes)
> 04: new
>
>
> v2:
>
> 01: - improve comment
> - s/bytes/count/
> - fix forgotten function call in test
> - introduce orig_size field here for HBitmap,
> make checking in hbitmap_next_zero more effective and safe
> 02: new
> 03: - orig_size already introduced in 01
> - fix hbitmap_next_dirty_area to not return value less than
> offset on unaligned requests
>
> Vladimir Sementsov-Ogievskiy (8):
> dirty-bitmap: improve bdrv_dirty_bitmap_next_zero
> tests: add tests for hbitmap_next_zero with specified end parameter
> dirty-bitmap: add bdrv_dirty_bitmap_next_dirty_area
> tests: add tests for hbitmap_next_dirty_area
> block/mirror: fix and improve do_sync_target_write
> Revert "block/dirty-bitmap: Add bdrv_dirty_iter_next_area"
> Revert "test-hbitmap: Add non-advancing iter_next tests"
> Revert "hbitmap: Add @advance param to hbitmap_iter_next()"
>
> include/block/dirty-bitmap.h | 7 +-
> include/qemu/hbitmap.h | 31 ++++--
> block/backup.c | 5 +-
> block/dirty-bitmap.c | 68 ++------------
> block/mirror.c | 17 ++--
> nbd/server.c | 2 +-
> tests/test-hbitmap.c | 177 +++++++++++++++++++++++++++++------
> util/hbitmap.c | 76 ++++++++++++---
> 8 files changed, 262 insertions(+), 121 deletions(-)
>
--
Best regards,
Vladimir
- [Qemu-devel] ping2 Re: [PATCH v4 0/8] dirty-bitmap: rewrite bdrv_dirty_iter_next_area,
Vladimir Sementsov-Ogievskiy <=