[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-3.4-testing] x86_emulate: Fix build by backporting in_longmode() from xen-unstable.
# HG changeset patch # User Keir Fraser <keir.fraser@xxxxxxxxxx> # Date 1250695973 -3600 # Node ID 2d6c4cc6a2a9e48218fe31d443f8937a3a88bf3f # Parent 9d2750197fb94b9b411115a37d8ef7d798b81d7a x86_emulate: Fix build by backporting in_longmode() from xen-unstable. Signed-off-by: Keir Fraser <keir.fraser@xxxxxxxxxx> --- xen/arch/x86/x86_emulate/x86_emulate.c | 26 +++++++++++++++++++++++++- 1 files changed, 25 insertions(+), 1 deletion(-) diff -r 9d2750197fb9 -r 2d6c4cc6a2a9 xen/arch/x86/x86_emulate/x86_emulate.c --- a/xen/arch/x86/x86_emulate/x86_emulate.c Wed Aug 19 16:28:03 2009 +0100 +++ b/xen/arch/x86/x86_emulate/x86_emulate.c Wed Aug 19 16:32:53 2009 +0100 @@ -280,7 +280,17 @@ struct operand { }; /* MSRs. */ -#define MSR_TSC 0x10 +#define MSR_TSC 0x00000010 +#define MSR_SYSENTER_CS 0x00000174 +#define MSR_SYSENTER_ESP 0x00000175 +#define MSR_SYSENTER_EIP 0x00000176 +#define MSR_EFER 0xc0000080 +#define EFER_SCE (1u<<0) +#define EFER_LMA (1u<<10) +#define MSR_STAR 0xc0000081 +#define MSR_LSTAR 0xc0000082 +#define MSR_CSTAR 0xc0000083 +#define MSR_FMASK 0xc0000084 /* Control register flags. */ #define CR0_PE (1<<0) @@ -942,6 +952,20 @@ in_protmode( } static int +in_longmode( + struct x86_emulate_ctxt *ctxt, + struct x86_emulate_ops *ops) +{ + uint64_t efer; + + if (ops->read_msr == NULL) + return -1; + + ops->read_msr(MSR_EFER, &efer, ctxt); + return !!(efer & EFER_LMA); +} + +static int realmode_load_seg( enum x86_segment seg, uint16_t sel, _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |