qemu-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-commits] [qemu/qemu] 42a500: iotests: update test owner contact in


From: Peter Maydell
Subject: [Qemu-commits] [qemu/qemu] 42a500: iotests: update test owner contact information
Date: Tue, 29 Mar 2022 14:20:09 -0700

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: 42a5009d8866f69945b708e98d81582bdbcd504f
      
https://github.com/qemu/qemu/commit/42a5009d8866f69945b708e98d81582bdbcd504f
  Author: John Snow <jsnow@redhat.com>
  Date:   2022-03-29 (Tue, 29 Mar 2022)

  Changed paths:
    M tests/qemu-iotests/025
    M tests/qemu-iotests/027
    M tests/qemu-iotests/028
    M tests/qemu-iotests/036
    M tests/qemu-iotests/039
    M tests/qemu-iotests/059
    M tests/qemu-iotests/060
    M tests/qemu-iotests/061
    M tests/qemu-iotests/062
    M tests/qemu-iotests/064
    M tests/qemu-iotests/066
    M tests/qemu-iotests/068
    M tests/qemu-iotests/069
    M tests/qemu-iotests/070
    M tests/qemu-iotests/071
    M tests/qemu-iotests/072
    M tests/qemu-iotests/074
    M tests/qemu-iotests/084
    M tests/qemu-iotests/085
    M tests/qemu-iotests/089
    M tests/qemu-iotests/090
    M tests/qemu-iotests/091
    M tests/qemu-iotests/094
    M tests/qemu-iotests/095
    M tests/qemu-iotests/097
    M tests/qemu-iotests/098
    M tests/qemu-iotests/099
    M tests/qemu-iotests/102
    M tests/qemu-iotests/103
    M tests/qemu-iotests/105
    M tests/qemu-iotests/106
    M tests/qemu-iotests/107
    M tests/qemu-iotests/108
    M tests/qemu-iotests/110
    M tests/qemu-iotests/111
    M tests/qemu-iotests/112
    M tests/qemu-iotests/113
    M tests/qemu-iotests/115
    M tests/qemu-iotests/117
    M tests/qemu-iotests/119
    M tests/qemu-iotests/120
    M tests/qemu-iotests/121
    M tests/qemu-iotests/123
    M tests/qemu-iotests/125
    M tests/qemu-iotests/126
    M tests/qemu-iotests/127
    M tests/qemu-iotests/135
    M tests/qemu-iotests/138
    M tests/qemu-iotests/140
    M tests/qemu-iotests/141
    M tests/qemu-iotests/143
    M tests/qemu-iotests/144
    M tests/qemu-iotests/146
    M tests/qemu-iotests/150
    M tests/qemu-iotests/153
    M tests/qemu-iotests/156
    M tests/qemu-iotests/162
    M tests/qemu-iotests/173
    M tests/qemu-iotests/176
    M tests/qemu-iotests/182
    M tests/qemu-iotests/192
    M tests/qemu-iotests/200
    M tests/qemu-iotests/216
    M tests/qemu-iotests/218
    M tests/qemu-iotests/224
    M tests/qemu-iotests/225
    M tests/qemu-iotests/228
    M tests/qemu-iotests/229
    M tests/qemu-iotests/231
    M tests/qemu-iotests/250
    M tests/qemu-iotests/251
    M tests/qemu-iotests/252
    M tests/qemu-iotests/258
    M tests/qemu-iotests/259
    M tests/qemu-iotests/261
    M tests/qemu-iotests/310

  Log Message:
  -----------
  iotests: update test owner contact information

Quite a few of these tests have stale contact information. This patch
updates the stale ones that I happen to be aware of at the moment.

Signed-off-by: John Snow <jsnow@redhat.com>
Message-Id: <20220322174212.1169630-1-jsnow@redhat.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Hanna Reitz <hreitz@redhat.com>


  Commit: b1c073490553f80594b903ceedfc7c1aef6b1b19
      
https://github.com/qemu/qemu/commit/b1c073490553f80594b903ceedfc7c1aef6b1b19
  Author: Hanna Reitz <hreitz@redhat.com>
  Date:   2022-03-29 (Tue, 29 Mar 2022)

  Changed paths:
    M include/qemu/main-loop.h

  Log Message:
  -----------
  main-loop: Disable GLOBAL_STATE_CODE() assertions

These assertions are very useful for developers to find bugs, and so
they have indeed pointed us towards bugs already.  For users, it is not
so useful to find these bugs.  We should probably not enable them in
releases until we are sufficiently certain that they will not fire
during normal operation, unless something is going seriously wrong.

