Re: [PATCH v5] x86: call smp vmxoff in smp stop

From: David Hildenbrand
Date: Thu Apr 20 2017 - 07:09:45 EST


On 20.04.2017 12:13, Paolo Bonzini wrote:
>
>
> On 20/04/2017 12:01, David Hildenbrand wrote:
>> On 19.04.2017 18:18, Paolo Bonzini wrote:
>>> From: Tiantian Feng <fengtiantian@xxxxxxxxxx>
>>>
>>> A CPU in VMX root mode will ignore INIT signals and fail to bring
>>> up the APs after reboot. Therefore, on a panic we disable VMX on all
>>> CPUs before rebooting or triggering kdump.
>>>
>>> Do this when halting the machine as well, in case a firmware-level reboot
>>> does not perform a cold reset for all processors. Without doing this,
>>> rebooting the host may hang.
>>
>> Guess this make sense, just wonder if something like that is actually
>> expected to work? Not doing a cold reset feels like leaving a lot of
>> stuff in an uninitialized state. Shouldn't that specific firmware then
>> care about performing any necessary resets?
>
> Yes, but it cannot do them if it cannot even perform the initial warm
> reset ("INIT").
>
> It's probably rare, after all the original introduction of
> cpu_emergency_vmxoff is as old as 2008 and it took nine years for
> someone to think of making this extra change.

Right, so this is really a special case. I think this is just fine.

The same problem with !vmm_exclusive as with other callers of
cpu_emergency_vmxoff(), but that should be solved as soon as
vmm_exclusive is dropped.

Reviewed-by: David Hildenbrand <david@xxxxxxxxxx>

--

Thanks,

David