diff options
| author | Juergen Gross <jgross@suse.com> | 2016-07-06 01:00:29 -0400 |
|---|---|---|
| committer | David Vrabel <david.vrabel@citrix.com> | 2016-07-06 05:42:14 -0400 |
| commit | 4b5ae0150f29f494427a5d5561f1cd43e6cb2396 (patch) | |
| tree | 101884583d6befe2adf1f428f6ed18f73e09a7a4 | |
| parent | 7ba8dba95cb227eb6c270b1aa77f942e45f5e47c (diff) | |
arm/xen: add support for vm_assist hypercall
Add support for the Xen HYPERVISOR_vm_assist hypercall.
Signed-off-by: Juergen Gross <jgross@suse.com>
Reviewed-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Reviewed-by: Julien Grall <julien.grall@arm.com>
Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
Signed-off-by: David Vrabel <david.vrabel@citrix.com>
| -rw-r--r-- | arch/arm/include/asm/xen/hypercall.h | 1 | ||||
| -rw-r--r-- | arch/arm/xen/enlighten.c | 1 | ||||
| -rw-r--r-- | arch/arm/xen/hypercall.S | 1 | ||||
| -rw-r--r-- | arch/arm64/xen/hypercall.S | 1 |
4 files changed, 4 insertions, 0 deletions
diff --git a/arch/arm/include/asm/xen/hypercall.h b/arch/arm/include/asm/xen/hypercall.h index b6b962d70db9..9d874db13c0e 100644 --- a/arch/arm/include/asm/xen/hypercall.h +++ b/arch/arm/include/asm/xen/hypercall.h | |||
| @@ -52,6 +52,7 @@ int HYPERVISOR_memory_op(unsigned int cmd, void *arg); | |||
| 52 | int HYPERVISOR_physdev_op(int cmd, void *arg); | 52 | int HYPERVISOR_physdev_op(int cmd, void *arg); |
| 53 | int HYPERVISOR_vcpu_op(int cmd, int vcpuid, void *extra_args); | 53 | int HYPERVISOR_vcpu_op(int cmd, int vcpuid, void *extra_args); |
| 54 | int HYPERVISOR_tmem_op(void *arg); | 54 | int HYPERVISOR_tmem_op(void *arg); |
| 55 | int HYPERVISOR_vm_assist(unsigned int cmd, unsigned int type); | ||
| 55 | int HYPERVISOR_platform_op_raw(void *arg); | 56 | int HYPERVISOR_platform_op_raw(void *arg); |
| 56 | static inline int HYPERVISOR_platform_op(struct xen_platform_op *op) | 57 | static inline int HYPERVISOR_platform_op(struct xen_platform_op *op) |
| 57 | { | 58 | { |
diff --git a/arch/arm/xen/enlighten.c b/arch/arm/xen/enlighten.c index 47acb3613f40..2f4c3aa540eb 100644 --- a/arch/arm/xen/enlighten.c +++ b/arch/arm/xen/enlighten.c | |||
| @@ -466,4 +466,5 @@ EXPORT_SYMBOL_GPL(HYPERVISOR_vcpu_op); | |||
| 466 | EXPORT_SYMBOL_GPL(HYPERVISOR_tmem_op); | 466 | EXPORT_SYMBOL_GPL(HYPERVISOR_tmem_op); |
| 467 | EXPORT_SYMBOL_GPL(HYPERVISOR_platform_op); | 467 | EXPORT_SYMBOL_GPL(HYPERVISOR_platform_op); |
| 468 | EXPORT_SYMBOL_GPL(HYPERVISOR_multicall); | 468 | EXPORT_SYMBOL_GPL(HYPERVISOR_multicall); |
| 469 | EXPORT_SYMBOL_GPL(HYPERVISOR_vm_assist); | ||
| 469 | EXPORT_SYMBOL_GPL(privcmd_call); | 470 | EXPORT_SYMBOL_GPL(privcmd_call); |
diff --git a/arch/arm/xen/hypercall.S b/arch/arm/xen/hypercall.S index 9a36f4f49c10..a648dfc3be30 100644 --- a/arch/arm/xen/hypercall.S +++ b/arch/arm/xen/hypercall.S | |||
| @@ -91,6 +91,7 @@ HYPERCALL3(vcpu_op); | |||
| 91 | HYPERCALL1(tmem_op); | 91 | HYPERCALL1(tmem_op); |
| 92 | HYPERCALL1(platform_op_raw); | 92 | HYPERCALL1(platform_op_raw); |
| 93 | HYPERCALL2(multicall); | 93 | HYPERCALL2(multicall); |
| 94 | HYPERCALL2(vm_assist); | ||
| 94 | 95 | ||
| 95 | ENTRY(privcmd_call) | 96 | ENTRY(privcmd_call) |
| 96 | stmdb sp!, {r4} | 97 | stmdb sp!, {r4} |
diff --git a/arch/arm64/xen/hypercall.S b/arch/arm64/xen/hypercall.S index 70df80e8da2c..329c8027b0a9 100644 --- a/arch/arm64/xen/hypercall.S +++ b/arch/arm64/xen/hypercall.S | |||
| @@ -82,6 +82,7 @@ HYPERCALL3(vcpu_op); | |||
| 82 | HYPERCALL1(tmem_op); | 82 | HYPERCALL1(tmem_op); |
| 83 | HYPERCALL1(platform_op_raw); | 83 | HYPERCALL1(platform_op_raw); |
| 84 | HYPERCALL2(multicall); | 84 | HYPERCALL2(multicall); |
| 85 | HYPERCALL2(vm_assist); | ||
| 85 | 86 | ||
| 86 | ENTRY(privcmd_call) | 87 | ENTRY(privcmd_call) |
| 87 | mov x16, x0 | 88 | mov x16, x0 |
