Re: [PATCH v2 0/2] KVM: VMX: Clean up IRQ/NMI handling

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 15/09/20 21:15, Sean Christopherson wrote:
> Clean up KVM's handling of IRQ and NMI exits to move the invocation of the
> IRQ handler to a standalone assembly routine, and to then consolidate the
> NMI handling to use the same indirect call approach instead of using INTn.
> 
> The IRQ cleanup was suggested by Josh Poimboeuf in the context of a false
> postive objtool warning[*].  I believe Josh intended to use UNWIND hints
> instead of trickery to avoid objtool complaints.  I opted for trickery in
> the form of a redundant, but explicit, restoration of RSP after the hidden
> IRET.  AFAICT, there are no existing UNWIND hints that would let objtool
> know that the stack is magically being restored, and adding a new hint to
> save a single MOV <reg>, <reg> instruction seemed like overkill.
> 
> The NMI consolidation was loosely suggested by Andi Kleen.  Andi's actual
> suggestion was to export and directly call the NMI handler, but that's a
> more involved change (unless I'm misunderstanding the wants of the NMI
> handler), whereas piggybacking the IRQ code is simple and seems like a
> worthwhile intermediate step.
> 
> Sean Christopherson (2):
>   KVM: VMX: Move IRQ invocation to assembly subroutine
>   KVM: VMX: Invoke NMI handler via indirect call instead of INTn
> 
>  arch/x86/kvm/vmx/vmenter.S | 34 +++++++++++++++++++++
>  arch/x86/kvm/vmx/vmx.c     | 61 +++++++++++---------------------------
>  2 files changed, 51 insertions(+), 44 deletions(-)
> 

Queued, thanks.

Paolo




[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux