mirror of https://github.com/xemu-project/xemu.git
* Fixes for the gitlab-CI (fix the hanging build-oss-fuzz pipeline)
* Add documentation about features that have been removed in older versions -----BEGIN PGP SIGNATURE----- iQJFBAABCAAvFiEEJ7iIR+7gJQEY8+q5LtnXdP5wLbUFAmET1KQRHHRodXRoQHJl ZGhhdC5jb20ACgkQLtnXdP5wLbWX8A/9FK6r1lRWLx9KVFyIuwCpNJFA97hdC0su OQKWJm1lanipb0hvD+URAQvOK/NqfF+2CHRAtEFR48MQeKhyjdAFXmFD7oNXHcun CKMFlBMSWnQlWftB9YsYG69n+90oad9IRCS7j4oq7NH3kmg9UPtMnrVviMSBW4q3 HDBNJGISN88Zt07WFjsvuiGjUtLOZEKzh8xcjohKeODhq70HfzakdbXedxRf/Nhk 8iqntRsHjSJ1+bE/Ozw5erlfMGk0RsBb+fzAFQEc70qD8eUKUgrIDfXSBNLufnRK 06FeTobWL4cF3di5FUjr1o0Af4mM0h/sUU7FfZ0W2WQrtXOpfpSMthVbdnBMxYhr FRWGFGTtzgCHuDL/WiJ8yAwfYlKj3f7ZmFvt+kzUq2O+c+klGX8jeyJ2FjNtV0HM KtWmw6S3vQvh1STUH57LtyH2f+BVtGPtIJClfqLcyzibUbyr7JgtxR3rHQaQ9nml 03mdzRgQq7RNpsFkqPvBPhDg4D7D09Nq9tiLnHfyrHcV/3VmifHr6cXJGiZsvY7x f2+u/6H+q8yN3EmMbrtpUOENmLYsro8vaNvXsnnwpCYS2j5ZAYp8fmhYswUcV1LD jxMw0+YNWycV6Ra8s4WGjH6hYn6ylv86+O0uUK7x+PaSUW/vJ6SymJ4joX16nr2i 0QA1xlxizoM= =VXhO -----END PGP SIGNATURE----- Merge remote-tracking branch 'remotes/thuth-gitlab/tags/pull-request-2021-08-11' into staging * Fixes for the gitlab-CI (fix the hanging build-oss-fuzz pipeline) * Add documentation about features that have been removed in older versions # gpg: Signature made Wed 11 Aug 2021 14:46:12 BST # gpg: using RSA key 27B88847EEE0250118F3EAB92ED9D774FE702DB5 # gpg: issuer "thuth@redhat.com" # gpg: Good signature from "Thomas Huth <th.huth@gmx.de>" [full] # gpg: aka "Thomas Huth <thuth@redhat.com>" [full] # gpg: aka "Thomas Huth <huth@tuxfamily.org>" [full] # gpg: aka "Thomas Huth <th.huth@posteo.de>" [unknown] # Primary key fingerprint: 27B8 8847 EEE0 2501 18F3 EAB9 2ED9 D774 FE70 2DB5 * remotes/thuth-gitlab/tags/pull-request-2021-08-11: docs/about/removed-features: Document removed machines from older QEMU versions docs/about/removed-features: Document removed devices from older QEMU versions docs/about/removed-features: Document removed HMP commands from QEMU v2.12 docs/about/removed-features: Document removed CLI options from QEMU v3.1 docs/about/removed-features: Document removed CLI options from QEMU v3.0 docs/about/removed-features: Document removed CLI options from QEMU v2.12 fuzz: avoid building twice, when running on gitlab tests/qtest/vhost-user-blk-test: Check whether qemu-storage-daemon is available storage-daemon: Add missing build dependency to the vhost-user-blk-test gitlab: skip many more targets in windows cross builds gitlab: exclude sparc-softmmu and riscv32-softmmu from cross builds Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
commit
bd44d64a38
|
@ -9,7 +9,8 @@
|
||||||
../configure --enable-werror --disable-docs $QEMU_CONFIGURE_OPTS
|
../configure --enable-werror --disable-docs $QEMU_CONFIGURE_OPTS
|
||||||
--disable-user --target-list-exclude="arm-softmmu cris-softmmu
|
--disable-user --target-list-exclude="arm-softmmu cris-softmmu
|
||||||
i386-softmmu microblaze-softmmu mips-softmmu mipsel-softmmu
|
i386-softmmu microblaze-softmmu mips-softmmu mipsel-softmmu
|
||||||
mips64-softmmu ppc-softmmu sh4-softmmu xtensa-softmmu"
|
mips64-softmmu ppc-softmmu riscv32-softmmu sh4-softmmu
|
||||||
|
sparc-softmmu xtensa-softmmu $CROSS_SKIP_TARGETS"
|
||||||
- make -j$(expr $(nproc) + 1) all check-build $MAKE_CHECK_ARGS
|
- make -j$(expr $(nproc) + 1) all check-build $MAKE_CHECK_ARGS
|
||||||
- if grep -q "EXESUF=.exe" config-host.mak;
|
- if grep -q "EXESUF=.exe" config-host.mak;
|
||||||
then make installer;
|
then make installer;
|
||||||
|
|
|
@ -160,6 +160,8 @@ cross-win32-system:
|
||||||
job: win32-fedora-cross-container
|
job: win32-fedora-cross-container
|
||||||
variables:
|
variables:
|
||||||
IMAGE: fedora-win32-cross
|
IMAGE: fedora-win32-cross
|
||||||
|
CROSS_SKIP_TARGETS: alpha-softmmu avr-softmmu hppa-softmmu m68k-softmmu
|
||||||
|
microblazeel-softmmu mips64el-softmmu nios2-softmmu
|
||||||
artifacts:
|
artifacts:
|
||||||
paths:
|
paths:
|
||||||
- build/qemu-setup*.exe
|
- build/qemu-setup*.exe
|
||||||
|
@ -170,6 +172,8 @@ cross-win64-system:
|
||||||
job: win64-fedora-cross-container
|
job: win64-fedora-cross-container
|
||||||
variables:
|
variables:
|
||||||
IMAGE: fedora-win64-cross
|
IMAGE: fedora-win64-cross
|
||||||
|
CROSS_SKIP_TARGETS: or1k-softmmu rx-softmmu sh4eb-softmmu sparc64-softmmu
|
||||||
|
tricore-softmmu xtensaeb-softmmu
|
||||||
artifacts:
|
artifacts:
|
||||||
paths:
|
paths:
|
||||||
- build/qemu-setup*.exe
|
- build/qemu-setup*.exe
|
||||||
|
|
|
@ -9,8 +9,145 @@ trouble after a recent upgrade.
|
||||||
System emulator command line arguments
|
System emulator command line arguments
|
||||||
--------------------------------------
|
--------------------------------------
|
||||||
|
|
||||||
``-net ...,name=``\ *name* (removed in 5.1)
|
``-hdachs`` (removed in 2.12)
|
||||||
'''''''''''''''''''''''''''''''''''''''''''
|
'''''''''''''''''''''''''''''
|
||||||
|
|
||||||
|
The geometry defined by ``-hdachs c,h,s,t`` should now be specified via
|
||||||
|
``-device ide-hd,drive=dr,cyls=c,heads=h,secs=s,bios-chs-trans=t``
|
||||||
|
(together with ``-drive if=none,id=dr,...``).
|
||||||
|
|
||||||
|
``-net channel`` (removed in 2.12)
|
||||||
|
''''''''''''''''''''''''''''''''''
|
||||||
|
|
||||||
|
This option has been replaced by ``-net user,guestfwd=...``.
|
||||||
|
|
||||||
|
``-net dump`` (removed in 2.12)
|
||||||
|
'''''''''''''''''''''''''''''''
|
||||||
|
|
||||||
|
``-net dump[,vlan=n][,file=filename][,len=maxlen]`` has been replaced by
|
||||||
|
``-object filter-dump,id=id,netdev=dev[,file=filename][,maxlen=maxlen]``.
|
||||||
|
Note that the new syntax works with netdev IDs instead of the old "vlan" hubs.
|
||||||
|
|
||||||
|
``-no-kvm-pit`` (removed in 2.12)
|
||||||
|
'''''''''''''''''''''''''''''''''
|
||||||
|
|
||||||
|
This was just a dummy option that has been ignored, since the in-kernel PIT
|
||||||
|
cannot be disabled separately from the irqchip anymore. A similar effect
|
||||||
|
(which also disables the KVM IOAPIC) can be obtained with
|
||||||
|
``-M kernel_irqchip=split``.
|
||||||
|
|
||||||
|
``-tdf`` (removed in 2.12)
|
||||||
|
''''''''''''''''''''''''''
|
||||||
|
|
||||||
|
There is no replacement, the ``-tdf`` option has just been ignored since the
|
||||||
|
behaviour that could be changed by this option in qemu-kvm is now the default
|
||||||
|
when using the KVM PIT. It still can be requested explicitly using
|
||||||
|
``-global kvm-pit.lost_tick_policy=delay``.
|
||||||
|
|
||||||
|
``-drive secs=s``, ``-drive heads=h`` & ``-drive cyls=c`` (removed in 3.0)
|
||||||
|
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
|
||||||
|
|
||||||
|
The drive geometry should now be specified via
|
||||||
|
``-device ...,drive=dr,cyls=c,heads=h,secs=s`` (together with
|
||||||
|
``-drive if=none,id=dr,...``).
|
||||||
|
|
||||||
|
``-drive serial=``, ``-drive trans=`` & ``-drive addr=`` (removed in 3.0)
|
||||||
|
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
|
||||||
|
|
||||||
|
Use ``-device ...,drive=dr,serial=r,bios-chs-trans=t,addr=a`` instead
|
||||||
|
(together with ``-drive if=none,id=dr,...``).
|
||||||
|
|
||||||
|
``-net ...,vlan=x`` (removed in 3.0)
|
||||||
|
''''''''''''''''''''''''''''''''''''
|
||||||
|
|
||||||
|
The term "vlan" was very confusing for most users in this context (it's about
|
||||||
|
specifying a hub ID, not about IEEE 802.1Q or something similar), so this
|
||||||
|
has been removed. To connect one NIC frontend with a network backend, either
|
||||||
|
use ``-nic ...`` (e.g. for on-board NICs) or use ``-netdev ...,id=n`` together
|
||||||
|
with ``-device ...,netdev=n`` (for full control over pluggable NICs). To
|
||||||
|
connect multiple NICs or network backends via a hub device (which is what
|
||||||
|
vlan did), use ``-nic hubport,hubid=x,...`` or
|
||||||
|
``-netdev hubport,id=n,hubid=x,...`` (with ``-device ...,netdev=n``) instead.
|
||||||
|
|
||||||
|
``-no-kvm-irqchip`` (removed in 3.0)
|
||||||
|
''''''''''''''''''''''''''''''''''''
|
||||||
|
|
||||||
|
Use ``-machine kernel_irqchip=off`` instead.
|
||||||
|
|
||||||
|
``-no-kvm-pit-reinjection`` (removed in 3.0)
|
||||||
|
''''''''''''''''''''''''''''''''''''''''''''
|
||||||
|
|
||||||
|
Use ``-global kvm-pit.lost_tick_policy=discard`` instead.
|
||||||
|
|
||||||
|
``-balloon`` (removed in 3.1)
|
||||||
|
'''''''''''''''''''''''''''''
|
||||||
|
|
||||||
|
The ``-balloon virtio`` option has been replaced by ``-device virtio-balloon``.
|
||||||
|
The ``-balloon none`` option was a no-op and has no replacement.
|
||||||
|
|
||||||
|
``-bootp`` (removed in 3.1)
|
||||||
|
'''''''''''''''''''''''''''
|
||||||
|
|
||||||
|
The ``-bootp /some/file`` argument is replaced by either
|
||||||
|
``-netdev user,id=x,bootp=/some/file`` (for pluggable NICs, accompanied with
|
||||||
|
``-device ...,netdev=x``), or ``-nic user,bootp=/some/file`` (for on-board NICs).
|
||||||
|
The new syntax allows different settings to be provided per NIC.
|
||||||
|
|
||||||
|
``-redir`` (removed in 3.1)
|
||||||
|
'''''''''''''''''''''''''''
|
||||||
|
|
||||||
|
The ``-redir [tcp|udp]:hostport:[guestaddr]:guestport`` option is replaced
|
||||||
|
by either ``-netdev
|
||||||
|
user,id=x,hostfwd=[tcp|udp]:[hostaddr]:hostport-[guestaddr]:guestport``
|
||||||
|
(for pluggable NICs, accompanied with ``-device ...,netdev=x``) or by the option
|
||||||
|
``-nic user,hostfwd=[tcp|udp]:[hostaddr]:hostport-[guestaddr]:guestport``
|
||||||
|
(for on-board NICs). The new syntax allows different settings to be provided
|
||||||
|
per NIC.
|
||||||
|
|
||||||
|
``-smb`` (removed in 3.1)
|
||||||
|
'''''''''''''''''''''''''
|
||||||
|
|
||||||
|
The ``-smb /some/dir`` argument is replaced by either
|
||||||
|
``-netdev user,id=x,smb=/some/dir`` (for pluggable NICs, accompanied with
|
||||||
|
``-device ...,netdev=x``), or ``-nic user,smb=/some/dir`` (for on-board NICs).
|
||||||
|
The new syntax allows different settings to be provided per NIC.
|
||||||
|
|
||||||
|
``-tftp`` (removed in 3.1)
|
||||||
|
''''''''''''''''''''''''''
|
||||||
|
|
||||||
|
The ``-tftp /some/dir`` argument is replaced by either
|
||||||
|
``-netdev user,id=x,tftp=/some/dir`` (for pluggable NICs, accompanied with
|
||||||
|
``-device ...,netdev=x``), or ``-nic user,tftp=/some/dir`` (for embedded NICs).
|
||||||
|
The new syntax allows different settings to be provided per NIC.
|
||||||
|
|
||||||
|
``-localtime`` (removed in 3.1)
|
||||||
|
'''''''''''''''''''''''''''''''
|
||||||
|
|
||||||
|
Replaced by ``-rtc base=localtime``.
|
||||||
|
|
||||||
|
``-nodefconfig`` (removed in 3.1)
|
||||||
|
'''''''''''''''''''''''''''''''''
|
||||||
|
|
||||||
|
Use ``-no-user-config`` instead.
|
||||||
|
|
||||||
|
``-rtc-td-hack`` (removed in 3.1)
|
||||||
|
'''''''''''''''''''''''''''''''''
|
||||||
|
|
||||||
|
Use ``-rtc driftfix=slew`` instead.
|
||||||
|
|
||||||
|
``-startdate`` (removed in 3.1)
|
||||||
|
'''''''''''''''''''''''''''''''
|
||||||
|
|
||||||
|
Replaced by ``-rtc base=date``.
|
||||||
|
|
||||||
|
``-vnc ...,tls=...``, ``-vnc ...,x509=...`` & ``-vnc ...,x509verify=...``
|
||||||
|
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
|
||||||
|
|
||||||
|
The "tls-creds" option should be used instead to point to a "tls-creds-x509"
|
||||||
|
object created using "-object".
|
||||||
|
|
||||||
|
``-net ...,name=...`` (removed in 5.1)
|
||||||
|
''''''''''''''''''''''''''''''''''''''
|
||||||
|
|
||||||
The ``name`` parameter of the ``-net`` option was a synonym
|
The ``name`` parameter of the ``-net`` option was a synonym
|
||||||
for the ``id`` parameter, which should now be used instead.
|
for the ``id`` parameter, which should now be used instead.
|
||||||
|
@ -219,6 +356,17 @@ Specify the properties for the object as top-level arguments instead.
|
||||||
Human Monitor Protocol (HMP) commands
|
Human Monitor Protocol (HMP) commands
|
||||||
-------------------------------------
|
-------------------------------------
|
||||||
|
|
||||||
|
``usb_add`` and ``usb_remove`` (removed in 2.12)
|
||||||
|
''''''''''''''''''''''''''''''''''''''''''''''''
|
||||||
|
|
||||||
|
Replaced by ``device_add`` and ``device_del`` (use ``device_add help`` for a
|
||||||
|
list of available devices).
|
||||||
|
|
||||||
|
``host_net_add`` and ``host_net_remove`` (removed in 2.12)
|
||||||
|
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
|
||||||
|
|
||||||
|
Replaced by ``netdev_add`` and ``netdev_del``.
|
||||||
|
|
||||||
The ``hub_id`` parameter of ``hostfwd_add`` / ``hostfwd_remove`` (removed in 5.0)
|
The ``hub_id`` parameter of ``hostfwd_add`` / ``hostfwd_remove`` (removed in 5.0)
|
||||||
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
|
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
|
||||||
|
|
||||||
|
@ -325,6 +473,22 @@ Removed without replacement.
|
||||||
System emulator machines
|
System emulator machines
|
||||||
------------------------
|
------------------------
|
||||||
|
|
||||||
|
``s390-virtio`` (removed in 2.6)
|
||||||
|
''''''''''''''''''''''''''''''''
|
||||||
|
|
||||||
|
Use the ``s390-ccw-virtio`` machine instead.
|
||||||
|
|
||||||
|
The m68k ``dummy`` machine (removed in 2.9)
|
||||||
|
'''''''''''''''''''''''''''''''''''''''''''
|
||||||
|
|
||||||
|
Use the ``none`` machine with the ``loader`` device instead.
|
||||||
|
|
||||||
|
``xlnx-ep108`` (removed in 3.0)
|
||||||
|
'''''''''''''''''''''''''''''''
|
||||||
|
|
||||||
|
The EP108 was an early access development board that is no longer used.
|
||||||
|
Use the ``xlnx-zcu102`` machine instead.
|
||||||
|
|
||||||
``spike_v1.9.1`` and ``spike_v1.10`` (removed in 5.1)
|
``spike_v1.9.1`` and ``spike_v1.10`` (removed in 5.1)
|
||||||
'''''''''''''''''''''''''''''''''''''''''''''''''''''
|
'''''''''''''''''''''''''''''''''''''''''''''''''''''
|
||||||
|
|
||||||
|
@ -343,8 +507,8 @@ mips ``fulong2e`` machine alias (removed in 6.0)
|
||||||
|
|
||||||
This machine has been renamed ``fuloong2e``.
|
This machine has been renamed ``fuloong2e``.
|
||||||
|
|
||||||
``pc-1.0``, ``pc-1.1``, ``pc-1.2`` and ``pc-1.3`` (removed in 6.0)
|
``pc-0.10`` up to ``pc-1.3`` (removed in 4.0 up to 6.0)
|
||||||
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
|
'''''''''''''''''''''''''''''''''''''''''''''''''''''''
|
||||||
|
|
||||||
These machine types were very old and likely could not be used for live
|
These machine types were very old and likely could not be used for live
|
||||||
migration from old QEMU versions anymore. Use a newer machine type instead.
|
migration from old QEMU versions anymore. Use a newer machine type instead.
|
||||||
|
@ -365,6 +529,17 @@ running the old binaries, you can use older versions of QEMU.
|
||||||
System emulator devices
|
System emulator devices
|
||||||
-----------------------
|
-----------------------
|
||||||
|
|
||||||
|
``spapr-pci-vfio-host-bridge`` (removed in 2.12)
|
||||||
|
'''''''''''''''''''''''''''''''''''''''''''''''''
|
||||||
|
|
||||||
|
The ``spapr-pci-vfio-host-bridge`` device type has been replaced by the
|
||||||
|
``spapr-pci-host-bridge`` device type.
|
||||||
|
|
||||||
|
``ivshmem`` (removed in 4.0)
|
||||||
|
''''''''''''''''''''''''''''
|
||||||
|
|
||||||
|
Replaced by either the ``ivshmem-plain`` or ``ivshmem-doorbell``.
|
||||||
|
|
||||||
``ide-drive`` (removed in 6.0)
|
``ide-drive`` (removed in 6.0)
|
||||||
''''''''''''''''''''''''''''''
|
''''''''''''''''''''''''''''''
|
||||||
|
|
||||||
|
|
|
@ -73,17 +73,19 @@ if ! make "-j$(nproc)" qemu-fuzz-i386; then
|
||||||
"\nFor example: CC=clang CXX=clang++ $0"
|
"\nFor example: CC=clang CXX=clang++ $0"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
for i in $(ldd ./qemu-fuzz-i386 | cut -f3 -d' '); do
|
if [ "$GITLAB_CI" != "true" ]; then
|
||||||
cp "$i" "$DEST_DIR/lib/"
|
for i in $(ldd ./qemu-fuzz-i386 | cut -f3 -d' '); do
|
||||||
done
|
cp "$i" "$DEST_DIR/lib/"
|
||||||
rm qemu-fuzz-i386
|
done
|
||||||
|
rm qemu-fuzz-i386
|
||||||
|
|
||||||
# Build a second time to build the final binary with correct rpath
|
# Build a second time to build the final binary with correct rpath
|
||||||
../configure --disable-werror --cc="$CC" --cxx="$CXX" --enable-fuzzing \
|
../configure --disable-werror --cc="$CC" --cxx="$CXX" --enable-fuzzing \
|
||||||
--prefix="$DEST_DIR" --bindir="$DEST_DIR" --datadir="$DEST_DIR/data/" \
|
--prefix="$DEST_DIR" --bindir="$DEST_DIR" --datadir="$DEST_DIR/data/" \
|
||||||
--extra-cflags="$EXTRA_CFLAGS" --extra-ldflags="-Wl,-rpath,\$ORIGIN/lib" \
|
--extra-cflags="$EXTRA_CFLAGS" --extra-ldflags="-Wl,-rpath,\$ORIGIN/lib" \
|
||||||
--target-list="i386-softmmu"
|
--target-list="i386-softmmu"
|
||||||
make "-j$(nproc)" qemu-fuzz-i386 V=1
|
make "-j$(nproc)" qemu-fuzz-i386 V=1
|
||||||
|
fi
|
||||||
|
|
||||||
# Copy over the datadir
|
# Copy over the datadir
|
||||||
cp -r ../pc-bios/ "$DEST_DIR/pc-bios"
|
cp -r ../pc-bios/ "$DEST_DIR/pc-bios"
|
||||||
|
|
|
@ -6,8 +6,8 @@ subdir('qapi')
|
||||||
|
|
||||||
if have_tools
|
if have_tools
|
||||||
qsd_ss = qsd_ss.apply(config_host, strict: false)
|
qsd_ss = qsd_ss.apply(config_host, strict: false)
|
||||||
executable('qemu-storage-daemon',
|
qsd = executable('qemu-storage-daemon',
|
||||||
qsd_ss.sources(),
|
qsd_ss.sources(),
|
||||||
dependencies: qsd_ss.dependencies(),
|
dependencies: qsd_ss.dependencies(),
|
||||||
install: true)
|
install: true)
|
||||||
endif
|
endif
|
||||||
|
|
|
@ -276,8 +276,11 @@ foreach dir : target_dirs
|
||||||
endif
|
endif
|
||||||
qtest_env.set('G_TEST_DBUS_DAEMON', meson.source_root() / 'tests/dbus-vmstate-daemon.sh')
|
qtest_env.set('G_TEST_DBUS_DAEMON', meson.source_root() / 'tests/dbus-vmstate-daemon.sh')
|
||||||
qtest_env.set('QTEST_QEMU_BINARY', './qemu-system-' + target_base)
|
qtest_env.set('QTEST_QEMU_BINARY', './qemu-system-' + target_base)
|
||||||
qtest_env.set('QTEST_QEMU_STORAGE_DAEMON_BINARY', './storage-daemon/qemu-storage-daemon')
|
if have_tools and have_vhost_user_blk_server
|
||||||
|
qtest_env.set('QTEST_QEMU_STORAGE_DAEMON_BINARY', './storage-daemon/qemu-storage-daemon')
|
||||||
|
test_deps += [qsd]
|
||||||
|
endif
|
||||||
|
|
||||||
foreach test : target_qtests
|
foreach test : target_qtests
|
||||||
# Executables are shared across targets, declare them only the first time we
|
# Executables are shared across targets, declare them only the first time we
|
||||||
# encounter them
|
# encounter them
|
||||||
|
|
|
@ -789,6 +789,14 @@ static const char *qtest_qemu_storage_daemon_binary(void)
|
||||||
exit(0);
|
exit(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* If we've got a path to the binary, check whether we can access it */
|
||||||
|
if (strchr(qemu_storage_daemon_bin, '/') &&
|
||||||
|
access(qemu_storage_daemon_bin, X_OK) != 0) {
|
||||||
|
fprintf(stderr, "ERROR: '%s' is not accessible\n",
|
||||||
|
qemu_storage_daemon_bin);
|
||||||
|
exit(1);
|
||||||
|
}
|
||||||
|
|
||||||
return qemu_storage_daemon_bin;
|
return qemu_storage_daemon_bin;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue