diff options
author | Keir Fraser <keir@xen.org> | 2010-11-16 14:16:36 +0000 |
---|---|---|
committer | Keir Fraser <keir@xen.org> | 2010-11-16 14:16:36 +0000 |
commit | 106f2288c2a71e4f6438d5e2571a78720e659d34 (patch) | |
tree | 085fb5fd0943b5fd21d2bbdfbebf622eb0ee8362 /xen/include/asm-x86/x86_64 | |
parent | 561e9179370c6927160eb797e1dccc5351d13eb3 (diff) | |
download | xen-106f2288c2a71e4f6438d5e2571a78720e659d34.tar.gz xen-106f2288c2a71e4f6438d5e2571a78720e659d34.tar.bz2 xen-106f2288c2a71e4f6438d5e2571a78720e659d34.zip |
x86_64: Make 32-bit-hypercall translate area per-vcpu.
This is a prerequisite for allowing guest descheduling within a
hypercall.
Signed-off-by: Keir Fraser <keir@xen.org>
Diffstat (limited to 'xen/include/asm-x86/x86_64')
-rw-r--r-- | xen/include/asm-x86/x86_64/uaccess.h | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/xen/include/asm-x86/x86_64/uaccess.h b/xen/include/asm-x86/x86_64/uaccess.h index c5cb386d2b..e35ce28e03 100644 --- a/xen/include/asm-x86/x86_64/uaccess.h +++ b/xen/include/asm-x86/x86_64/uaccess.h @@ -1,11 +1,12 @@ #ifndef __X86_64_UACCESS_H #define __X86_64_UACCESS_H -#define COMPAT_ARG_XLAT_VIRT_BASE this_cpu(compat_arg_xlat) +#define COMPAT_ARG_XLAT_VIRT_BASE compat_arg_xlat_virt_base() #define COMPAT_ARG_XLAT_SIZE (2*PAGE_SIZE) -DECLARE_PER_CPU(void *, compat_arg_xlat); -int setup_compat_arg_xlat(unsigned int cpu, int node); -void free_compat_arg_xlat(unsigned int cpu); +struct vcpu; +void *compat_arg_xlat_virt_base(void); +int setup_compat_arg_xlat(struct vcpu *v); +void free_compat_arg_xlat(struct vcpu *v); #define is_compat_arg_xlat_range(addr, size) ({ \ unsigned long __off; \ __off = (unsigned long)(addr) - (unsigned long)COMPAT_ARG_XLAT_VIRT_BASE; \ |