For example, we have received a bug report that you cannot add an NBD
server on a BDS in an I/O thread with `-incoming defer`.  I am sure this
is a real bug that needs investigation, but we do not really have that
time right now, so close to release, and so I would rather disable the
assertions to get time to investigate such reports.

(I am just putting the link as "buglink" below, not "closes", because
disabling the assertion will not fix the likely underlying bug.)

Buglink: https://gitlab.com/qemu-project/qemu/-/issues/945
Signed-off-by: Hanna Reitz <hreitz@redhat.com>
Message-Id: <20220329093545.52114-1-hreitz@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed-by: Emanuele Giuseppe Esposito <eesposit@redhat.com>


  Commit: b1e1af394d9dac425eaac7ab6b77cb5225eaf26c
      
https://github.com/qemu/qemu/commit/b1e1af394d9dac425eaac7ab6b77cb5225eaf26c
  Author: Hanna Reitz <hreitz@redhat.com>
  Date:   2022-03-29 (Tue, 29 Mar 2022)

  Changed paths:
    M block/stream.c
    M tests/qemu-iotests/030

  Log Message:
  -----------
  block/stream: Drain subtree around graph change

When the stream block job cuts out the nodes between top and base in
stream_prepare(), it does not drain the subtree manually; it fetches the
base node, and tries to insert it as the top node's backing node with
bdrv_set_backing_hd().  bdrv_set_backing_hd() however will drain, and so
the actual base node might change (because the base node is actually not
part of the stream job) before the old base node passed to
bdrv_set_backing_hd() is installed.

This has two implications:

First, the stream job does not keep a strong reference to the base node.
Therefore, if it is deleted in bdrv_set_backing_hd()'s drain (e.g.
because some other block job is drained to finish), we will get a
use-after-free.  We should keep a strong reference to that node.

Second, even with such a strong reference, the problem remains that the
base node might change before bdrv_set_backing_hd() actually runs and as
a result the wrong base node is installed.

Both effects can be seen in 030's TestParallelOps.test_overlapping_5()
case, which has five nodes, and simultaneously streams from the middle
node to the top node, and commits the middle node down to the base node.
As it is, this will sometimes crash, namely when we encounter the
above-described use-after-free.

Taking a strong reference to the base node, we no longer get a crash,
but the resuling block graph is less than ideal: The expected result is
obviously that all middle nodes are cut out and the base node is the
immediate backing child of the top node.  However, if stream_prepare()
takes a strong reference to its base node (the middle node), and then
the commit job finishes in bdrv_set_backing_hd(), supposedly dropping
that middle node, the stream job will just reinstall it again.

Therefore, we need to keep the whole subtree drained in
stream_prepare(), so that the graph modification it performs is
effectively atomic, i.e. that the base node it fetches is still the base
node when bdrv_set_backing_hd() sets it as the top node's backing node.

Verify this by asserting in said 030's test case that the base node is
always the top node's immediate backing child when both jobs are done.

Signed-off-by: Hanna Reitz <hreitz@redhat.com>
Message-Id: <20220324140907.17192-1-hreitz@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Acked-by: Vladimir Sementsov-Ogievskiy <v.sementsov-og@mail.ru>


  Commit: d5699c0d4b29e919b87049d948a30527897b7e8a
      
https://github.com/qemu/qemu/commit/d5699c0d4b29e919b87049d948a30527897b7e8a
  Author: Hanna Reitz <hreitz@redhat.com>
  Date:   2022-03-29 (Tue, 29 Mar 2022)

  Changed paths:
    M tests/qemu-iotests/030
    M tests/qemu-iotests/041

  Log Message:
  -----------
  iotests: Fix status checks

An iotest's 'paused' condition is fickle; it will be reported as true
whenever the job is drained, for example, or when it is in the process
of completing.

030 and 041 contain such checks, we should replace them by checking the
job status instead.  (As was done for 129 in commit f9a6256b48f29c2816
for the 'busy' condition.)

Additionally, when we want to test that a job is paused on error, we
might want to give it some time to actually switch to the paused state.
Do that by waiting on the corresponding JOB_STATUS_CHANGE event.  (But
only if they are not already paused; the loops these places are in fetch
all VM events, so they may have already fetched that event from the
queue.)

Signed-off-by: Hanna Reitz <hreitz@redhat.com>
Message-Id: <20220324180221.24508-1-hreitz@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>


  Commit: 68894b5fed671d49587209697f2224b4e857fd1a
      
