Re: [PATCH v7 0/9] KVM: arm64: Add support for hypercall services selection

Raghavendra Rao Ananta
2022-05-03T18:49:37Z

Hi Marc,

On Tue, May 3, 2022 at 10:24 AM Marc Zyngier <maz@kernel.org> wrote:
>
> On Tue, 03 May 2022 00:38:44 +0100,
> Raghavendra Rao Ananta <rananta@google.com> wrote:
> >
> > Hello,
> >
> > Continuing the discussion from [1], the series tries to add support
> > for the userspace to elect the hypercall services that it wishes
> > to expose to the guest, rather than the guest discovering them
> > unconditionally. The idea employed by the series was taken from
> > [1] as suggested by Marc Z.
>
> As it took some time to get there, and that there was still a bunch of
> things to address, I've taken the liberty to apply my own fixes to the
> series.
>
> Please have a look at [1], and let me know if you're OK with the
> result. If you are, I'll merge the series for 5.19.
>
> Thanks,
>
> M.
>
Thank you for speeding up the process; appreciate it. However, the
series's selftest patches have a dependency on Oliver's
PSCI_SYSTEM_SUSPEND's selftest patches [1][2]. Can we pull them in
too?

aarch64/hypercalls.c: In function ‘guest_test_hvc’:
aarch64/hypercalls.c:95:30: error: storage size of ‘res’ isn’t known
95 | struct arm_smccc_res res;
| ^~~
aarch64/hypercalls.c:103:17: warning: implicit declaration of function
‘smccc_hvc’ [-Wimplicit-function-declaration]
103 | smccc_hvc(hc_info->func_id, hc_info->arg1, 0,
0, 0, 0, 0, 0, &res);
| ^~~~~~~~~

Also, just a couple of readability nits in the fixed version:

1. Patch-2/9, hypercall.c:kvm_hvc_call_default_allowed(), in the
'default' case, do you think we should probably add a small comment
that mentions we are checking for func_id in the PSCI range?
2. Patch-2/9, arm_hypercall.h, clear all the macros in this patch
itself instead of doing it in increments (unless there's some reason
that I'm missing)?

Regards,
Raghavendra

[1]: https://lore.kernel.org/all/20220409184549.1681189-10-oupton@google.com/
[2]: https://lore.kernel.org/all/20220409184549.1681189-11-oupton@google.com/

> [1] https://git.kernel.org/pub/scm/linux/kernel/git/maz/arm-platforms.git/log/?h=kvm-arm64/hcall-selection
>
> --
> Without deviation from the norm, progress is not possible.