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

[Xen-devel] Re: performance regression from c/s 21647:cfba1560054a



>>> On 10.11.11 at 16:55, Gianluca Guida <glguida@xxxxxxxxx> wrote:
> Jan,
> 
> On Thu, Nov 10, 2011 at 7:11 AM, Jan Beulich <JBeulich@xxxxxxxx> wrote:
>>>>> On 10.11.11 at 15:59, Stefano Stabellini 
>>>>> <stefano.stabellini@xxxxxxxxxxxxx>
>> wrote:
>>> On Thu, 10 Nov 2011, Jan Beulich wrote:
>>>> It's SLE11 SP1 guests that suffered a regression after a maintenance
>>>> update (originally shipped with 4.0.0, while that patch got backported
>>>> later into 4.0.x).
>>>
>>> Is SLES11 SP1 using HVMOP_pagetable_dying (see
>>> arch/x86/xen/mmu.c:xen_hvm_init_mmu_ops)?
>>
>> No, it's not.
> 
> Can you please try the inline patch? Unfortunately I have no unstable
> test machine or infrastructure at the moment, so I can;t really test
> it.

I'll have it tested, but on 4.0.x (where the problem was reported and
is reproducible by those who observed it). I'll let you know as soon as
I know the outcome, but from the debugging we did so far (which
narrowed it to this part of the condition) it is pretty clear that it is
going to do the trick.

Jan

> I finally recalled a bit of details about this patch, so this check is
> clearly a bug as-it-is: it was written with the assumption that all
> the HVM guests would have been Windows guests with particular
> PV-drivers, so I wasn't particularly nice with the checks.
> 
> Thank you,
> Gianluca
> 
> diff -r 068d3d55ce6e xen/arch/x86/mm/shadow/multi.c
> --- a/xen/arch/x86/mm/shadow/multi.c    Tue Nov 01 19:03:38 2011 +0000
> +++ b/xen/arch/x86/mm/shadow/multi.c    Thu Nov 10 16:46:50 2011 -0800
> @@ -2723,8 +2723,9 @@
>             || ( !v->domain->arch.paging.shadow.pagetable_dying_op
>                  &&
> v->arch.paging.shadow.last_emulated_mfn_for_unshadow == mfn_x(gmfn) )
> )
>           && sh_mfn_is_a_page_table(gmfn)
> -         && !(mfn_to_page(gmfn)->shadow_flags
> -              & (SHF_L2_32|SHF_L2_PAE|SHF_L2H_PAE|SHF_L4_64)) )
> +         && (!v->domain->arch.paging.shadow.pagetable_dying_op ||
> +             !(mfn_to_page(gmfn)->shadow_flags
> +               & (SHF_L2_32|SHF_L2_PAE|SHF_L2H_PAE|SHF_L4_64))) )
>      {
>          perfc_incr(shadow_early_unshadow);
>          sh_remove_shadows(v, gmfn, 1, 0 /* Fast, can fail to unshadow */ );





_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

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