Re: [PATCH 4/4] block: simplify handling of try to merge different sized bitmaps

2022-02-19 Thread Nikta Lapshin
On 2/15/22 20:53, Vladimir Sementsov-Ogievskiy wrote: We have too much logic to simply check that bitmaps are of the same size. Let's just define that hbitmap_merge() and bdrv_dirty_bitmap_merge_internal() require their argument bitmaps be of same size, this simplifies things. Let's look throug

Re: [PATCH 2/4] block: block_dirty_bitmap_merge(): fix error path

2022-02-19 Thread Nikta Lapshin
On 2/15/22 20:53, Vladimir Sementsov-Ogievskiy wrote: Reviewed-by: Nikita Lapshin At the end we ignore failure of bdrv_merge_dirty_bitmap() and report success. And still set errp. That's wrong. Signed-off-by: Vladimir Sementsov-Ogievskiy --- block/monitor/bitmap-qmp-cmds.c | 5 - 1 fil

Re: [PATCH 3/4] block: improve block_dirty_bitmap_merge(): don't allocate extra bitmap

2022-02-19 Thread Nikta Lapshin
On 2/15/22 20:53, Vladimir Sementsov-Ogievskiy wrote: We don't need extra bitmap. All we need is to backup the original bitmap when we do first merge. So, drop extra temporary bitmap and work directly with target and backup. Note that block_dirty_bitmap_merge() semantics changed: on failure ta

Re: [PATCH v3 08/19] block/reqlist: add reqlist_wait_all()

2022-01-17 Thread Nikta Lapshin
On 12/22/21 20:40, Vladimir Sementsov-Ogievskiy wrote: Add function to wait for all intersecting requests. To be used in the further commit. Signed-off-by: Vladimir Sementsov-Ogievskiy --- include/block/reqlist.h | 8 block/reqlist.c | 8 2 files changed, 16 inser

Re: [PATCH 4/6] migration: Add ram-only capability

2022-01-17 Thread Nikta Lapshin
On 1/14/22 14:22, Markus Armbruster wrote: Nikita Lapshin writes: If this capability is enabled migration stream will have RAM section only. Signed-off-by: Nikita Lapshin [...] diff --git a/qapi/migration.json b/qapi/migration.json index d53956852c..626fc59d14 100644 --- a/qapi/migration.

Re: [PATCH v3 07/19] block/dirty-bitmap: introduce bdrv_dirty_bitmap_status()

2022-01-17 Thread Nikta Lapshin
On 12/22/21 20:40, Vladimir Sementsov-Ogievskiy wrote: Add a convenient function similar with bdrv_block_status() to get status of dirty bitmap. Signed-off-by: Vladimir Sementsov-Ogievskiy --- include/block/dirty-bitmap.h | 2 ++ include/qemu/hbitmap.h | 11 +++ block/dirty-b

Re: [PATCH v2 0/5] block-job: drop BlockJob.blk

2021-12-27 Thread Nikta Lapshin
On 12/24/21 18:35, Vladimir Sementsov-Ogievskiy wrote: Hi all! v2: rebase on master, fix iostest 283 Block jobs usually operate with several block nodes, and better to handle them symmetrically, than use one from s->common.blk and one from s->target (or something like this). Moreover, generic

Re: [PATCH v4 5/7] For qemu_io* functions support --image-opts argument, which conflicts with -f argument from qemu_io_args.

2021-12-20 Thread Nikta Lapshin
On 12/13/21 18:32, Vladimir Sementsov-Ogievskiy wrote: For QemuIoInteractive use new wrapper as well, which allows relying on default format. Signed-off-by: Vladimir Sementsov-Ogievskiy Reviewed-by: Nikita Lapshin

Re: [PATCH v4 7/7] iotests: add nbd-reconnect-on-open test

2021-12-20 Thread Nikta Lapshin
On 12/13/21 18:32, Vladimir Sementsov-Ogievskiy wrote: Signed-off-by: Vladimir Sementsov-Ogievskiy Reviewed-by: Nikita Lapshin

Re: [PATCH v4 6/7] Add qemu-io Popen constructor wrapper. To be used in the following new test commit.

2021-12-20 Thread Nikta Lapshin
On 12/13/21 18:32, Vladimir Sementsov-Ogievskiy wrote: Signed-off-by: Vladimir Sementsov-Ogievskiy Reviewed-by: Nikita Lapshin

Re: [PATCH v4 4/7] iotests.py: add qemu_tool_popen()

2021-12-20 Thread Nikta Lapshin
On 12/13/21 18:32, Vladimir Sementsov-Ogievskiy wrote: Split qemu_tool_popen() from qemu_tool_pipe_and_status() to be used separately. Signed-off-by: Vladimir Sementsov-Ogievskiy Reviewed-by: Nikita Lapshin

Re: [PATCH] ui/vnc-clipboard: fix adding notifier twice

2021-11-21 Thread Nikta Lapshin
On 11/10/21 13:38, Vladimir Sementsov-Ogievskiy wrote: vnc_server_cut_text_caps() is not guaranteed to be called only once. If it called twice, we finally call notifier_list_add() twice with same element. Which leads to loopback QLIST. So, on next notifier_list_notify() we'll loop forever and