[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH] blockdev: Refuse to open encrypted image unless
From: |
Markus Armbruster |
Subject: |
Re: [Qemu-devel] [PATCH] blockdev: Refuse to open encrypted image unless paused |
Date: |
Thu, 13 Mar 2014 16:00:29 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.2 (gnu/linux) |
Paolo Bonzini <address@hidden> writes:
> Il 13/03/2014 14:18, Markus Armbruster ha scritto:
>> Paolo Bonzini <address@hidden> 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.
You're right: main() goes from RUN_STATE_PRELAUNCH to
RUN_STATE_INMIGRATE right when it sees -incoming.
> Actually, I think only SAVE_VM/RESTORE_VM/DEBUG are
> problematic, but I understand why you preferred a conservative
> test (sufficient condition, not necessary).
Exactly.
> You are singling out prelaunch and inmigrate because drive_init
> will reset autostart to 0 for an encrypted image, right?
Yes.
Re: [Qemu-devel] [PATCH] blockdev: Refuse to open encrypted image unless paused, Eric Blake, 2014/03/13