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 <oupton@xxxxxxxxxx> > --- > 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.