Il 13/03/2014 14:18, Markus Armbruster ha scritto: > Paolo Bonzini <pbonz...@redhat.com> writes: > >> Il 12/03/2014 18:00, Markus Armbruster ha scritto: >>> + } else if (!runstate_check(RUN_STATE_PRELAUNCH) >>> + && !runstate_check(RUN_STATE_PAUSED)) { /* HACK */ >> >> Why not "if (runstate_is_running())"? > > The predicate actually wanted here is "monitor command 'cont' required > to get the guest running", because 'cont' is where the protection is. > My run state test is a crude approximation. >
Got it. Then you need to add at least a check for "runstate_check(RUN_STATE_INMIGRATE)", otherwise you break incoming migration. Actually, I think only SAVE_VM/RESTORE_VM/DEBUG are problematic, but I understand why you preferred a conservative test (sufficient condition, not necessary). You are singling out prelaunch and inmigrate because drive_init will reset autostart to 0 for an encrypted image, right? Paolo