Add flush range call back in the kvm_x86_ops and platform can use it
to register its associated function. The parameter "kvm_tlb_range"
accepts a single range and flush list which contains a list of ranges.
Signed-off-by: Lan Tianyu
---
arch/x86/include/asm/kvm_host.h | 8
1 file
For nested memory virtualization, Hyper-v doesn't set write-protect
L1 hypervisor EPT page directory and page table node to track changes
while it relies on guest to tell it changes via HvFlushGuestAddressLlist
hypercall. HvFlushGuestAddressLlist hypercall provides a way to flush
EPT page table
Add flush range call back in the kvm_x86_ops and platform can use it
to register its associated function. The parameter "kvm_tlb_range"
accepts a single range and flush list which contains a list of ranges.
Signed-off-by: Lan Tianyu
---
arch/x86/include/asm/kvm_host.h | 8
1 file
This patch is to add wrapper functions for tlb_remote_flush_with_range
callback.
Signed-off-by: Lan Tianyu
---
arch/x86/kvm/mmu.c | 48
1 file changed, 48 insertions(+)
diff --git a/arch/x86/kvm/mmu.c b/arch/x86/kvm/mmu.c
index
kvm_commit_zap_page() has been renamed to kvm_mmu_commit_zap_page()
This patch is to fix the commit.
Signed-off-by: Lan Tianyu
---
Sorry for the broken title and resend.
arch/x86/kvm/mmu.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/x86/kvm/mmu.c
kvm_commit_zap_page() has been renamed to kvm_mmu_commit_zap_page()
This patch is to fix the commit.
Signed-off-by: Lan Tianyu
---
Sorry for the broken title and resend.
arch/x86/kvm/mmu.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/x86/kvm/mmu.c
kvm_commit_zap_page() has been renamed to kvm_mmu_commit_zap_page()
This patch is to fix the commit.
Signed-off-by: Lan Tianyu
---
arch/x86/kvm/mmu.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/x86/kvm/mmu.c b/arch/x86/kvm/mmu.c
index 7ccd29b95746..648b839a349d
kvm_commit_zap_page() has been renamed to kvm_mmu_commit_zap_page()
This patch is to fix the commit.
Signed-off-by: Lan Tianyu
---
arch/x86/kvm/mmu.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/x86/kvm/mmu.c b/arch/x86/kvm/mmu.c
index 7ccd29b95746..648b839a349d
Hi Stephen:
Thanks for fix. I will discuss with maintainer about how to deal with
the issue.
On 8/6/2018 1:12 PM, Stephen Rothwell wrote:
> Hi all,
>
> Today's linux-next merge of the kvm tree got a conflict in:
>
>arch/x86/include/asm/trace/hyperv.h
>
> between commit:
>
>
Hi Stephen:
Thanks for fix. I will discuss with maintainer about how to deal with
the issue.
On 8/6/2018 1:12 PM, Stephen Rothwell wrote:
> Hi all,
>
> Today's linux-next merge of the kvm tree got a conflict in:
>
>arch/x86/include/asm/trace/hyperv.h
>
> between commit:
>
>
Hi Junaid:
Thanks for your review.
On 7/25/2018 10:26 AM, Junaid Shahid wrote:
> On 07/24/2018 07:35 AM, Paolo Bonzini wrote:
>> On 24/07/2018 10:17, Tianyu Lan wrote:
>>> mmu_set_spte() flushes remote tlbs for drop_parent_pte/drop_spte()
>>> and set_spte() sep
Hi Junaid:
Thanks for your review.
On 7/25/2018 10:26 AM, Junaid Shahid wrote:
> On 07/24/2018 07:35 AM, Paolo Bonzini wrote:
>> On 24/07/2018 10:17, Tianyu Lan wrote:
>>> mmu_set_spte() flushes remote tlbs for drop_parent_pte/drop_spte()
>>> and set_spte() sep
mmu_set_spte() flushes remote tlbs for drop_parent_pte/drop_spte()
and set_spte() separately. This may introduce redundant flush. This
patch is to combine these flushes and check flush request after
calling set_spte().
Signed-off-by: Lan Tianyu
---
arch/x86/kvm/mmu.c | 7 ---
1 file
mmu_set_spte() flushes remote tlbs for drop_parent_pte/drop_spte()
and set_spte() separately. This may introduce redundant flush. This
patch is to combine these flushes and check flush request after
calling set_spte().
Signed-off-by: Lan Tianyu
---
arch/x86/kvm/mmu.c | 7 ---
1 file
X86_CR4_OSXSAVE check belongs to sregs check and so move into
kvm_valid_sregs().
Signed-off-by: Lan Tianyu
---
arch/x86/kvm/x86.c | 8
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
index 153564db7980..5c9acdbb2020 100644
---
X86_CR4_OSXSAVE check belongs to sregs check and so move into
kvm_valid_sregs().
Signed-off-by: Lan Tianyu
---
arch/x86/kvm/x86.c | 8
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
index 153564db7980..5c9acdbb2020 100644
---
On 7/23/2018 3:39 PM, Wanpeng Li wrote:
> On Fri, 20 Jul 2018 at 16:32, Paolo Bonzini wrote:
>>
>> On 20/07/2018 05:58, KY Srinivasan wrote:
>>>
>>>
>>>> -----Original Message-
>>>> From: Tianyu Lan
>>>> Sent: Thursday, Jul
On 7/23/2018 3:39 PM, Wanpeng Li wrote:
> On Fri, 20 Jul 2018 at 16:32, Paolo Bonzini wrote:
>>
>> On 20/07/2018 05:58, KY Srinivasan wrote:
>>>
>>>
>>>> -----Original Message-
>>>> From: Tianyu Lan
>>>> Sent: Thursday, Jul
This patch is to avoid compilation warning when CONFIG_HYPERV isn't enabled.
Signed-off-by: Lan Tianyu
---
arch/x86/kvm/vmx.c | 84 +++---
1 file changed, 42 insertions(+), 42 deletions(-)
diff --git a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c
This patch is to avoid compilation warning when CONFIG_HYPERV isn't enabled.
Signed-off-by: Lan Tianyu
---
arch/x86/kvm/vmx.c | 84 +++---
1 file changed, 42 insertions(+), 42 deletions(-)
diff --git a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c
Hyper-V supports a pv hypercall HvFlushGuestPhysicalAddressSpace to
flush nested VM address space mapping in l1 hypervisor and it's to
reduce overhead of flushing ept tlb among vcpus. This patch is to
implement it.
Signed-off-by: Lan Tianyu
---
Change since v3
Remove GPL boilerplate.
Hyper-V supports a pv hypercall HvFlushGuestPhysicalAddressSpace to
flush nested VM address space mapping in l1 hypervisor and it's to
reduce overhead of flushing ept tlb among vcpus. This patch is to
implement it.
Signed-off-by: Lan Tianyu
---
Change since v3
Remove GPL boilerplate.
On 7/19/2018 8:05 PM, Thomas Gleixner wrote:
> On Thu, 19 Jul 2018, Tianyu Lan wrote:
>> @@ -0,0 +1,64 @@
>> +// SPDX-License-Identifier: GPL-2.0
>> +
>> +/*
>> + * Hyper-V nested virtualization code.
>> + *
>> + * Copyright (C) 2018, Micr
On 7/19/2018 8:05 PM, Thomas Gleixner wrote:
> On Thu, 19 Jul 2018, Tianyu Lan wrote:
>> @@ -0,0 +1,64 @@
>> +// SPDX-License-Identifier: GPL-2.0
>> +
>> +/*
>> + * Hyper-V nested virtualization code.
>> + *
>> + * Copyright (C) 2018, Micr
On 7/19/2018 4:57 PM, Paolo Bonzini wrote:
> On 19/07/2018 10:39, Tianyu Lan wrote:
>> Hyper-V provides a para-virtualization hypercall
>> HvFlushGuestPhysicalAddressSpace
>> to flush nested VM address space mapping in l1 hypervisor and it's to reduce
>> overhead
&
On 7/19/2018 4:57 PM, Paolo Bonzini wrote:
> On 19/07/2018 10:39, Tianyu Lan wrote:
>> Hyper-V provides a para-virtualization hypercall
>> HvFlushGuestPhysicalAddressSpace
>> to flush nested VM address space mapping in l1 hypervisor and it's to reduce
>> overhead
&
This patch is to provide a way for platforms to register hv tlb remote
flush callback and this helps to optimize operation of tlb flush
among vcpus for nested virtualization case.
Signed-off-by: Lan Tianyu
---
Change since v2:
Rename kvm_arch_hv_flush_remote_tlb with
This patch is to provide a way for platforms to register hv tlb remote
flush callback and this helps to optimize operation of tlb flush
among vcpus for nested virtualization case.
Signed-off-by: Lan Tianyu
---
Change since v2:
Rename kvm_arch_hv_flush_remote_tlb with
Register tlb_remote_flush callback for vmx when hyperv capability of
nested guest mapping flush is detected. The interface can help to
reduce overhead when flush ept table among vcpus for nested VM. The
tradition way is to send IPIs to all affected vcpus and executes
INVEPT on each vcpus. It will
Hyper-V provides a para-virtualization hypercall
HvFlushGuestPhysicalAddressSpace
to flush nested VM address space mapping in l1 hypervisor and it's to reduce
overhead
of flushing ept tlb among vcpus. The tradition way is to send IPIs to all
affected
vcpus and executes INVEPT on each vcpus. It
Register tlb_remote_flush callback for vmx when hyperv capability of
nested guest mapping flush is detected. The interface can help to
reduce overhead when flush ept table among vcpus for nested VM. The
tradition way is to send IPIs to all affected vcpus and executes
INVEPT on each vcpus. It will
Hyper-V provides a para-virtualization hypercall
HvFlushGuestPhysicalAddressSpace
to flush nested VM address space mapping in l1 hypervisor and it's to reduce
overhead
of flushing ept tlb among vcpus. The tradition way is to send IPIs to all
affected
vcpus and executes INVEPT on each vcpus. It
Hyper-V supports a pv hypercall HvFlushGuestPhysicalAddressSpace to
flush nested VM address space mapping in l1 hypervisor and it's to
reduce overhead of flushing ept tlb among vcpus. This patch is to
implement it.
Signed-off-by: Lan Tianyu
---
arch/x86/hyperv/Makefile | 2 +-
This patch is to add hyperv_nested_flush_guest_mapping support to trace
hvFlushGuestPhysicalAddressSpace hypercall.
Signed-off-by: Lan Tianyu
---
arch/x86/hyperv/nested.c| 3 +++
arch/x86/include/asm/trace/hyperv.h | 14 ++
2 files changed, 17 insertions(+)
diff --git
Hyper-V supports a pv hypercall HvFlushGuestPhysicalAddressSpace to
flush nested VM address space mapping in l1 hypervisor and it's to
reduce overhead of flushing ept tlb among vcpus. This patch is to
implement it.
Signed-off-by: Lan Tianyu
---
arch/x86/hyperv/Makefile | 2 +-
This patch is to add hyperv_nested_flush_guest_mapping support to trace
hvFlushGuestPhysicalAddressSpace hypercall.
Signed-off-by: Lan Tianyu
---
arch/x86/hyperv/nested.c| 3 +++
arch/x86/include/asm/trace/hyperv.h | 14 ++
2 files changed, 17 insertions(+)
diff --git
On 7/18/2018 7:59 PM, Paolo Bonzini wrote:
> On 09/07/2018 11:02, Tianyu Lan wrote:
>> +static void check_ept_pointer(struct kvm_vcpu *vcpu, u64 eptp)
>> +{
>> +struct kvm *kvm = vcpu->kvm;
>> +u64 tmp_eptp = INVALID_PAGE;
>> +int i;
>> +
On 7/18/2018 7:59 PM, Paolo Bonzini wrote:
> On 09/07/2018 11:02, Tianyu Lan wrote:
>> +static void check_ept_pointer(struct kvm_vcpu *vcpu, u64 eptp)
>> +{
>> +struct kvm *kvm = vcpu->kvm;
>> +u64 tmp_eptp = INVALID_PAGE;
>> +int i;
>> +
Hi Paolo:
Thanks for review.
On 7/18/2018 8:01 PM, Paolo Bonzini wrote:
> On 09/07/2018 11:02, Tianyu Lan wrote:
>> +/*
>> + * Call kvm_arch_hv_tlb_remote first and go back old way when
>> + * return failure.
>> + */
>> +if (
Hi Paolo:
Thanks for review.
On 7/18/2018 8:01 PM, Paolo Bonzini wrote:
> On 09/07/2018 11:02, Tianyu Lan wrote:
>> +/*
>> + * Call kvm_arch_hv_tlb_remote first and go back old way when
>> + * return failure.
>> + */
>> +if (
Merge check of "sp->role.cr4_pae != !!is_pae(vcpu))" and "vcpu->
arch.mmu.sync_page(vcpu, sp) == 0". kvm_mmu_prepare_zap_page()
is called under both these conditions.
Signed-off-by: Lan Tianyu
---
arch/x86/kvm/mmu.c | 8 ++--
1 file changed, 2 insertions(+), 6 deletions(-)
diff --git
Merge check of "sp->role.cr4_pae != !!is_pae(vcpu))" and "vcpu->
arch.mmu.sync_page(vcpu, sp) == 0". kvm_mmu_prepare_zap_page()
is called under both these conditions.
Signed-off-by: Lan Tianyu
---
arch/x86/kvm/mmu.c | 8 ++--
1 file changed, 2 insertions(+), 6 deletions(-)
diff --git
Hi Michael:
Thanks for your review.
On 7/11/2018 5:29 AM, Michael Kelley (EOSG) wrote:
> From: Tianyu Lan Monday, July 9, 2018 2:03 AM
>> Hyper-V supports a pv hypercall HvFlushGuestPhysicalAddressSpace to
>> flush nested VM address space mapping in l1 hypervisor and it
Hi Michael:
Thanks for your review.
On 7/11/2018 5:29 AM, Michael Kelley (EOSG) wrote:
> From: Tianyu Lan Monday, July 9, 2018 2:03 AM
>> Hyper-V supports a pv hypercall HvFlushGuestPhysicalAddressSpace to
>> flush nested VM address space mapping in l1 hypervisor and it
This patch is to check ept table pointer of each cpus when set ept
tables and store identical ept table pointer if all ept table pointers
of single VM are same. This is for support of para-virt ept flush
hypercall.
Signed-off-by: Lan Tianyu
---
Change since v1:
Replace
This patch is to add hyperv_nested_flush_guest_mapping support to trace
hvFlushGuestPhysicalAddressSpace hypercall.
Signed-off-by: Lan Tianyu
---
arch/x86/hyperv/nested.c| 3 +++
arch/x86/include/asm/trace/hyperv.h | 14 ++
2 files changed, 17 insertions(+)
diff --git
Register tlb_remote_flush callback for vmx when hyperv capability of
nested guest mapping flush is detected. The interface can help to
reduce overhead when flush ept table among vcpus for nested VM. The
tradition way is to send IPIs to all affected vcpus and executes
INVEPT on each vcpus. It will
This patch is to check ept table pointer of each cpus when set ept
tables and store identical ept table pointer if all ept table pointers
of single VM are same. This is for support of para-virt ept flush
hypercall.
Signed-off-by: Lan Tianyu
---
Change since v1:
Replace
This patch is to add hyperv_nested_flush_guest_mapping support to trace
hvFlushGuestPhysicalAddressSpace hypercall.
Signed-off-by: Lan Tianyu
---
arch/x86/hyperv/nested.c| 3 +++
arch/x86/include/asm/trace/hyperv.h | 14 ++
2 files changed, 17 insertions(+)
diff --git
Register tlb_remote_flush callback for vmx when hyperv capability of
nested guest mapping flush is detected. The interface can help to
reduce overhead when flush ept table among vcpus for nested VM. The
tradition way is to send IPIs to all affected vcpus and executes
INVEPT on each vcpus. It will
This patch is to provide a way for platforms to register hv tlb remote
flush callback and this helps to optimize operation of tlb flush
among vcpus for nested virtualization case.
Signed-off-by: Lan Tianyu
---
Change since v1:
Add kvm_arch_hv_flush_remote_tlb() to avoid compilation issue
This patch is to provide a way for platforms to register hv tlb remote
flush callback and this helps to optimize operation of tlb flush
among vcpus for nested virtualization case.
Signed-off-by: Lan Tianyu
---
Change since v1:
Add kvm_arch_hv_flush_remote_tlb() to avoid compilation issue
Hyper-V provides a para-virtualization hypercall
HvFlushGuestPhysicalAddressSpace
to flush nested VM address space mapping in l1 hypervisor and it's to reduce
overhead
of flushing ept tlb among vcpus. The tradition way is to send IPIs to all
affected
vcpus and executes INVEPT on each vcpus. It
Hyper-V supports a pv hypercall HvFlushGuestPhysicalAddressSpace to
flush nested VM address space mapping in l1 hypervisor and it's to
reduce overhead of flushing ept tlb among vcpus. This patch is to
implement it.
Signed-off-by: Lan Tianyu
---
arch/x86/hyperv/Makefile | 2 +-
Hyper-V provides a para-virtualization hypercall
HvFlushGuestPhysicalAddressSpace
to flush nested VM address space mapping in l1 hypervisor and it's to reduce
overhead
of flushing ept tlb among vcpus. The tradition way is to send IPIs to all
affected
vcpus and executes INVEPT on each vcpus. It
Hyper-V supports a pv hypercall HvFlushGuestPhysicalAddressSpace to
flush nested VM address space mapping in l1 hypervisor and it's to
reduce overhead of flushing ept tlb among vcpus. This patch is to
implement it.
Signed-off-by: Lan Tianyu
---
arch/x86/hyperv/Makefile | 2 +-
Hi Sean:
Thank for your review.
On 7/3/2018 1:29 AM, Sean Christopherson wrote:
> On Mon, Jul 02, 2018 at 02:17:29PM +0000, Tianyu Lan wrote:
>> This patch is to check ept table pointer of each cpus when set ept
>> tables and store identical ept table pointer if all ept
Hi Sean:
Thank for your review.
On 7/3/2018 1:29 AM, Sean Christopherson wrote:
> On Mon, Jul 02, 2018 at 02:17:29PM +0000, Tianyu Lan wrote:
>> This patch is to check ept table pointer of each cpus when set ept
>> tables and store identical ept table pointer if all ept
Hi Vitaly:
Thanks for your review.
On 7/2/2018 11:09 PM, Vitaly Kuznetsov wrote:
> Tianyu Lan writes:
>
>> This patch is to check ept table pointer of each cpus when set ept
>> tables and store identical ept table pointer if all ept table pointers
>&g
Hi Vitaly:
Thanks for your review.
On 7/2/2018 11:09 PM, Vitaly Kuznetsov wrote:
> Tianyu Lan writes:
>
>> This patch is to check ept table pointer of each cpus when set ept
>> tables and store identical ept table pointer if all ept table pointers
>&g
This patch is to check ept table pointer of each cpus when set ept
tables and store identical ept table pointer if all ept table pointers
of single VM are same. This is for support of para-virt ept flush
hypercall.
Signed-off-by: Lan Tianyu
---
arch/x86/kvm/vmx.c | 31
This patch is to check ept table pointer of each cpus when set ept
tables and store identical ept table pointer if all ept table pointers
of single VM are same. This is for support of para-virt ept flush
hypercall.
Signed-off-by: Lan Tianyu
---
arch/x86/kvm/vmx.c | 31
This patch is to provide a way for platforms to register tlb remote
flush callback and this helps to optimize operation of tlb flush
among vcpus for nested virtualization case.
Signed-off-by: Lan Tianyu
---
arch/x86/include/asm/kvm_host.h | 1 +
virt/kvm/kvm_main.c | 12
This patch is to provide a way for platforms to register tlb remote
flush callback and this helps to optimize operation of tlb flush
among vcpus for nested virtualization case.
Signed-off-by: Lan Tianyu
---
arch/x86/include/asm/kvm_host.h | 1 +
virt/kvm/kvm_main.c | 12
Register tlb_remote_flush callback for vmcs when hyperv capability of
nested guest mapping flush is detected. The interface can help to
reduce overhead when flush ept table among vcpus for nested VM. The
tradition way is to send IPIs to all affected vcpus and executes
INVEPT on each vcpus. It will
Register tlb_remote_flush callback for vmcs when hyperv capability of
nested guest mapping flush is detected. The interface can help to
reduce overhead when flush ept table among vcpus for nested VM. The
tradition way is to send IPIs to all affected vcpus and executes
INVEPT on each vcpus. It will
Hyper-V supports a pv hypercall HvFlushGuestPhysicalAddressSpace to
flush nested VM address space mapping in l1 hypervisor and it's to
reduce overhead of flushing ept tlb among vcpus. This patch is to
implement it.
Signed-off-by: Lan Tianyu
---
arch/x86/hyperv/Makefile | 2 +-
Hyper-V supports a pv hypercall HvFlushGuestPhysicalAddressSpace to
flush nested VM address space mapping in l1 hypervisor and it's to
reduce overhead of flushing ept tlb among vcpus. This patch is to
implement it.
Signed-off-by: Lan Tianyu
---
arch/x86/hyperv/Makefile | 2 +-
Hyper-V provides a para-virtualization hypercall
HvFlushGuestPhysicalAddressSpace
to flush nested VM address space mapping in l1 hypervisor and it's to reduce
overhead
of flushing ept tlb among vcpus. The tradition way is to send IPIs to all
affected
vcpus and executes INVEPT on each vcpus. It
Hyper-V provides a para-virtualization hypercall
HvFlushGuestPhysicalAddressSpace
to flush nested VM address space mapping in l1 hypervisor and it's to reduce
overhead
of flushing ept tlb among vcpus. The tradition way is to send IPIs to all
affected
vcpus and executes INVEPT on each vcpus. It
On 6/14/2018 6:33 PM, Vitaly Kuznetsov wrote:
> Tianyu Lan writes:
>
>> On 6/12/2018 11:12 PM, Vitaly Kuznetsov wrote:
>>> Tianyu Lan writes:
>>>
>>>>
>>>> +static int vmx_remote_flush_tlb(struct kvm *kvm)
>&
On 6/14/2018 6:33 PM, Vitaly Kuznetsov wrote:
> Tianyu Lan writes:
>
>> On 6/12/2018 11:12 PM, Vitaly Kuznetsov wrote:
>>> Tianyu Lan writes:
>>>
>>>>
>>>> +static int vmx_remote_flush_tlb(struct kvm *kvm)
>&
Hi Vitaly:
Thanks for your review.
On 6/12/2018 11:12 PM, Vitaly Kuznetsov wrote:
> Tianyu Lan writes:
>
>> Register tlb_remote_flush callback for vmcs when hyperv capability of
>> nested guest mapping flush is detected. The interface can help to reduce
>> overh
Hi Vitaly:
Thanks for your review.
On 6/12/2018 11:12 PM, Vitaly Kuznetsov wrote:
> Tianyu Lan writes:
>
>> Register tlb_remote_flush callback for vmcs when hyperv capability of
>> nested guest mapping flush is detected. The interface can help to reduce
>> overh
Hi Michael:
Thanks for your review.
On 6/6/2018 12:59 AM, Michael Kelley (EOSG) wrote:
>> -Original Message-
>> From: linux-kernel-ow...@vger.kernel.org
>> On Behalf
>> Of Tianyu Lan
>> Sent: Monday, June 4, 2018 2:08 AM
>> Cc: Tianyu Lan ;
Hi Michael:
Thanks for your review.
On 6/6/2018 12:59 AM, Michael Kelley (EOSG) wrote:
>> -Original Message-
>> From: linux-kernel-ow...@vger.kernel.org
>> On Behalf
>> Of Tianyu Lan
>> Sent: Monday, June 4, 2018 2:08 AM
>> Cc: Tianyu Lan ;
Hyper-V provides a pv hypercall HvFlushGuestPhysicalAddressSpace to flush
nested VM address space mapping in l1 hypervisor and it's to reduce overhead
of flushing ept tlb among vcpus. This patch is to implement it.
Signed-off-by: Lan Tianyu
---
arch/x86/hyperv/Makefile | 2 +-
Hyper-V provides a pv hypercall HvFlushGuestPhysicalAddressSpace to flush
nested VM address space mapping in l1 hypervisor and it's to reduce overhead
of flushing ept tlb among vcpus. This patch is to implement it.
Signed-off-by: Lan Tianyu
---
arch/x86/hyperv/Makefile | 2 +-
This patch is to provide a way for platforms to register tlb remote flush
callback and this helps to optimize operation of tlb flush among vcpus for
nested virtualization case.
Signed-off-by: Lan Tianyu
---
arch/x86/include/asm/kvm_host.h | 1 +
virt/kvm/kvm_main.c | 12
This patch is to provide a way for platforms to register tlb remote flush
callback and this helps to optimize operation of tlb flush among vcpus for
nested virtualization case.
Signed-off-by: Lan Tianyu
---
arch/x86/include/asm/kvm_host.h | 1 +
virt/kvm/kvm_main.c | 12
Register tlb_remote_flush callback for vmcs when hyperv capability of
nested guest mapping flush is detected. The interface can help to reduce
overhead when flush ept table among vcpus for nested VM. The tradition way
is to send IPIs to all affected vcpus and executes INVEPT on each vcpus.
It will
Register tlb_remote_flush callback for vmcs when hyperv capability of
nested guest mapping flush is detected. The interface can help to reduce
overhead when flush ept table among vcpus for nested VM. The tradition way
is to send IPIs to all affected vcpus and executes INVEPT on each vcpus.
It will
Hyper-V provides a para-virtualization hypercall
HvFlushGuestPhysicalAddressSpace
to flush nested VM address space mapping in l1 hypervisor and it's to reduce
overhead
of flushing ept tlb among vcpus. The tradition way is to send IPIs to all
affected
vcpus and executes INVEPT on each vcpus. It
Hyper-V provides a para-virtualization hypercall
HvFlushGuestPhysicalAddressSpace
to flush nested VM address space mapping in l1 hypervisor and it's to reduce
overhead
of flushing ept tlb among vcpus. The tradition way is to send IPIs to all
affected
vcpus and executes INVEPT on each vcpus. It
The struct hv_vp_assist_page was defined incorrectly.
The "vtl_control" should be u64[3], "nested_enlightenments_control"
should be a u64 and there is 7 reserved bytes following "enlighten_vmentry".
This patch is to fix it.
Signed-off-by: Lan Tianyu
---
The struct hv_vp_assist_page was defined incorrectly.
The "vtl_control" should be u64[3], "nested_enlightenments_control"
should be a u64 and there is 7 reserved bytes following "enlighten_vmentry".
This patch is to fix it.
Signed-off-by: Lan Tianyu
---
arch/x86/include/asm/hyperv-tlfs.h | 9
On 4/12/2018 11:25 PM, Vitaly Kuznetsov wrote:
> Enlightened MSR-Bitmap is a natural extension of Enlightened VMCS:
> Hyper-V Top Level Functional Specification states:
>
> "The L1 hypervisor may collaborate with the L0 hypervisor to make MSR
> accesses more efficient. It can enable enlightened
On 4/12/2018 11:25 PM, Vitaly Kuznetsov wrote:
> Enlightened MSR-Bitmap is a natural extension of Enlightened VMCS:
> Hyper-V Top Level Functional Specification states:
>
> "The L1 hypervisor may collaborate with the L0 hypervisor to make MSR
> accesses more efficient. It can enable enlightened
X86_CR4_OSXSAVE check belongs to sregs check and so move into kvm_valid_sregs().
Signed-off-by: Lan Tianyu
---
arch/x86/kvm/x86.c | 8
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
index 6c81df9..82845cb
X86_CR4_OSXSAVE check belongs to sregs check and so move into kvm_valid_sregs().
Signed-off-by: Lan Tianyu
---
arch/x86/kvm/x86.c | 8
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
index 6c81df9..82845cb 100644
---
Hi Radim:
Thanks for your review.
On 3/9/2018 12:15 AM, rkrc...@redhat.com wrote:
> 2018-02-27 06:57+0000, Tianyu Lan:
>> From: Lan Tianyu <tianyu@microsoft.com>
>>
>> This patch is to check sreg value first and then load vcpu in order
>> to avo
Hi Radim:
Thanks for your review.
On 3/9/2018 12:15 AM, rkrc...@redhat.com wrote:
> 2018-02-27 06:57+0000, Tianyu Lan:
>> From: Lan Tianyu
>>
>> This patch is to check sreg value first and then load vcpu in order
>> to avoid redundant loading/putting vcpu.
>
From: Lan Tianyu
This patch is to check sreg value first and then load vcpu in order
to avoid redundant loading/putting vcpu.
Signed-off-by: Lan Tianyu
---
arch/x86/kvm/x86.c | 14 +++---
1 file changed, 7 insertions(+), 7
From: Lan Tianyu
This patch is to check sreg value first and then load vcpu in order
to avoid redundant loading/putting vcpu.
Signed-off-by: Lan Tianyu
---
arch/x86/kvm/x86.c | 14 +++---
1 file changed, 7 insertions(+), 7 deletions(-)
diff --git a/arch/x86/kvm/x86.c
ign path before they are used
in assign path. The other data maybe used in deassign path before
initialization. Syzbot test hit such case. Add mutx between
kvm_irqfd_assign() and kvm_irqfd_deassign() can fix such issue. Will
send patch to fix it.
On 12/16/2017 12:53 PM, Tianyu Lan wrote:
I reprodu
ign path before they are used
in assign path. The other data maybe used in deassign path before
initialization. Syzbot test hit such case. Add mutx between
kvm_irqfd_assign() and kvm_irqfd_deassign() can fix such issue. Will
send patch to fix it.
On 12/16/2017 12:53 PM, Tianyu Lan wrote:
I reprodu
On Thu, Jan 25, 2018 at 12:37 AM, Stephen Hemminger
<step...@networkplumber.org> wrote:
> On Wed, 24 Jan 2018 14:21:30 +0800
> lantianyu1...@gmail.com wrote:
>
>> From: Tianyu Lan <tianyu@microsoft.com>
>>
>> The "next" variable is redunda
On Thu, Jan 25, 2018 at 12:37 AM, Stephen Hemminger
wrote:
> On Wed, 24 Jan 2018 14:21:30 +0800
> lantianyu1...@gmail.com wrote:
>
>> From: Tianyu Lan
>>
>> The "next" variable is redundant in hv_get_next_write_location().
>> This patch is t
;
Cc: Paolo Bonzini <pbonz...@redhat.com>
Cc: Radim Krčmář <rkrc...@redhat.com>
Signed-off-by: Tianyu Lan <tianyu@microsoft.com>
---
Change since v1:
Rename title and fix change log.
---
arch/x86/kvm/x86.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --gi
rčmář
Signed-off-by: Tianyu Lan
---
Change since v1:
Rename title and fix change log.
---
arch/x86/kvm/x86.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
index 1cec2c6..c53298d 100644
--- a/arch/x86/kvm/x86.c
+++ b/arch/x86/kvm/
201 - 300 of 368 matches
Mail list logo