Re: [PATCH v7 4/5] KVM: x86: Untag address when LAM applicable

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

 



On Fri, Apr 21, 2023 at 03:57:15PM +0800, Binbin Wu wrote:
>
>> > --- a/arch/x86/kvm/emulate.c
>> > +++ b/arch/x86/kvm/emulate.c
>> > @@ -688,7 +688,8 @@ static __always_inline int __linearize(struct x86_emulate_ctxt *ctxt,
>> > 				       struct segmented_address addr,
>> > 				       unsigned *max_size, unsigned size,
>> > 				       bool write, bool fetch,
>> > -				       enum x86emul_mode mode, ulong *linear)
>> > +				       enum x86emul_mode mode, ulong *linear,
>> > +				       u64 untag_flags)
>> @write and @fetch are like flags. I think we can consolidate them into
>> the @flags first as a cleanup patch and then add a flag for LAM.
>
>OK. Here is the proposed cleanup patch:

looks good to me

>
>
>--- a/arch/x86/kvm/x86.h
>+++ b/arch/x86/kvm/x86.h
>@@ -48,6 +48,15 @@ void kvm_spurious_fault(void);
> #define KVM_SVM_DEFAULT_PLE_WINDOW_MAX USHRT_MAX
> #define KVM_SVM_DEFAULT_PLE_WINDOW     3000
>
>+/* x86-specific emulation flags */
>+#define KVM_X86_EMULFLAG_FETCH                 _BITULL(0)
>+#define KVM_X86_EMULFLAG_WRITE                 _BITULL(1)

Can we move the definitions to arch/x86/kvm/kvm_emulate.h?

>
>
>And the following two will be defined for untag:
>
>#define KVM_X86_EMULFLAG_SKIP_UNTAG_VMX     _BITULL(2)
>#define KVM_X86_EMULFLAG_SKIP_UNTAG_SVM     _BITULL(3) /* reserved for SVM */
>
>



[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