qemu-cr16/tests
Bin Meng 65a2eff0f5 tests/qtest: boot-serial-test: Close the serial file before starting QEMU
This qtest executable created a serial chardev file to be passed to
the QEMU executable. The serial file was created by g_file_open_tmp(),
which internally opens the file with FILE_SHARE_WRITE security attribute
on Windows. Based on [1], there is only one case that allows the first
call to CreateFile() with GENERIC_READ & FILE_SHARE_WRITE, and second
call to CreateFile() with GENERIC_WRITE & FILE_SHARE_READ. All other
combinations require FILE_SHARE_WRITE in the second call. But there is
no way for the second call (in this case the QEMU executable) to know
what combination was passed to the first call, unless FILE_SHARE_WRITE
is passed to the second call.

Two processes shouldn't share the same file for writing with a chardev.
Let's close the serial file before starting QEMU.

[1] https://docs.microsoft.com/en-us/windows/win32/fileio/creating-and-opening-files

Signed-off-by: Bin Meng <bin.meng@windriver.com>
Message-Id: <20220927110632.1973965-40-bmeng.cn@gmail.com>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
2022-09-27 20:51:21 +02:00
..
avocado target/s390x: support PRNO_TRNG instruction 2022-09-26 17:23:11 +02:00
bench test/crypto: Add test suite for crypto akcipher 2022-05-26 11:41:54 +01:00
data qga: Replace 'blacklist' command line and config file options by 'block-rpcs' 2022-09-20 12:37:00 +02:00
decode
docker tests/docker: remove the Debian base images 2022-09-20 17:22:08 +01:00
fp meson: remove dead assignments 2022-09-01 07:42:37 +02:00
guest-debug tests/guest-debug: better handle gdb crashes 2022-04-20 16:04:20 +01:00
image-fuzzer
include
keys
lcitool tests/docker: update and flatten debian-amd64-cross 2022-09-20 17:22:08 +01:00
migration tests: Use g_mkdir_with_parents() 2022-08-25 15:24:09 +02:00
multiboot
perf/block/qcow2
plugin
qapi-schema meson: remove dead assignments 2022-09-01 07:42:37 +02:00
qemu-iotests tests/qemu-iotests/264: Allow up to 5s for the BLOCK_JOB_CANCEL event to arrive 2022-08-07 18:51:35 +02:00
qtest tests/qtest: boot-serial-test: Close the serial file before starting QEMU 2022-09-27 20:51:21 +02:00
rocker
tcg Hexagon update 2022-09-22 13:21:50 -04:00
tsan
uefi-test-tools
unit tests/unit: test-qga: Avoid using hardcoded /tmp 2022-09-27 20:51:20 +02:00
vm Testing and CI changes: 2022-09-21 13:10:51 -04:00
vmstate-static-checker-data
check-block.sh tests/qemu-iotests: Move the bash and sanitizer checks to meson.build 2022-04-20 09:46:54 +02:00
dbus-vmstate-daemon.sh
Makefile.include tests: install "qemu" namespace package into venv 2022-06-06 09:26:54 +02:00
meson.build meson: create have_vhost_* variables 2022-05-07 07:46:58 +02:00
requirements.txt tests: install "qemu" namespace package into venv 2022-06-06 09:26:54 +02:00
test-qht-par.c
vhost-user-bridge.c tests: vhost-user-bridge: Avoid using hardcoded /tmp 2022-09-27 20:51:20 +02:00