Message ID | 20221209015307.1781352-1-oliver.upton@linux.dev (mailing list archive) |
---|---|
Headers | show |
Series | KVM: selftests: Fixes for ucall pool + page_fault_test | expand |
On Fri, Dec 09, 2022 at 01:52:59AM +0000, Oliver Upton wrote: > 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 This commit doesn't seem to exist linux-next or kvm/queue, but the patch context seems to match up with linux-next pretty well. Anyway, For the series Reviewed-by: Andrew Jones <andrew.jones@linux.dev> Thanks, drew
On Fri, Dec 09, 2022 at 09:24:23AM +0100, Andrew Jones wrote: > On Fri, Dec 09, 2022 at 01:52:59AM +0000, Oliver Upton wrote: > > base-commit: 89b2395859651113375101bb07cd6340b1ba3637 > > This commit doesn't seem to exist linux-next or kvm/queue, but the patch > context seems to match up with linux-next pretty well. Anyway, Ah, a force push to kvm/queue likely explains it :) I believe Paolo has taken the first two patches in his merge resolution now on kvm/next. > For the series > > Reviewed-by: Andrew Jones <andrew.jones@linux.dev> Thanks! -- Best, Oliver
On 12/9/22 02:52, Oliver Upton wrote: > 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 Queued 3+5, thanks. Paolo