@ -702,6 +702,8 @@ static int test_migrate_start(QTestState **from, QTestState **to,
{
g_autofree gchar * arch_source = NULL ;
g_autofree gchar * arch_target = NULL ;
/* options for source and target */
g_autofree gchar * arch_opts = NULL ;
g_autofree gchar * cmd_source = NULL ;
g_autofree gchar * cmd_target = NULL ;
const gchar * ignore_stderr ;
@ -727,15 +729,13 @@ static int test_migrate_start(QTestState **from, QTestState **to,
assert ( sizeof ( x86_bootsect ) = = 512 ) ;
init_bootfile ( bootpath , x86_bootsect , sizeof ( x86_bootsect ) ) ;
memory_size = " 150M " ;
arch_source = g_strdup_printf ( " -drive file=%s,format=raw " , bootpath ) ;
arch_target = g_strdup ( arch_source ) ;
arch_opts = g_strdup_printf ( " -drive file=%s,format=raw " , bootpath ) ;
start_address = X86_TEST_MEM_START ;
end_address = X86_TEST_MEM_END ;
} else if ( g_str_equal ( arch , " s390x " ) ) {
init_bootfile ( bootpath , s390x_elf , sizeof ( s390x_elf ) ) ;
memory_size = " 128M " ;
arch_source = g_strdup_printf ( " -bios %s " , bootpath ) ;
arch_target = g_strdup ( arch_source ) ;
arch_opts = g_strdup_printf ( " -bios %s " , bootpath ) ;
start_address = S390_TEST_MEM_START ;
end_address = S390_TEST_MEM_END ;
} else if ( strcmp ( arch , " ppc64 " ) = = 0 ) {
@ -743,20 +743,16 @@ static int test_migrate_start(QTestState **from, QTestState **to,
memory_size = " 256M " ;
start_address = PPC_TEST_MEM_START ;
end_address = PPC_TEST_MEM_END ;
arch_source = g_strdup_printf ( " -nodefaults "
" -prom-env 'use-nvramrc?=true' -prom-env "
arch_source = g_strdup_printf ( " -prom-env 'use-nvramrc?=true' -prom-env "
" 'nvramrc=hex . \" _ \" begin %x %x "
" do i c@ 1 + i c! 1000 +loop . \" B \" 0 "
" until' " , end_address , start_address ) ;
arch_target = g_strdup ( " -nodefaults " ) ;
arch_opts = g_strdup ( " -nodefaults " ) ;
} else if ( strcmp ( arch , " aarch64 " ) = = 0 ) {
init_bootfile ( bootpath , aarch64_kernel , sizeof ( aarch64_kernel ) ) ;
machine_opts = " -machine virt,gic-version=max " ;
memory_size = " 150M " ;
arch_source = g_strdup_printf ( " -cpu max "
" -kernel %s " ,
bootpath ) ;
arch_target = g_strdup ( arch_source ) ;
arch_opts = g_strdup_printf ( " -cpu max -kernel %s " , bootpath ) ;
start_address = ARM_TEST_MEM_START ;
end_address = ARM_TEST_MEM_END ;
@ -795,12 +791,14 @@ static int test_migrate_start(QTestState **from, QTestState **to,
" -name source,debug-threads=on "
" -m %s "
" -serial file:%s/src_serial "
" %s %s %s %s " ,
" %s %s %s %s %s " ,
args - > use_dirty_ring ?
" ,dirty-ring-size=4096 " : " " ,
machine_opts ? machine_opts : " " ,
memory_size , tmpfs ,
arch_source , shmem_opts ,
arch_opts ? arch_opts : " " ,
arch_source ? arch_source : " " ,
shmem_opts ,
args - > opts_source ? args - > opts_source : " " ,
ignore_stderr ) ;
if ( ! args - > only_target ) {
@ -815,12 +813,14 @@ static int test_migrate_start(QTestState **from, QTestState **to,
" -m %s "
" -serial file:%s/dest_serial "
" -incoming %s "
" %s %s %s %s " ,
" %s %s %s %s %s " ,
args - > use_dirty_ring ?
" ,dirty-ring-size=4096 " : " " ,
machine_opts ? machine_opts : " " ,
memory_size , tmpfs , uri ,
arch_target , shmem_opts ,
arch_opts ? arch_opts : " " ,
arch_target ? arch_target : " " ,
shmem_opts ,
args - > opts_target ? args - > opts_target : " " ,
ignore_stderr ) ;
* to = qtest_init ( cmd_target ) ;