[PULL 0/6] block: jobs and dirty-bitmaps

Vladimir Sementsov-Ogievskiy posted 6 patches 1 month, 1 week ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20260817192948.1743452-1-vsementsov@yandex-team.ru
Maintainers: Eric Blake <eblake@redhat.com>, Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>, John Snow <jsnow@redhat.com>, Kevin Wolf <kwolf@redhat.com>, Hanna Reitz <hreitz@redhat.com>, Peter Xu <peterx@redhat.com>, Fabiano Rosas <farosas@suse.de>, Markus Armbruster <armbru@redhat.com>
block/dirty-bitmap.c                               |   2 +-
block/monitor/bitmap-qmp-cmds.c                    |  19 ++--
block/qcow2-bitmap.c                               |   9 ++
job.c                                              |   9 +-
migration/block-dirty-bitmap.c                     |  22 +++--
qapi/block-core.json                               |   4 +-
tests/qemu-iotests/tests/migrate-bitmaps-test      |  33 +++++++
tests/qemu-iotests/tests/migrate-bitmaps-test.out  |   4 +-
.../qemu-iotests/tests/remove-bitmap-from-backing  |  29 +++++-
.../tests/remove-bitmap-from-backing.out           |  22 ++++-
tests/unit/test-blockjob.c                         | 100 +++++++++++++++++++++
11 files changed, 233 insertions(+), 20 deletions(-)
[PULL 0/6] block: jobs and dirty-bitmaps
Posted by Vladimir Sementsov-Ogievskiy 1 month, 1 week ago
Some fixes and improvements around block-jobs and block dirty-bitmaps.

The following changes since commit 9696bf5dc5a5bf0b4a9d05b6cdfe5f13990f97aa:

  Merge tag 'hw-misc-20260816' of https://github.com/philmd/qemu into staging (2026-08-16 08:17:47 -0700)

are available in the Git repository at:

  https://gitlab.com/vsementsov/qemu.git tags/pull-block-jobs-2026-08-17

for you to fetch changes up to dc04053687ec7219a78f9b90fe2f71c9336914e1:

  dirty-bitmap: fix integer overflow in serialization coverage (2026-08-17 18:32:44 +0300)

----------------------------------------------------------------
block-jobs and dirty-bitmaps patches

----------------------------------------------------------------
Denis V. Lunev (6):
      job: keep job paused across overlapping pause requests
      tests/unit/test-blockjob: cover keeping a job paused while a pause is pending
      block/monitor: reject persistent bitmap add on a read-only node
      migration/block-dirty-bitmap: reject bitmap load onto ro node
      block/monitor: allow dropping a bitmap never stored on disk
      dirty-bitmap: fix integer overflow in serialization coverage

 block/dirty-bitmap.c                               |   2 +-
 block/monitor/bitmap-qmp-cmds.c                    |  19 ++--
 block/qcow2-bitmap.c                               |   9 ++
 job.c                                              |   9 +-
 migration/block-dirty-bitmap.c                     |  22 +++--
 qapi/block-core.json                               |   4 +-
 tests/qemu-iotests/tests/migrate-bitmaps-test      |  33 +++++++
 tests/qemu-iotests/tests/migrate-bitmaps-test.out  |   4 +-
 .../qemu-iotests/tests/remove-bitmap-from-backing  |  29 +++++-
 .../tests/remove-bitmap-from-backing.out           |  22 ++++-
 tests/unit/test-blockjob.c                         | 100 +++++++++++++++++++++
 11 files changed, 233 insertions(+), 20 deletions(-)

-- 
2.43.0
Re: [PULL 0/6] block: jobs and dirty-bitmaps
Posted by Michael Tokarev 1 month, 1 week ago
On 8/17/26 22:29, Vladimir Sementsov-Ogievskiy wrote:

> block-jobs and dirty-bitmaps patches
> 
> Denis V. Lunev (6):
>        job: keep job paused across overlapping pause requests
>        tests/unit/test-blockjob: cover keeping a job paused while a pause is pending
>        block/monitor: reject persistent bitmap add on a read-only node
>        migration/block-dirty-bitmap: reject bitmap load onto ro node
>        block/monitor: allow dropping a bitmap never stored on disk
>        dirty-bitmap: fix integer overflow in serialization coverage

