On Feb 12, 2016 02:12, "Jan Beulich" <jbeul...@suse.com> wrote: > > >>> On 12.02.16 at 01:22, <tleng...@novetta.com> wrote: > > Sending the dr7 register during vm_events is useful for various applications, > > but the current way the register value is gathered is incorrent. In this > > patch > > we extend vmx_vmcs_save so that we get the correct value. > > > > Suggested-by: Andrew Cooper <andrew.coop...@citrix.com> > > Iirc Andrew suggested ... > > > --- a/xen/arch/x86/hvm/vmx/vmx.c > > +++ b/xen/arch/x86/hvm/vmx/vmx.c > > @@ -490,6 +490,7 @@ static void vmx_vmcs_save(struct vcpu *v, struct hvm_hw_cpu *c) > > __vmread(GUEST_SYSENTER_CS, &c->sysenter_cs); > > __vmread(GUEST_SYSENTER_ESP, &c->sysenter_esp); > > __vmread(GUEST_SYSENTER_EIP, &c->sysenter_eip); > > + __vmread(GUEST_DR7, &c->dr7); > > ... just when v == current. >
Would that check really be necessary? It would complicate the code not just here but the caller would need to be aware too that in that case dr7 can be aquired from someplace else. I don't see the harm in just saving dr7 here in both cases. Tamas
_______________________________________________ Xen-devel mailing list Xen-devel@lists.xen.org http://lists.xen.org/xen-devel