qemu-cr16/tests
Vladimir Sementsov-Ogievskiy 8cb17f9c36 util: drop qemu_socket_set_nonblock()
Use common qemu_set_blocking() instead.

Note that pre-patch the behavior of Win32 and Linux realizations
are inconsistent: we ignore failure for Win32, and assert success
for Linux.

How do we convert the callers?

1. Most of callers call qemu_socket_set_nonblock() on a
freshly created socket fd, in conditions when we may simply
report an error. Seems correct switching to error handling
both for Windows (pre-patch error is ignored) and Linux
(pre-patch we assert success). Anyway, we normally don't
expect errors in these cases.

Still in tests let's use &error_abort for simplicity.

What are exclusions?

2. hw/virtio/vhost-user.c - we are inside #ifdef CONFIG_LINUX,
so no damage in switching to error handling from assertion.

3. io/channel-socket.c: here we convert both old calls to
qemu_socket_set_nonblock() and qemu_socket_set_block() to
one new call. Pre-patch we assert success for Linux in
qemu_socket_set_nonblock(), and ignore all other errors here.
So, for Windows switch is a bit dangerous: we may get
new errors or crashes(when error_abort is passed) in
cases where we have silently ignored the error before
(was it correct in all such cases, if they were?) Still,
there is no other way to stricter API than take
this risk.

4. util/vhost-user-server - compiled only for Linux (see
util/meson.build), so we are safe, switching from assertion to
&error_abort.

Note: In qga/channel-posix.c we use g_warning(), where g_printerr()
would actually be a better choice. Still let's for now follow
common style of qga, where g_warning() is commonly used to print
such messages, and no call to g_printerr(). Converting everything
to use g_printerr() should better be another series.

Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Signed-off-by: Vladimir Sementsov-Ogievskiy <vsementsov@yandex-team.ru>
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2025-09-19 12:46:07 +01:00
..
bench tests/bench: Rename test_akcipher_keys.inc -> test_akcipher_keys.c.inc 2024-09-20 10:08:24 +03:00
data qtest/bios-tables-test: Update tables for smmuv3 tests 2025-09-16 17:31:55 +01:00
decode decodetree: Infer argument set before inferring format 2025-07-25 10:31:45 +01:00
docker tests/docker: fix debian-all-test-cross 2025-08-04 16:13:38 +01:00
fp fpu: allow flushing of output denormals to be after rounding 2025-02-11 16:22:07 +00:00
functional tests/functional/x86_64: Accept a few locked pages in test_memlock.py 2025-09-16 09:55:52 -07:00
guest-debug tests, scripts: Don't import print_function from __future__ 2025-09-16 17:31:53 +01:00
image-fuzzer
include meson: fix Windows build 2025-06-16 13:16:27 -04:00
keys
lcitool build, dockerfiles: add support for detecting rustdoc 2025-06-03 22:42:18 +02:00
migration-stress guestperf: Add test result data into report 2025-02-14 15:19:07 -03:00
multiboot
perf/block/qcow2
qapi-schema qapi: switch to use QEMU_TEST_REGENERATE env var 2025-09-16 13:31:40 -04:00
qemu-iotests iotests/check: always enable all python warnings 2025-09-15 14:36:02 -04:00
qtest qtest/bios-tables-test: Update tables for smmuv3 tests 2025-09-16 17:31:55 +01:00
rocker
tcg target/arm: Added test case for SME register exposure to GDB 2025-09-16 17:31:54 +01:00
tracetool tracetool-test: allow to run in parallel 2025-09-16 13:31:40 -04:00
tsan
uefi-test-tools uefi-test-tools:: Add LoongArch64 support 2025-06-01 06:38:53 -04:00
unit util: drop qemu_socket_set_nonblock() 2025-09-19 12:46:07 +01:00
vm tests/vm: bump FreeBSD image to 14.3 2025-07-14 10:29:17 +02:00
vmstate-static-checker-data
dbus-vmstate-daemon.sh
Makefile.include tracetool: add test suite for tracetool with reference output 2025-09-16 13:31:40 -04:00
meson.build tracetool: add test suite for tracetool with reference output 2025-09-16 13:31:40 -04:00
test-qht-par.c
vhost-user-bridge.c