[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-unstable] Don't clobber vcpu flags when getting vcpu context.
# HG changeset patch # User kaf24@xxxxxxxxxxxxxxxxxxxxx # Date 1169832838 0 # Node ID 19a600376688577f0692eac022f05bc6df30ce93 # Parent aae5932afc6d2d8d8dd277223daf08ecff2f28e9 Don't clobber vcpu flags when getting vcpu context. Signed-off-by: Keir Fraser <keir@xxxxxxxxxxxxx> --- xen/arch/x86/domctl.c | 8 +++----- 1 files changed, 3 insertions(+), 5 deletions(-) diff -r aae5932afc6d -r 19a600376688 xen/arch/x86/domctl.c --- a/xen/arch/x86/domctl.c Fri Jan 26 16:56:26 2007 +0000 +++ b/xen/arch/x86/domctl.c Fri Jan 26 17:33:58 2007 +0000 @@ -410,7 +410,6 @@ void arch_get_info_guest(struct vcpu *v, #else #define c(fld) (c.nat->fld) #endif - unsigned long flags; if ( !IS_COMPAT(v->domain) ) memcpy(c.nat, &v->arch.guest_context, sizeof(*c.nat)); @@ -444,12 +443,11 @@ void arch_get_info_guest(struct vcpu *v, c(user_regs.eflags |= v->arch.iopl << 12); } - flags = 0; + c(flags &= ~(VGCF_i387_valid|VGCF_in_kernel)); if ( test_bit(_VCPUF_fpu_initialised, &v->vcpu_flags) ) - flags |= VGCF_i387_valid; + c(flags |= VGCF_i387_valid); if ( guest_kernel_mode(v, &v->arch.guest_context.user_regs) ) - flags |= VGCF_in_kernel; - c(flags = flags); + c(flags |= VGCF_in_kernel); if ( !IS_COMPAT(v->domain) ) c.nat->ctrlreg[3] = xen_pfn_to_cr3(pagetable_get_pfn(v->arch.guest_table)); _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |