[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH 2 of 2] [v3] xen/x86: Add FS and GS base to HVM VCPU context


  • To: Jan Beulich <JBeulich@xxxxxxxx>, Aravindh Puthiyaparambil <aravindh@xxxxxxxxxxxx>
  • From: Keir Fraser <keir@xxxxxxx>
  • Date: Fri, 27 Apr 2012 16:02:46 +0100
  • Cc: xen-devel <xen-devel@xxxxxxxxxxxxx>
  • Delivery-date: Fri, 27 Apr 2012 15:03:21 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xen.org>
  • Thread-index: Ac0khs3DPHeLgiy8cEm68MzzVdw/Iw==
  • Thread-topic: [PATCH 2 of 2] [v3] xen/x86: Add FS and GS base to HVM VCPU context

On 27/04/2012 13:49, "Jan Beulich" <JBeulich@xxxxxxxx> wrote:

>>>> On 25.04.12 at 20:38, Aravindh Puthiyaparambil <aravindh@xxxxxxxxxxxx>
>>>> wrote:
>> Add FS and GS base to the HVM VCPU context returned by xc_vcpu_getcontext()
> 
> Given that we're in feature freeze right now - is this actually fixing some
> shortcoming somewhere? Otherwise it may need to wait until 4.2 is out.

I think we can make a judgement call on this one that it is obviously safe
to check it in. Even if the patch is buggy, it's only filling in data fields
with garbage, which were uninitialised garbage in the first place.

 -- Keir

> Jan
> 
>> Signed-off-by: Aravindh Puthiyaparambil <aravindh@xxxxxxxxxxxx>
>> 
>> diff -r be41f3b599d9 -r 1f39b9fe704f xen/arch/x86/domctl.c
>> --- a/xen/arch/x86/domctl.c Wed Apr 25 11:35:29 2012 -0700
>> +++ b/xen/arch/x86/domctl.c Wed Apr 25 11:35:43 2012 -0700
>> @@ -1590,8 +1590,23 @@ void arch_get_info_guest(struct vcpu *v,
>>          c.nat->user_regs.es = sreg.sel;
>>          hvm_get_segment_register(v, x86_seg_fs, &sreg);
>>          c.nat->user_regs.fs = sreg.sel;
>> +#ifdef __x86_64__
>> +        c.nat->fs_base = sreg.base;
>> +#endif
>>          hvm_get_segment_register(v, x86_seg_gs, &sreg);
>>          c.nat->user_regs.gs = sreg.sel;
>> +#ifdef __x86_64__
>> +        if ( ring_0(&c.nat->user_regs) )
>> +        {
>> +            c.nat->gs_base_kernel = sreg.base;
>> +            c.nat->gs_base_user = hvm_get_shadow_gs_base(v);
>> +        }
>> +        else
>> +        {
>> +            c.nat->gs_base_user = sreg.base;
>> +            c.nat->gs_base_kernel = hvm_get_shadow_gs_base(v);
>> +        }
>> +#endif
>>      }
>>      else
>>      {
> 
> 
> 



_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.