Re: [PATCH 04/22] x86/kvm: Don't call kvm_spurious_fault() from .fixup

From: Paolo Bonzini
Date: Mon Jul 15 2019 - 14:16:53 EST


On 15/07/19 15:25, Josh Poimboeuf wrote:
> On Mon, Jul 15, 2019 at 03:05:33PM +0200, Paolo Bonzini wrote:
>> On 15/07/19 14:40, Josh Poimboeuf wrote:
>>>>> * Hardware virtualization extension instructions may fault if a
>>>>> * reboot turns off virtualization while processes are running.
>>>>> - * Trap the fault and ignore the instruction if that happens.
>>>>> + * If that happens, trap the fault and panic (unless we're rebooting).
>>>> Not sure the comment is better than before, but apar from that
>>> The previous comment didn't seem to match the code, since we only ignore
>>> the instruction if we're rebooting.
>>>
>>
>> "If that happens" refers to "a reboot turns off virtualization while
>> processes are running".
>
> Ah, makes sense now. I was reading "if that happens" to mean the fault.
>
>> * Usually after catching the fault we just panic; during reboot
>> * instead the instruction is ignored.
>
> Yes, that's much clearer. Assuming you meant to replace the entire
> comment.

No, I didn't. :) I meant only the last line (otherwise it removes
information on why the fault may happen and the simplest choice is to
ignore). Thanks for taking care of this!

Paolo


I also moved it to directly above the macro it's describing:
>
>
> asmlinkage void __noreturn kvm_spurious_fault(void);
>
> /*
> * Usually after catching the fault we just panic; during reboot
> * instead the instruction is ignored.
> */
> #define ____kvm_handle_fault_on_reboot(insn, cleanup_insn) \
>
>