Messages in this thread | | | Subject | Re: [PATCH v7 7/10] KVM: arm/arm64: context-switch ptrauth registers | From | James Morse <> | Date | Wed, 27 Mar 2019 18:16:22 +0000 |
| |
Hi Amit, Kristina,
On 27/03/2019 03:21, Amit Daniel Kachhap wrote: > On 3/26/19 11:31 PM, Kristina Martsenko wrote: >> On 26/03/2019 04:03, Amit Daniel Kachhap wrote: >>> On 3/26/19 1:34 AM, Kristina Martsenko wrote: >>>> On 19/03/2019 08:30, Amit Daniel Kachhap wrote: >>>>> From: Mark Rutland <mark.rutland@arm.com> >>>>> >>>>> When pointer authentication is supported, a guest may wish to use it. >>>>> This patch adds the necessary KVM infrastructure for this to work, with >>>>> a semi-lazy context switch of the pointer auth state.
>>>>> + if (test_bit(KVM_ARM_VCPU_PTRAUTH_ADDRESS, vcpu->arch.features) || >>>>> + test_bit(KVM_ARM_VCPU_PTRAUTH_GENERIC, vcpu->arch.features)) {>>>>> + /* Verify that KVM startup matches the conditions for ptrauth */ >>>>> + if (WARN_ON(!vcpu_has_ptrauth(vcpu))) >>>>> + return -EINVAL; >>>>> + }
>> One more thing - I think the WARN_ON() here should be removed. Otherwise >> if panic_on_warn is set then userspace can panic the kernel. I think >> WARN_ON is only for internal kernel errors (see comment in >> include/asm-generic/bug.h). > > The documentation makes sense so in this case a pr_err like message will suffice.
(could it be a kvm_debug() at most?)
Do we need to print anything at all? User-space asked us for something we can't do. Filling up the kernel log with user-space's mistakes makes it harder to debug the kernel when something goes wrong.
kvm_arm_pmu_v3_init() returns -ENODEV if you ask if for the PMU and the platform can't support it. Isn't the returned error enough?
> Btw > there is one WARN in the function kvm_set_ipa_limit in the same file.
That is called once via kvm_arch_init(), it can't be triggered repeatedly from user-space.
Thanks,
James
| |