Re: [kvm-unit-tests PATCH v5 0/8] Move npt test cases and NPT code improvements

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

 




On 6/28/2022 5:08 PM, Manali Shukla wrote:
> If __setup_vm() is changed to setup_vm(), KUT will build tests with PT_USER_MASK
> set on all PTEs. It is a better idea to move nNPT tests to their own file so
> that tests don't need to fiddle with page tables midway.
> 
> The quick approach to do this would be to turn the current main into a small
> helper, without calling __setup_vm() from helper.
> 
> setup_mmu_range() function in vm.c was modified to allocate new user pages to
> implement nested page table.
> 
> Current implementation of nested page table does the page table build up
> statically with 2048 PTEs and one pml4 entry. With newly implemented routine,
> nested page table can be implemented dynamically based on the RAM size of VM
> which enables us to have separate memory ranges to test various npt test cases.
> 
> Based on this implementation, minimal changes were required to be done in
> below mentioned existing APIs:
> npt_get_pde(), npt_get_pte(), npt_get_pdpe().
> 
> v1 -> v2
> Added new patch for building up a nested page table dynamically and did minimal
> changes required to make it adaptable with old test cases.
> 
> v2 -> v3
> Added new patch to change setup_mmu_range to use it in implementation of
> nested page table.
> Added new patches to correct indentation errors in svm.c, svm_npt.c and
> svm_tests.c.
> Used scripts/Lindent from linux source code to fix indentation errors.
> 
> v3 -> v4
> Lindent script was not working as expected. So corrected indentation errors in
> svm.c and svm_tests.c without using Lindent
> 
> v4 -> v5
> Corrected commit messages for patches.
> Incorporated comments provided in setup_mmu_range() function.
> 
> Manali Shukla (8):
>   x86: nSVM: Move common functionality of the main() to helper
>     run_svm_tests
>   x86: nSVM: Move all nNPT test cases from svm_tests.c to a separate
>     file.
>   x86: nSVM: Allow nSVM tests run with PT_USER_MASK enabled
>   x86: Improve set_mmu_range() to implement npt
>   x86: nSVM: Build up the nested page table dynamically
>   x86: nSVM: Correct indentation for svm.c
>   x86: nSVM: Correct indentation for svm_tests.c part-1
>   x86: nSVM: Correct indentation for svm_tests.c part-2
> 
>  lib/x86/vm.c        |   25 +-
>  lib/x86/vm.h        |    8 +
>  x86/Makefile.common |    2 +
>  x86/Makefile.x86_64 |    2 +
>  x86/svm.c           |  227 ++-
>  x86/svm.h           |    5 +-
>  x86/svm_npt.c       |  391 +++++
>  x86/svm_tests.c     | 3365 +++++++++++++++++++------------------------
>  x86/unittests.cfg   |    6 +
>  9 files changed, 2034 insertions(+), 1997 deletions(-)
>  create mode 100644 x86/svm_npt.c
> 

A gentle reminder

Thank you,
Manali



[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