Re: [PATCH v7 9/10] KVM: arm64: docs: document KVM support of pointer authentication

From: Amit Daniel Kachhap
Date: Thu Mar 28 2019 - 06:13:15 EST


Hi Dave,

On 3/27/19 7:20 PM, Dave Martin wrote:
On Wed, Mar 27, 2019 at 05:19:28PM +0530, Amit Daniel Kachhap wrote:
Hi,

On 3/27/19 4:14 PM, Dave Martin wrote:
On Mon, Mar 25, 2019 at 08:05:49PM +0000, Kristina Martsenko wrote:
On 19/03/2019 08:30, Amit Daniel Kachhap wrote:
This adds sections for KVM API extension for pointer authentication.
A brief description about usage of pointer authentication for KVM guests
is added in the arm64 documentations.

Signed-off-by: Amit Daniel Kachhap <amit.kachhap@xxxxxxx>
Cc: Mark Rutland <mark.rutland@xxxxxxx>
Cc: Christoffer Dall <christoffer.dall@xxxxxxx>
Cc: Marc Zyngier <marc.zyngier@xxxxxxx>
Cc: kvmarm@xxxxxxxxxxxxxxxxxxxxx

I think it makes sense to also update the Kconfig symbol description for
CONFIG_ARM64_PTR_AUTH, since it currently only mentions userspace
support, but now the option also enables KVM guest support.

It's also worth mentioning that CONFIG_ARM64_VHE=y is required for guest
support.

Is it worth making this dependency explicit in Kconfig?
Currently there is discrepancy that userspace supports ptrauth in both
nVHE/VHE mode and KVM guest only in VHE mode. I suppose adding explicit
dependency flag here makes both of them similar.

Looking at the history, for SVE this Kconfig restriction has always been
present. Since ptrauth initially upstreamed without an equivalent
restriction in Kconfig, adding it now could be seen as a regression.
ok it makes sense to keep it this way.

So, maybe it's not worth it here.

You could add a separate option, say

config ARM64_PTR_AUTH_KVM
bool "Pointer authentication support for KVM guests"
default y
depends on ARM64_PTR_AUTH && ARM64_VHE && KVM

...but that may be overkill.
I was thinking for adding some details for this in virtualization section in Documentation/arm64/pointer-authentication.txt along with brief comment in arch/arm64/Kconfig.

Thanks,
Amit D

Cheers,
---Dave