On Thu, Sep 23, 2021, Oliver Upton wrote:
> While x86 does not require any additional setup to use the ucall
> infrastructure, arm64 needs to set up the MMIO address used to signal a
> ucall to userspace. rseq_test does not initialize the MMIO address,
> resulting in the test spinning indefinitely.
>
> Fix the issue by calling ucall_init() during setup.
>
> Fixes: 61e52f1630f5 ("KVM: selftests: Add a test for KVM_RUN+rseq to detect
> task migration bugs")
> Signed-off-by: Oliver Upton <[email protected]>
> ---
> tools/testing/selftests/kvm/rseq_test.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/tools/testing/selftests/kvm/rseq_test.c
> b/tools/testing/selftests/kvm/rseq_test.c
> index 060538bd405a..c5e0dd664a7b 100644
> --- a/tools/testing/selftests/kvm/rseq_test.c
> +++ b/tools/testing/selftests/kvm/rseq_test.c
> @@ -180,6 +180,7 @@ int main(int argc, char *argv[])
> * CPU affinity.
> */
> vm = vm_create_default(VCPU_ID, 0, guest_code);
> + ucall_init(vm, NULL);
Any reason not to do this automatically in vm_create()? There is 0% chance I'm
going to remember to add this next time I write a common selftest, arm64 is the
oddball here.
_______________________________________________
kvmarm mailing list
[email protected]
https://lists.cs.columbia.edu/mailman/listinfo/kvmarm