Another issue is that 145 uses $TEST_IMG as follows:
SYSEMU_DRIVE_ARG=if=none,file="$TEST_IMG",driver=$IMGFMT
That doesn't work when json: contains a comma, since commas need to be
doubled up to escape them. This fails:
$ qemu-system-x86_64 -drive
'if=none,file=json:{"driver":"io_uring","filename":"test.img"}'
qemu-system-x86_64: -drive
if=none,file=json:{"driver":"io_uring","filename":"test.img"}:
warning: short-form boolean option '"filename":"test.img"}' deprecated
Please use "filename":"test.img"}=on instead
This works:
qemu-system-x86_64 -drive
'if=none,file=json:{"driver":"io_uring",,"filename":"test.img"}'
Maybe it's simply not possible to use TEST_IMG=json: in qemu-iotests?
The alternative is to always set IMGOPTSSYNTAX=true and then find the
test cases that fail because they contain non-IMGOPTSSYNTAX commands.
Stefan