Hi Christian,
On 7/1/2026 9:20 AM, Christian Schoenebeck wrote:
> On Tuesday, 30 June 2026 09:28:48 CEST Pierrick Bouvier wrote:
>> Hi Christian,
>
> Hi Pierrick,
>
>> This series brought a test regression:
>> $ ./build/pyvenv/bin/meson test -C build \
>> --setup thorough --print-errorlogs \
>> qemu:qtest-aarch64/qos-test
>> ...
>> ERROR:../tests/qtest/libqos/virtio-9p-client.c:280:v9fs_req_recv:
>> assertion failed (hdr.id == id): (7 == 121)
>>
>> It seems to come test added in patch 19
>> "tests/9p: add 3 xattr FID limit test cases (synth fs driver)"
>> This test runs only with slow setup, so I suspect it never worked and
>> was never ran.
>
> Of course I ran these slow tests.
>
I should have added "in our CI" sorry. I'm sure you developed, tested
and ran those yourself.
> I intentionally registered these tests as "slow" tests as they take a long
> time to complete and QEMU tests being notorious on exceeding the overall CI
> timeout limit. So these tests are exempted from running in the official CI
> pipeline, but not from mine.
>
> I just reran them with latest master head. However I am unable to reproduce
> your reported test error so far.
>
> You cropped the output too aggressively. I need to know:
>
> - Which test exactly failed? (especially whether it's really a synth backend
> or a local backend test that failed)
>
That's the complete log from the command given above.
Note: disk is not full, but the error "no space left on device" is very
weird.
qemu-system-aarch64: Failed to set msg fds.
qemu-system-aarch64: vhost VQ 0 ring restore failed: -22: Invalid
argument (22)
qemu-system-aarch64: Failed to set msg fds.
qemu-system-aarch64: vhost VQ 1 ring restore failed: -22: Invalid
argument (22)
qemu-system-aarch64: -chardev
socket,id=chr-reconnect,path=/tmp/vhost-test-VZ60R3/reconnect.sock,server=on:
info: QEMU waiting for connection on:
disconnected:unix:/tmp/vhost-test-VZ60R3/reconnect.sock,server=on
qemu-system-aarch64: Failed to set msg fds.
qemu-system-aarch64: vhost VQ 0 ring restore failed: -22: Invalid
argument (22)
qemu-system-aarch64: Failed to set msg fds.
qemu-system-aarch64: vhost VQ 1 ring restore failed: -22: Invalid
argument (22)
qemu-system-aarch64: -chardev
socket,id=chr-connect-fail,path=/tmp/vhost-test-GTPQR3/connect-fail.sock,server=on:
info: QEMU waiting for connection on:
disconnected:unix:/tmp/vhost-test-GTPQR3/connect-fail.sock,server=on
qemu-system-aarch64: -netdev
vhost-user,id=hs0,chardev=chr-connect-fail,vhostforce=on: Failed to read
msg header. Read 0 instead of 12. Original request 1.
qemu-system-aarch64: -netdev
vhost-user,id=hs0,chardev=chr-connect-fail,vhostforce=on:
vhost_backend_init failed: Protocol error
qemu-system-aarch64: -netdev
vhost-user,id=hs0,chardev=chr-connect-fail,vhostforce=on: failed to init
vhost_net for queue 0
qemu-system-aarch64: -netdev
vhost-user,id=hs0,chardev=chr-connect-fail,vhostforce=on: info: QEMU
waiting for connection on:
disconnected:unix:/tmp/vhost-test-GTPQR3/connect-fail.sock,server=on
qemu-system-aarch64: Failed to set msg fds.
qemu-system-aarch64: vhost VQ 0 ring restore failed: -22: Invalid
argument (22)
qemu-system-aarch64: Failed to set msg fds.
qemu-system-aarch64: vhost VQ 1 ring restore failed: -22: Invalid
argument (22)
qemu-system-aarch64: -chardev
socket,id=chr-flags-mismatch,path=/tmp/vhost-test-6J0ZR3/flags-mismatch.sock,server=on:
info: QEMU waiting for connection on:
disconnected:unix:/tmp/vhost-test-6J0ZR3/flags-mismatch.sock,server=on
qemu-system-aarch64: Failed to write msg. Wrote -1 instead of 52.
qemu-system-aarch64: vhost_set_vring_addr failed: Invalid argument (22)
qemu-system-aarch64: Failed to set msg fds.
qemu-system-aarch64: vhost VQ 0 ring restore failed: -22: Invalid
argument (22)
qemu-system-aarch64: unable to start vhost net: 22: falling back on
userspace virtio
vhost lacks feature mask 0x00000000000000000000000140000000 for backend
qemu-system-aarch64: failed to init vhost_net for queue 0
qemu-system-aarch64: Failed to set msg fds.
qemu-system-aarch64: vhost VQ 0 ring restore failed: -22: Invalid
argument (22)
qemu-system-aarch64: Failed to set msg fds.
qemu-system-aarch64: vhost VQ 1 ring restore failed: -22: Invalid
argument (22)
qemu-system-aarch64: Failed to set msg fds.
qemu-system-aarch64: vhost VQ 0 ring restore failed: -22: Invalid
argument (22)
qemu-system-aarch64: Failed to set msg fds.
qemu-system-aarch64: vhost VQ 1 ring restore failed: -22: Invalid
argument (22)
qemu-system-aarch64: Failed to set msg fds.
qemu-system-aarch64: vhost VQ 2 ring restore failed: -22: Invalid
argument (22)
qemu-system-aarch64: Failed to set msg fds.
qemu-system-aarch64: vhost VQ 3 ring restore failed: -22: Invalid
argument (22)
qemu-system-aarch64: Failed to set msg fds.
qemu-system-aarch64: vhost VQ 0 ring restore failed: -22: Invalid
argument (22)
qemu-system-aarch64: Failed to set msg fds.
qemu-system-aarch64: vhost VQ 1 ring restore failed: -22: Invalid
argument (22)
qemu-system-aarch64: Failed to set msg fds.
qemu-system-aarch64: vhost VQ 0 ring restore failed: -22: Invalid
argument (22)
qemu-system-aarch64: Failed to set msg fds.
qemu-system-aarch64: vhost VQ 1 ring restore failed: -22: Invalid
argument (22)
qemu-system-aarch64: Failed to set msg fds.
qemu-system-aarch64: vhost VQ 0 ring restore failed: -22: Invalid
argument (22)
qemu-system-aarch64: Failed to set msg fds.
qemu-system-aarch64: vhost VQ 1 ring restore failed: -22: Invalid
argument (22)
qemu-system-aarch64: Virtqueue size exceeded
qemu-system-aarch64: Failed to set msg fds.
qemu-system-aarch64: Failed to set msg fds.
qemu-system-aarch64: vhost VQ 0 ring restore failed: -22: Invalid
argument (22)
qemu-system-aarch64: Failed to set msg fds.
qemu-system-aarch64: vhost VQ 1 ring restore failed: -22: Invalid
argument (22)
qemu-system-aarch64: Failed to set msg fds.
qemu-system-aarch64: Failed to set msg fds.
qemu-system-aarch64: vhost VQ 0 ring restore failed: -22: Invalid
argument (22)
qemu-system-aarch64: Failed to set msg fds.
qemu-system-aarch64: vhost VQ 1 ring restore failed: -22: Invalid
argument (22)
qemu-system-aarch64: Failed to set msg fds.
qemu-system-aarch64: vhost_set_vring_call failed 22
qemu-system-aarch64: Failed to set msg fds.
qemu-system-aarch64: vhost_set_vring_call failed 22
set virtio-scmi status to 15 failed, old status: 15
qemu-system-aarch64: 9pfs: xattr_fid_count limit exceeded (configurable
by option 'max_xattr').
qemu-system-aarch64: 9pfs: xattr_fid_count limit exceeded (configurable
by option 'max_xattr').
qemu-system-aarch64: 9pfs: xattr_fid_count limit exceeded (configurable
by option 'max_xattr').
Received response 7 (RLERROR) instead of 121 (RCLUNK)
Rlerror has errno 28 (No space left on device)
**
ERROR:../tests/qtest/libqos/virtio-9p-client.c:280:v9fs_req_recv:
assertion failed (hdr.id == id): (7 == 121)
> - What is the errno being printed *before* the "assertion failed" message?
> ("(hdr.id == id): (7 == 121)" just means 9p server responded with an error
> response instead of the expected one)
>
> - Were you running the tests in a Docker environment or something or just
> plain locally?
>
I saw the error on four different setup:
- On a GitHub runner, using qemu debian container
(tests/docker/dockerfiles/debian.docker)
- On WSL2 on windows-arm64 (which is a full Linux VM).
- On my personal x64 machine, which has nothing funky (ext4 filesystem,
and no containers).
- On a GitHub runner, without any container (see end of this mail to
reproduce).
> - Does the underlying host file system support xattrs? (might matter if it's
> a
> local backend test that's failing)
>
In WSL2 (3 fs):
cat /proc/fs/ext4/*/options | grep xattr
user_xattr
user_xattr
user_xattr
On my machine (2 fs):
cat /proc/fs/ext4/*/options | grep xattr
user_xattr
user_xattr
So it looks ok.
---
Finally, and for sake of science, I reproduced the issue on a clean
GitHub runner. Please follow the README here:
https://github.com/second-reality/github-runners
Then, connect to an x64-ubuntu24.04 runner and:
```
cd qemu && \
./configure --enable-debug --target-list=aarch64-softmmu && \
ninja -C build && \
./build/pyvenv/bin/meson test -C build \
--setup thorough --print-errorlogs qemu:qtest-aarch64/qos-test
```
Any chance you have another machine than the one when you ran those
tests to confirm it works on it?
> /Christian
>
>
Regards,
Pierrick