https://github.com/qemu/qemu/commit/68894b5fed671d49587209697f2224b4e857fd1a
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2022-03-29 (Tue, 29 Mar 2022)

  Changed paths:
    M block/stream.c
    M include/qemu/main-loop.h
    M tests/qemu-iotests/025
    M tests/qemu-iotests/027
    M tests/qemu-iotests/028
    M tests/qemu-iotests/030
    M tests/qemu-iotests/036
    M tests/qemu-iotests/039
    M tests/qemu-iotests/041
    M tests/qemu-iotests/059
    M tests/qemu-iotests/060
    M tests/qemu-iotests/061
    M tests/qemu-iotests/062
    M tests/qemu-iotests/064
    M tests/qemu-iotests/066
    M tests/qemu-iotests/068
    M tests/qemu-iotests/069
    M tests/qemu-iotests/070
    M tests/qemu-iotests/071
    M tests/qemu-iotests/072
    M tests/qemu-iotests/074
    M tests/qemu-iotests/084
    M tests/qemu-iotests/085
    M tests/qemu-iotests/089
    M tests/qemu-iotests/090
    M tests/qemu-iotests/091
    M tests/qemu-iotests/094
    M tests/qemu-iotests/095
    M tests/qemu-iotests/097
    M tests/qemu-iotests/098
    M tests/qemu-iotests/099
    M tests/qemu-iotests/102
    M tests/qemu-iotests/103
    M tests/qemu-iotests/105
    M tests/qemu-iotests/106
    M tests/qemu-iotests/107
    M tests/qemu-iotests/108
    M tests/qemu-iotests/110
    M tests/qemu-iotests/111
    M tests/qemu-iotests/112
    M tests/qemu-iotests/113
    M tests/qemu-iotests/115
    M tests/qemu-iotests/117
    M tests/qemu-iotests/119
    M tests/qemu-iotests/120
    M tests/qemu-iotests/121
    M tests/qemu-iotests/123
    M tests/qemu-iotests/125
    M tests/qemu-iotests/126
    M tests/qemu-iotests/127
    M tests/qemu-iotests/135
    M tests/qemu-iotests/138
    M tests/qemu-iotests/140
    M tests/qemu-iotests/141
    M tests/qemu-iotests/143
    M tests/qemu-iotests/144
    M tests/qemu-iotests/146
    M tests/qemu-iotests/150
    M tests/qemu-iotests/153
    M tests/qemu-iotests/156
    M tests/qemu-iotests/162
    M tests/qemu-iotests/173
    M tests/qemu-iotests/176
    M tests/qemu-iotests/182
    M tests/qemu-iotests/192
    M tests/qemu-iotests/200
    M tests/qemu-iotests/216
    M tests/qemu-iotests/218
    M tests/qemu-iotests/224
    M tests/qemu-iotests/225
    M tests/qemu-iotests/228
    M tests/qemu-iotests/229
    M tests/qemu-iotests/231
    M tests/qemu-iotests/250
    M tests/qemu-iotests/251
    M tests/qemu-iotests/252
    M tests/qemu-iotests/258
    M tests/qemu-iotests/259
    M tests/qemu-iotests/261
    M tests/qemu-iotests/310

  Log Message:
  -----------
  Merge tag 'pull-block-2022-03-29' of https://gitlab.com/hreitz/qemu into 
staging

Block patches for 7.0-rc2:
- Disable GLOBAL_STATE_CODE() assertion for the 7.0 release: We got
  another bug report for this, and we do not have the time to
  investigate before 7.0, so disable the assertion for the release, to
  re-enable and continue investigation in the 7.1 cycle

- stream job fix (regarding interaction with concurrent block jobs)

- iotests fixes

# gpg: Signature made Tue 29 Mar 2022 15:55:33 BST
# gpg:                using RSA key CB62D7A0EE3829E45F004D34A1FA40D098019CDF
# gpg:                issuer "hreitz@redhat.com"
# gpg: Good signature from "Hanna Reitz <hreitz@redhat.com>" [marginal]
# gpg: WARNING: This key is not certified with sufficiently trusted signatures!
# gpg:          It is not certain that the signature belongs to the owner.
# Primary key fingerprint: CB62 D7A0 EE38 29E4 5F00  4D34 A1FA 40D0 9801 9CDF

* tag 'pull-block-2022-03-29' of https://gitlab.com/hreitz/qemu:
  iotests: Fix status checks
  block/stream: Drain subtree around graph change
  main-loop: Disable GLOBAL_STATE_CODE() assertions
  iotests: update test owner contact information

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


Compare: https://github.com/qemu/qemu/compare/6ae6a30ca579...68894b5fed67



reply via email to

[Prev in Thread] Current Thread [Next in Thread]