mirror of https://gitee.com/openkylin/qemu.git
qemu-iotests: Don't create fifos / pidfiles with protocol paths
Trying to create, use, and remove fifos and pidfiles on protocol paths (e.g. nfs://localhost/scratch/qemu-nbd.pid) is obviously broken. Use the local $TEST_DIR path before it is 'protocolized' for these files. Signed-off-by: Jeff Cody <jcody@redhat.com> Message-id: bb4a731a35bc4ac81fe3db17479dd686315317c7.1485392617.git.jcody@redhat.com Reviewed-by: Max Reitz <mreitz@redhat.com> Signed-off-by: Max Reitz <mreitz@redhat.com>
This commit is contained in:
parent
418661e032
commit
846a1d118e
|
@ -109,7 +109,7 @@ _qemu_wrapper()
|
|||
{
|
||||
(
|
||||
if [ -n "${QEMU_NEED_PID}" ]; then
|
||||
echo $BASHPID > "${TEST_DIR}/qemu-${_QEMU_HANDLE}.pid"
|
||||
echo $BASHPID > "${QEMU_TEST_DIR}/qemu-${_QEMU_HANDLE}.pid"
|
||||
fi
|
||||
exec "$QEMU_PROG" $QEMU_OPTIONS "$@"
|
||||
)
|
||||
|
@ -151,7 +151,7 @@ _qemu_io_wrapper()
|
|||
_qemu_nbd_wrapper()
|
||||
{
|
||||
(
|
||||
echo $BASHPID > "${TEST_DIR}/qemu-nbd.pid"
|
||||
echo $BASHPID > "${QEMU_TEST_DIR}/qemu-nbd.pid"
|
||||
exec "$QEMU_NBD_PROG" $QEMU_NBD_OPTIONS "$@"
|
||||
)
|
||||
}
|
||||
|
@ -186,6 +186,8 @@ if [ -z "$TEST_DIR" ]; then
|
|||
TEST_DIR=`pwd`/scratch
|
||||
fi
|
||||
|
||||
QEMU_TEST_DIR="${TEST_DIR}"
|
||||
|
||||
if [ ! -e "$TEST_DIR" ]; then
|
||||
mkdir "$TEST_DIR"
|
||||
fi
|
||||
|
|
|
@ -27,8 +27,8 @@
|
|||
|
||||
QEMU_COMM_TIMEOUT=10
|
||||
|
||||
QEMU_FIFO_IN="${TEST_DIR}/qmp-in-$$"
|
||||
QEMU_FIFO_OUT="${TEST_DIR}/qmp-out-$$"
|
||||
QEMU_FIFO_IN="${QEMU_TEST_DIR}/qmp-in-$$"
|
||||
QEMU_FIFO_OUT="${QEMU_TEST_DIR}/qmp-out-$$"
|
||||
|
||||
QEMU_HANDLE=0
|
||||
|
||||
|
@ -204,9 +204,9 @@ function _cleanup_qemu()
|
|||
for i in "${!QEMU_OUT[@]}"
|
||||
do
|
||||
local QEMU_PID
|
||||
if [ -f "${TEST_DIR}/qemu-${i}.pid" ]; then
|
||||
read QEMU_PID < "${TEST_DIR}/qemu-${i}.pid"
|
||||
rm -f "${TEST_DIR}/qemu-${i}.pid"
|
||||
if [ -f "${QEMU_TEST_DIR}/qemu-${i}.pid" ]; then
|
||||
read QEMU_PID < "${QEMU_TEST_DIR}/qemu-${i}.pid"
|
||||
rm -f "${QEMU_TEST_DIR}/qemu-${i}.pid"
|
||||
if [ -z "${wait}" ] && [ -n "${QEMU_PID}" ]; then
|
||||
kill -KILL ${QEMU_PID} 2>/dev/null
|
||||
fi
|
||||
|
|
|
@ -193,11 +193,11 @@ _cleanup_test_img()
|
|||
case "$IMGPROTO" in
|
||||
|
||||
nbd)
|
||||
if [ -f "${TEST_DIR}/qemu-nbd.pid" ]; then
|
||||
if [ -f "${QEMU_TEST_DIR}/qemu-nbd.pid" ]; then
|
||||
local QEMU_NBD_PID
|
||||
read QEMU_NBD_PID < "${TEST_DIR}/qemu-nbd.pid"
|
||||
read QEMU_NBD_PID < "${QEMU_TEST_DIR}/qemu-nbd.pid"
|
||||
kill ${QEMU_NBD_PID}
|
||||
rm -f "${TEST_DIR}/qemu-nbd.pid"
|
||||
rm -f "${QEMU_TEST_DIR}/qemu-nbd.pid"
|
||||
fi
|
||||
rm -f "$TEST_IMG_FILE"
|
||||
;;
|
||||
|
|
Loading…
Reference in New Issue