Re: [Xen-devel] [PATCH 1/3] arm/arm64/xen: use C inlines for privcmd_call
From: Andrew Cooper
Date: Fri Nov 29 2019 - 10:17:09 EST
On 29/11/2019 15:05, Julien Grall wrote:
> Hi,
>
> On 27/11/2019 18:44, Pavel Tatashin wrote:
>> diff --git a/arch/arm64/include/asm/xen/hypercall.h
>> b/arch/arm64/include/asm/xen/hypercall.h
>> index 3522cbaed316..1a74fb28607f 100644
>> --- a/arch/arm64/include/asm/xen/hypercall.h
>> +++ b/arch/arm64/include/asm/xen/hypercall.h
>> @@ -1 +1,29 @@
>> +#ifndef _ASM_ARM64_XEN_HYPERCALL_H
>> +#define _ASM_ARM64_XEN_HYPERCALL_H
>> Â #include <xen/arm/hypercall.h>
>> +#include <linux/uaccess.h>
>> +
>> +static inline long privcmd_call(unsigned int call, unsigned long a1,
>> +ÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ unsigned long a2, unsigned long a3,
>> +ÂÂÂÂÂÂÂÂÂÂÂÂÂÂÂ unsigned long a4, unsigned long a5)
>
> I realize that privcmd_call is the only hypercall using Software PAN
> at the moment. However, dm_op needs the same as hypercall will be
> issued from userspace as well.
And dm_op() won't be the only example as we continue in cleaning up the
gaping hole that is privcmd.
> So I was wondering whether we should create a generic function (e.g.
> do_xen_hypercall() or do_xen_user_hypercall()) to cover the two
> hypercalls?
Probably a good idea.
~Andrew