qemu-iotests 108 can leave a stale FUSE mount
The qemu-iotests 108 test case caused the s390x GitLab CI runner to break permanently with the following error:
```
chmod: cannot access '/home/gitlab-runner/builds/P3MFS4LUf/0/qemu-project/qemu/build/scratch/qcow2-file-108/fuse-export': Transport endpoint is not connected
```
Here is the full test log:
https://gitlab.com/qemu-project/qemu/-/jobs/14795950219
The path did not change between runs, so I guess there is some setup code in the gitlab-runner environment that chmods all files, including stale files left by a previous run, and it trips over when there is a stale FUSE mount.
Although qemu-iotests 108 tries to clean up after itself, I wonder if the FUSE mount is leaked when qsd.pid has already shut down:
```
_cleanup()
{
_cleanup_test_img
if [ -f "$TEST_DIR/qsd.pid" ]; then
^^^^^^^^^^^^^^^^^^^^^^
qsd_pid=$(cat "$TEST_DIR/qsd.pid")
kill -KILL "$qsd_pid"
fusermount -u "$TEST_DIR/fuse-export" &>/dev/null
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
fi
rm -f "$TEST_DIR/fuse-export"
}
```
Perhaps the fusermount command should be outside the if statement so it always runs, even if qsd has shut down already?
issue