linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 0/7] KVM: selftests: Fixes for ucall pool + page_fault_test
@ 2022-12-09  1:52 Oliver Upton
  2022-12-09  1:53 ` [PATCH v2 1/7] KVM: selftests: Fix build due to ucall_uninit() removal Oliver Upton
                   ` (8 more replies)
  0 siblings, 9 replies; 17+ messages in thread
From: Oliver Upton @ 2022-12-09  1:52 UTC (permalink / raw)
  To: Marc Zyngier, James Morse, Alexandru Elisei
  Cc: linux-arm-kernel, kvmarm, kvm, kvmarm, Ricardo Koller,
	Paolo Bonzini, Sean Christopherson, Oliver Upton

The combination of the pool-based ucall implementation + page_fault_test
resulted in some 'fun' bugs. As has always been the case, KVM selftests
is a house of cards.

Small series to fix up the issues on kvm/queue. Patches 1-2 can probably
be squashed into Paolo's merge resolution, if desired.

Tested on Ampere Altra and a Skylake box, since there was a decent
amount of munging in architecture-generic code.

v1 -> v2:
 - Collect R-b from Sean (thanks!)
 - Use a common routine for split and contiguous VA spaces, with
   commentary on why arm64 is different since we all get to look at it
   now. (Sean)
 - Don't identity map the ucall MMIO hole
 - Fix an off-by-one issue in the accounting of virtual memory,
   discovered in fighting with #2
 - Fix an infinite loop in ucall_alloc(), discovered fighting with the
   ucall_init() v. kvm_vm_elf_load() ordering issue

Mark Brown (1):
  KVM: selftests: Fix build due to ucall_uninit() removal

Oliver Upton (6):
  KVM: selftests: Setup ucall after loading program into guest memory
  KVM: selftests: Mark correct page as mapped in virt_map()
  KVM: selftests: Correctly initialize the VA space for TTBR0_EL1
  KVM: arm64: selftests: Don't identity map the ucall MMIO hole
  KVM: selftests: Allocate ucall pool from MEM_REGION_DATA
  KVM: selftests: Avoid infinite loop if ucall_alloc() fails

 .../selftests/kvm/aarch64/page_fault_test.c   |  9 +++-
 .../selftests/kvm/include/kvm_util_base.h     |  1 +
 .../testing/selftests/kvm/lib/aarch64/ucall.c |  6 ++-
 tools/testing/selftests/kvm/lib/kvm_util.c    | 53 ++++++++++++++++---
 .../testing/selftests/kvm/lib/ucall_common.c  | 14 +++--
 5 files changed, 68 insertions(+), 15 deletions(-)


base-commit: 89b2395859651113375101bb07cd6340b1ba3637
-- 
2.39.0.rc1.256.g54fd8350bd-goog


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2022-12-12 10:40 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-12-09  1:52 [PATCH v2 0/7] KVM: selftests: Fixes for ucall pool + page_fault_test Oliver Upton
2022-12-09  1:53 ` [PATCH v2 1/7] KVM: selftests: Fix build due to ucall_uninit() removal Oliver Upton
2022-12-09  1:53 ` [PATCH v2 2/7] KVM: selftests: Setup ucall after loading program into guest memory Oliver Upton
2022-12-09  1:53 ` [PATCH v2 3/7] KVM: selftests: Mark correct page as mapped in virt_map() Oliver Upton
2022-12-09  1:53 ` [PATCH v2 4/7] KVM: selftests: Correctly initialize the VA space for TTBR0_EL1 Oliver Upton
2022-12-09 20:45   ` Sean Christopherson
2022-12-09 21:22     ` Oliver Upton
2022-12-12 10:34   ` Paolo Bonzini
2022-12-09  1:53 ` [PATCH v2 5/7] KVM: arm64: selftests: Don't identity map the ucall MMIO hole Oliver Upton
2022-12-09  1:53 ` [PATCH v2 6/7] KVM: selftests: Allocate ucall pool from MEM_REGION_DATA Oliver Upton
2022-12-09  1:53 ` [PATCH v2 7/7] KVM: selftests: Avoid infinite loop if ucall_alloc() fails Oliver Upton
2022-12-09 21:03   ` Sean Christopherson
2022-12-09 21:35     ` Oliver Upton
2022-12-12 10:38     ` Paolo Bonzini
2022-12-09  8:24 ` [PATCH v2 0/7] KVM: selftests: Fixes for ucall pool + page_fault_test Andrew Jones
2022-12-09  8:29   ` Oliver Upton
2022-12-12 10:36 ` Paolo Bonzini

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).