DescriptionStefan Hajnoczi
2021-06-02 14:47:45 UTC
Description of problem:
A regression was introduced in QEMU 6.0.0 where socket file descriptor passing on the command-line no longer works. Rich Jones posted an example along these lines:
$ qemu-storage-daemon --nbd-server addr.type=fd,addr.str=4
qemu-storage-daemon: --nbd-server addr.type=fd,addr.str=4: socket_get_fd: too many connections: Invalid argument
This regression broke the libnbd test suite (see QEMU GitLab Issue link).
Version-Release number of selected component (if applicable):
How reproducible:
100%
Steps to Reproduce:
1. $ qemu-storage-daemon --nbd-server addr.type=fd,addr.str=4
Actual results:
qemu-storage-daemon: --nbd-server addr.type=fd,addr.str=4: socket_get_fd: too many connections: Invalid argument
Expected results:
qemu-storage-daemon: --nbd-server addr.type=fd,addr.str=4: File descriptor '4' is not a socket
Note that this is still an error message because we did not actually provide a file descriptor to the qemu-storage-daemon process. But this new error shows that QEMU has identified fd 4 and is trying to access it as expected.
Additional info:
Reproduce the bug on rhel8.5:
Version:
qemu-kvm-6.0.0-17.module+el8.5.0+11173+c9fce0bb.x86_64
kernel-4.18.0-310.el8.x86_64
Steps and results:
# qemu-storage-daemon --nbd-server addr.type=fd,addr.str=4
qemu-storage-daemon: --nbd-server addr.type=fd,addr.str=4: socket_get_fd: too many connections: Invalid argument
Verified this issue, report error as expected.
Version:
qemu-kvm-6.0.0-19.module+el8.5.0+11385+6e7d542e.x86_64
kernel-4.18.0-310.el8.x86_64
Steps:
# qemu-storage-daemon --nbd-server addr.type=fd,addr.str=4
qemu-storage-daemon: --nbd-server addr.type=fd,addr.str=4: File descriptor '4' is not a socket
The result is as expected, set status to verified.
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.
For information on the advisory (virt:av bug fix and enhancement update), and where to find the updated
files, follow the link below.
If the solution does not work for you, open a new bug report.
https://access.redhat.com/errata/RHBA-2021:4684