This seems to be another pull request which should be picked up for
active qemu stable series.  Is it not?

Thanks,

/mjt
Re: [PULL 0/6] block: jobs and dirty-bitmaps
Posted by Vladimir Sementsov-Ogievskiy 1 month, 1 week ago
On 18.08.26 09:42, Michael Tokarev wrote:
> On 8/17/26 22:29, Vladimir Sementsov-Ogievskiy wrote:
> 
>> block-jobs and dirty-bitmaps patches
>>
>> Denis V. Lunev (6):
>>        job: keep job paused across overlapping pause requests
>>        tests/unit/test-blockjob: cover keeping a job paused while a pause is pending
>>        block/monitor: reject persistent bitmap add on a read-only node
>>        migration/block-dirty-bitmap: reject bitmap load onto ro node
>>        block/monitor: allow dropping a bitmap never stored on disk
>>        dirty-bitmap: fix integer overflow in serialization coverage
> 
> This seems to be another pull request which should be picked up for
> active qemu stable series.  Is it not?
> 
> Thanks,
> 
I'm not sure. All these bugs are not degradations, we live with them for a very long time.
And most of the changes are a bit risky, so IMHO, they are better to go through
more careful testing at vendor level (like when moving to a new QEMU version, not to
next stable subversion).

01,02 - bug fix in core job engine, which was not touched for a long time, may have
unexpected effects.

03-05 - not actually a bug fix, but prohibiting the user from doing strange things,
which lead to problems in future. Small risk to break some (considered incorrect)
user experience.

06 - simple bug fix, obviously safe

So, my suggestion is to take only 06 into stable branch (and even that not necessary, as
not a degradation and triggers in a very specific scenario).

-- 
Best regards,
Vladimir

Re: [PULL 0/6] block: jobs and dirty-bitmaps
Posted by Michael Tokarev 1 month, 1 week ago
On 8/19/26 15:47, Vladimir Sementsov-Ogievskiy wrote:

>> This seems to be another pull request which should be picked up for
>> active qemu stable series.  Is it not?

> I'm not sure. All these bugs are not degradations, we live with them for a very long time.
> And most of the changes are a bit risky, so IMHO, they are better to go through
> more careful testing at vendor level (like when moving to a new QEMU version, not to
> next stable subversion).

Ok.  Let's defer this stuff to the next stable series - in about a month or so.
In my view these fixes, even if some are risky, should be picked up for stable.
(I'm not picking anything from this pull request now, - will pick whole thing
as the first set when the next series opens).

(A prob with deferring stuff like this, especially for longer, is that it
becomes difficult to track, so it gets lost.  And since you definitely did
hit these issues (or else there would be no reason to dig into the code and
to create patches in the first place) - it is something to fix in stable
series too, especially in LTS series).

Thanks,

/mjt

Re: [PULL 0/6] block: jobs and dirty-bitmaps
Posted by Richard Henderson 1 month, 1 week ago
On 8/17/26 12:29, Vladimir Sementsov-Ogievskiy wrote:
> Some fixes and improvements around block-jobs and block dirty-bitmaps.
> 
> The following changes since commit 9696bf5dc5a5bf0b4a9d05b6cdfe5f13990f97aa:
> 
>    Merge tag 'hw-misc-20260816' of https://github.com/philmd/qemu into staging (2026-08-16 08:17:47 -0700)
> 
> are available in the Git repository at:
> 
>    https://gitlab.com/vsementsov/qemu.git tags/pull-block-jobs-2026-08-17
> 
> for you to fetch changes up to dc04053687ec7219a78f9b90fe2f71c9336914e1:
> 
>    dirty-bitmap: fix integer overflow in serialization coverage (2026-08-17 18:32:44 +0300)
> 
> ----------------------------------------------------------------
> block-jobs and dirty-bitmaps patches


Applied, thanks.  Please update https://wiki.qemu.org/ChangeLog/11.2 as appropriate.

r~