diff options
author | Ian Campbell <ian.campbell@citrix.com> | 2014-04-17 08:57:37 -0400 |
---|---|---|
committer | David Vrabel <david.vrabel@citrix.com> | 2014-04-24 08:09:46 -0400 |
commit | 5e40704ed2c69425bcb076fb1890417ef137e6c8 (patch) | |
tree | cd46787cce44df343041339655636d1945e4ca0a /arch/arm/xen | |
parent | 1aae31c8306e5f1bdeafd87b2cd9e3f0df3709e5 (diff) |
arm: xen: implement multicall hypercall support.
As part of this make the usual change to xen_ulong_t in place of unsigned long.
This change has no impact on x86.
The Linux definition of struct multicall_entry.result differs from the Xen
definition, I think for good reasons, and used a long rather than an unsigned
long. Therefore introduce a xen_long_t, which is a long on x86 architectures
and a signed 64-bit integer on ARM.
Use uint32_t nr_calls on x86 for consistency with the ARM definition.
Build tested on amd64 and i386 builds. Runtime tested on ARM.
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Cc: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Signed-off-by: David Vrabel <david.vrabel@citrix.com>
Diffstat (limited to 'arch/arm/xen')
-rw-r--r-- | arch/arm/xen/hypercall.S | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/arm/xen/hypercall.S b/arch/arm/xen/hypercall.S index d1cf7b7c2200..44e3a5f10c4c 100644 --- a/arch/arm/xen/hypercall.S +++ b/arch/arm/xen/hypercall.S | |||
@@ -89,6 +89,7 @@ HYPERCALL2(memory_op); | |||
89 | HYPERCALL2(physdev_op); | 89 | HYPERCALL2(physdev_op); |
90 | HYPERCALL3(vcpu_op); | 90 | HYPERCALL3(vcpu_op); |
91 | HYPERCALL1(tmem_op); | 91 | HYPERCALL1(tmem_op); |
92 | HYPERCALL2(multicall); | ||
92 | 93 | ||
93 | ENTRY(privcmd_call) | 94 | ENTRY(privcmd_call) |
94 | stmdb sp!, {r4} | 95 | stmdb sp!, {r4} |