Tested the current series of patches, mixed with patches from series
[1] and [2], and the virtio-net regression tests passed. I also tested
local VM migration under multiple NIC queues enabled and disabled, it
also passed.

[1] 
https://patchwork.ozlabs.org/project/qemu-devel/cover/[email protected]/
[2] 
https://patchwork.ozlabs.org/project/qemu-devel/cover/[email protected]/

Tested-by: Lei Yang <[email protected]>

On Wed, Sep 3, 2025 at 5:46 PM Vladimir Sementsov-Ogievskiy
<[email protected]> wrote:
>
> Hi all!
>
> The series brings two things:
>
> 1. unify code which sets fds blocking/non-blocking through the whole
> source
>
> 2. for fds, which comes from qio_channel_readv_full(), stop making
> them blocking in generic code, and move this logic to the callers,
> all except coming from migration qemu-file (see last patch)
>
> Vladimir Sementsov-Ogievskiy (10):
>   io/channel: document how qio_channel_readv_full() handles fds
>   char-socket: rework tcp_chr_recv()
>   util: add qemu_set_blocking() function
>   util: drop qemu_socket_set_nonblock()
>   util: drop qemu_socket_try_set_nonblock()
>   util: drop qemu_socket_set_block()
>   use qemu_set_blocking instead of g_unix_set_fd_nonblocking
>   oslib-posix: add qemu_fds_set_blocking() helper
>   qio_channel_readv_full(): move setting fd blocking to callers
>   migration/qemu-file: don't make incoming fds blocking again
>
>  chardev/char-fd.c                       |  4 +--
>  chardev/char-pty.c                      |  3 +-
>  chardev/char-serial.c                   |  3 +-
>  chardev/char-socket.c                   | 45 ++++++++++++-------------
>  chardev/char-stdio.c                    |  3 +-
>  contrib/ivshmem-server/ivshmem-server.c |  5 ++-
>  hw/hyperv/syndbg.c                      |  4 ++-
>  hw/input/virtio-input-host.c            |  3 +-
>  hw/misc/ivshmem-flat.c                  |  4 ++-
>  hw/misc/ivshmem-pci.c                   |  8 ++++-
>  hw/remote/mpqemu-link.c                 |  3 ++
>  hw/vfio-user/proxy.c                    |  4 +++
>  hw/virtio/vhost-user.c                  | 10 +++++-
>  hw/virtio/vhost-vsock.c                 |  8 ++---
>  include/io/channel.h                    | 12 +++++++
>  include/qemu/osdep.h                    |  8 +++++
>  include/qemu/sockets.h                  |  3 --
>  io/channel-command.c                    |  9 +++--
>  io/channel-file.c                       |  3 +-
>  io/channel-socket.c                     | 26 +++++++-------
>  net/dgram.c                             | 28 ++++++++-------
>  net/l2tpv3.c                            |  5 +--
>  net/socket.c                            | 27 ++++++++++-----
>  net/stream.c                            |  9 ++---
>  net/stream_data.c                       | 10 +++---
>  net/tap-bsd.c                           | 12 +++++--
>  net/tap-linux.c                         |  8 ++++-
>  net/tap-solaris.c                       |  7 +++-
>  net/tap.c                               | 21 ++++--------
>  qga/channel-posix.c                     |  7 +++-
>  qga/commands-posix.c                    |  3 +-
>  scsi/qemu-pr-helper.c                   |  4 +++
>  tests/qtest/fuzz/virtio_net_fuzz.c      |  2 +-
>  tests/qtest/tpm-emu.c                   |  1 +
>  tests/qtest/vhost-user-test.c           |  3 +-
>  tests/unit/socket-helpers.c             |  5 ++-
>  tests/unit/test-crypto-tlssession.c     |  8 ++---
>  tests/unit/test-io-channel-socket.c     |  1 +
>  tests/unit/test-iov.c                   |  5 +--
>  ui/input-linux.c                        |  3 +-
>  util/event_notifier-posix.c             |  5 +--
>  util/main-loop.c                        |  6 +++-
>  util/oslib-posix.c                      | 27 +++++++++------
>  util/oslib-win32.c                      | 25 ++++++--------
>  util/vhost-user-server.c                |  9 +++--
>  45 files changed, 244 insertions(+), 165 deletions(-)
>
> --
> 2.48.1
>
>


Reply via email to