@@ -179,6 +179,7 @@ static AHCIQState *ahci_boot(const char *cli, ...)
va_end(ap);
} else {
cli = "-drive if=none,id=drive0,file=%s,cache=writeback,serial=%s"
+ ",lock-image=off"
",format=%s"
" -M q35 "
"-device ide-hd,drive=drive0 "
@@ -1082,6 +1083,7 @@ static void test_flush_retry(void)
prepare_blkdebug_script(debug_path, "flush_to_disk");
ahci = ahci_boot_and_enable("-drive file=blkdebug:%s:%s,if=none,id=drive0,"
"format=%s,cache=writeback,"
+ "lock-image=off,"
"rerror=stop,werror=stop "
"-M q35 "
"-device ide-hd,drive=drive0 ",
@@ -1107,9 +1109,10 @@ static void test_migrate_sanity(void)
char *uri = g_strdup_printf("unix:%s", mig_socket);
src = ahci_boot("-m 1024 -M q35 "
- "-drive if=ide,file=%s,format=%s ", tmp_path, imgfmt);
+ "-drive if=ide,file=%s,lock-image=off,format=%s ",
+ tmp_path, imgfmt);
dst = ahci_boot("-m 1024 -M q35 "
- "-drive if=ide,file=%s,format=%s "
+ "-drive if=ide,file=%s,format=%s,lock-image=off "
"-incoming %s", tmp_path, imgfmt, uri);
ahci_migrate(src, dst, uri);
@@ -1132,10 +1135,10 @@ static void ahci_migrate_simple(uint8_t cmd_read, uint8_t cmd_write)
char *uri = g_strdup_printf("unix:%s", mig_socket);
src = ahci_boot_and_enable("-m 1024 -M q35 "
- "-drive if=ide,format=%s,file=%s ",
+ "-drive if=ide,format=%s,file=%s,lock-image=off ",
imgfmt, tmp_path);
dst = ahci_boot("-m 1024 -M q35 "
- "-drive if=ide,format=%s,file=%s "
+ "-drive if=ide,format=%s,file=%s,lock-image=off "
"-incoming %s", imgfmt, tmp_path, uri);
set_context(src->parent);
@@ -1192,6 +1195,7 @@ static void ahci_halted_io_test(uint8_t cmd_read, uint8_t cmd_write)
prepare_blkdebug_script(debug_path, "write_aio");
ahci = ahci_boot_and_enable("-drive file=blkdebug:%s:%s,if=none,id=drive0,"
+ "lock-image=off,"
"format=%s,cache=writeback,"
"rerror=stop,werror=stop "
"-M q35 "
@@ -1258,6 +1262,7 @@ static void ahci_migrate_halted_io(uint8_t cmd_read, uint8_t cmd_write)
prepare_blkdebug_script(debug_path, "write_aio");
src = ahci_boot_and_enable("-drive file=blkdebug:%s:%s,if=none,id=drive0,"
+ "lock-image=off,"
"format=%s,cache=writeback,"
"rerror=stop,werror=stop "
"-M q35 "
@@ -1266,6 +1271,7 @@ static void ahci_migrate_halted_io(uint8_t cmd_read, uint8_t cmd_write)
tmp_path, imgfmt);
dst = ahci_boot("-drive file=%s,if=none,id=drive0,"
+ "lock-image=off,"
"format=%s,cache=writeback,"
"rerror=stop,werror=stop "
"-M q35 "
@@ -1331,12 +1337,14 @@ static void test_flush_migrate(void)
src = ahci_boot_and_enable("-drive file=blkdebug:%s:%s,if=none,id=drive0,"
"cache=writeback,rerror=stop,werror=stop,"
+ "lock-image=off,"
"format=%s "
"-M q35 "
"-device ide-hd,drive=drive0 ",
debug_path, tmp_path, imgfmt);
dst = ahci_boot("-drive file=%s,if=none,id=drive0,"
"cache=writeback,rerror=stop,werror=stop,"
+ "lock-image=off,"
"format=%s "
"-M q35 "
"-device ide-hd,drive=drive0 "
The case is the temporary image is sometimes used by more than one QEMU processes, just use the nop lock to avoid image locking failures. Signed-off-by: Fam Zheng <famz@redhat.com> --- tests/ahci-test.c | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-)