[Qemu-devel] [PATCH for-4.0 v2 0/3] freeze the backing chain earlier in stream_start()

Alberto Garcia posted 3 patches 5 years ago
Test docker-mingw@fedora passed
Test docker-clang@ubuntu passed
Test checkpatch passed
Test asan passed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/cover.1553789986.git.berto@igalia.com
Maintainers: Kevin Wolf <kwolf@redhat.com>, Max Reitz <mreitz@redhat.com>, John Snow <jsnow@redhat.com>
block.c                    | 21 ++++++++++++++-------
block/stream.c             | 13 +++++++------
tests/qemu-iotests/030     | 17 +++++++++++++++++
tests/qemu-iotests/030.out |  4 ++--
4 files changed, 40 insertions(+), 15 deletions(-)
[Qemu-devel] [PATCH for-4.0 v2 0/3] freeze the backing chain earlier in stream_start()
Posted by Alberto Garcia 5 years ago
Hi,

this series fixes the bug that I found the other day and described here:

   https://lists.gnu.org/archive/html/qemu-block/2019-03/msg00764.html
   https://lists.gnu.org/archive/html/qemu-block/2019-03/msg00791.html

Patch 2 is the important one, patch 3 is a test case, and patch 1 will
allow us to detect this kind of errors earlier.

Regards,

Berto

v2:
- Patch 2: Change the rollback order [Vladimir]
- Patch 3: Use self.wait_until_completed() [Vladimir]

v1: https://lists.gnu.org/archive/html/qemu-block/2019-03/msg00851.html
- Initial version

Output of backport-diff against v1:

Key:
[----] : patches are identical
[####] : number of functional differences between upstream/downstream patch
[down] : patch is downstream-only
The flags [FC] indicate (F)unctional and (C)ontextual differences, respectively

001/3:[----] [--] 'block: continue until base is found in bdrv_freeze_backing_chain() et al'
002/3:[----] [-C] 'block: freeze the backing chain earlier in stream_start()'
003/3:[0017] [FC] 'block: test block-stream with a base node that is used by block-commit'

Alberto Garcia (3):
  block: continue until base is found in bdrv_freeze_backing_chain() et
    al
  block: freeze the backing chain earlier in stream_start()
  block: test block-stream with a base node that is used by block-commit

 block.c                    | 21 ++++++++++++++-------
 block/stream.c             | 13 +++++++------
 tests/qemu-iotests/030     | 17 +++++++++++++++++
 tests/qemu-iotests/030.out |  4 ++--
 4 files changed, 40 insertions(+), 15 deletions(-)

-- 
2.11.0


Re: [Qemu-devel] [PATCH for-4.0 v2 0/3] freeze the backing chain earlier in stream_start()
Posted by Kevin Wolf 4 years, 12 months ago
Am 28.03.2019 um 17:25 hat Alberto Garcia geschrieben:
> Hi,
> 
> this series fixes the bug that I found the other day and described here:
> 
>    https://lists.gnu.org/archive/html/qemu-block/2019-03/msg00764.html
>    https://lists.gnu.org/archive/html/qemu-block/2019-03/msg00791.html
> 
> Patch 2 is the important one, patch 3 is a test case, and patch 1 will
> allow us to detect this kind of errors earlier.

The test doesn't seem to catch the bug for me.

Anyway, thanks, applied to the block branch.

Kevin

Re: [Qemu-devel] [PATCH for-4.0 v2 0/3] freeze the backing chain earlier in stream_start()
Posted by Alberto Garcia 4 years, 12 months ago
On Fri 29 Mar 2019 02:16:16 PM CET, Kevin Wolf wrote:
>> this series fixes the bug that I found the other day and described here:
>> 
>>    https://lists.gnu.org/archive/html/qemu-block/2019-03/msg00764.html
>>    https://lists.gnu.org/archive/html/qemu-block/2019-03/msg00791.html
>> 
>> Patch 2 is the important one, patch 3 is a test case, and patch 1 will
>> allow us to detect this kind of errors earlier.
>
> The test doesn't seem to catch the bug for me.

You have to run it several times in a loop, it doesn't happen always.

Berto

Re: [Qemu-devel] [PATCH for-4.0 v2 0/3] freeze the backing chain earlier in stream_start()
Posted by Kevin Wolf 4 years, 12 months ago
Am 29.03.2019 um 15:16 hat Alberto Garcia geschrieben:
> On Fri 29 Mar 2019 02:16:16 PM CET, Kevin Wolf wrote:
> >> this series fixes the bug that I found the other day and described here:
> >> 
> >>    https://lists.gnu.org/archive/html/qemu-block/2019-03/msg00764.html
> >>    https://lists.gnu.org/archive/html/qemu-block/2019-03/msg00791.html
> >> 
> >> Patch 2 is the important one, patch 3 is a test case, and patch 1 will
> >> allow us to detect this kind of errors earlier.
> >
> > The test doesn't seem to catch the bug for me.
> 
> You have to run it several times in a loop, it doesn't happen always.

Ah, yes. I could reproduce it after letting the test run in a loop.

Kevin