On Tue, Mar 16, 2021 at 03:55:59PM +0100, Kevin Wolf wrote: > Am 16.03.2021 um 15:35 hat Kevin Wolf geschrieben: > > Am 16.03.2021 um 14:17 hat Peter Maydell geschrieben: > > > On Mon, 15 Mar 2021 at 12:35, Kevin Wolf <kw...@redhat.com> wrote: > > > > > > > > The following changes since commit > > > > 6157b0e19721aadb4c7fdcfe57b2924af6144b14: > > > > > > > > Merge remote-tracking branch > > > > 'remotes/vivier2/tags/linux-user-for-6.0-pull-request' into staging > > > > (2021-03-14 17:47:49 +0000) > > > > > > > > are available in the Git repository at: > > > > > > > > git://repo.or.cz/qemu/kevin.git tags/for-upstream > > > > > > > > for you to fetch changes up to 078ee48ef7d172df1b3ad020255d1eb6beda2daf: > > > > > > > > qom: Support JSON in HMP object_add and tools --object (2021-03-15 > > > > 13:04:27 +0100) > > > > > > > > ---------------------------------------------------------------- > > > > Block layer patches and object-add QAPIfication > > > > > > > > - QAPIfy object-add and --object for tools (keyval and JSON support) > > > > - Add vhost-user-blk-test > > > > - stream: Fail gracefully if permission is denied > > > > - storage-daemon: Fix crash on quit when job is still running > > > > - curl: Fix use after free > > > > - char: Deprecate backend aliases, fix QMP query-chardev-backends > > > > - Fix image creation option defaults that exist in both the format and > > > > the protocol layer (e.g. 'cluster_size' in qcow2 and rbd; the qcow2 > > > > default was incorrectly applied to the rbd layer) > > > > > > > > ---------------------------------------------------------------- > > > > > > Fails 'make check' on x86-64 linux: > > > > > > PASS 61 qtest-x86_64/qos-test > > > /x86_64/pc/i440FX-pcihost/pci-bus-pc/pci-bus/virtio-blk-pci/virtio-blk/virtio-blk-tests/config > > > PASS 62 qtest-x86_64/qos-test > > > /x86_64/pc/i440FX-pcihost/pci-bus-pc/pci-bus/virtio-blk-pci/virtio-blk/virtio-blk-tests/basic > > > PASS 63 qtest-x86_64/qos-test > > > /x86_64/pc/i440FX-pcihost/pci-bus-pc/pci-bus/virtio-blk-pci/virtio-blk/virtio-blk-tests/resize > > > ** > > > ERROR:../../tests/qtest/libqos/virtio.c:194:qvirtio_wait_status_byte_no_isr: > > > assertion failed: (!d->bus->get_queue_isr_status(d, vq)) > > > ERROR qtest-x86_64/qos-test - Bail out! > > > ERROR:../../tests/qtest/libqos/virtio.c:194:qvirtio_wait_status_byte_no_isr: > > > assertion failed: (!d->bus->get_queue_isr_status(d, vq)) > > > Makefile.mtest:1008: recipe for target 'run-test-124' failed > > > make: *** [run-test-124] Error 1 > > > > It didn't fail to me, so the condition must be a little more specific > > than just x86_64 Linux. > > > > Stefan, can you have a look? I may have to drop these patches again. > > Actually, these are not the new vhost-user-blk test, but just the normal > virtio-blk ones and it's probably unrelated. This is weird, because this > pull request doesn't include any change to virtio-blk or the related > qtests. Could this be intermittent failure of a change introduced by an > earlier pull request? > > Peter, which environment was this and are full logs available? It > doesn't seem to be the Gitlab CI (because the build is still running > there and hasn't failed yet). My first attempts to reproduce have failed > so far.
This patch fixes the failure. You can squash it into the vhost-user-blk-test.c patch or if you've already dropped the patches then I can send a new revision. Signed-off-by: Stefan Hajnoczi <stefa...@redhat.com> diff --git a/tests/qtest/vhost-user-blk-test.c b/tests/qtest/vhost-user-blk-test.c index dc9d7a31ae..8796c74ca4 100644 --- a/tests/qtest/vhost-user-blk-test.c +++ b/tests/qtest/vhost-user-blk-test.c @@ -580,6 +580,12 @@ static void idx(void *obj, void *u_data, QGuestAllocator *t_alloc) qvirtio_set_driver_ok(dev); + /* + * libvhost-user signals the call fd in VHOST_USER_SET_VRING_CALL, make + * sure to wait for the isr here so we don't race and confuse it later on. + */ + qvirtio_wait_queue_isr(qts, dev, vq, QVIRTIO_BLK_TIMEOUT_US); + /* Write request */ req.type = VIRTIO_BLK_T_OUT; req.ioprio = 1;
signature.asc
Description: PGP signature