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 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 */ );
--
It was a type of people I did not know, I found them very strange and
they did not inspire confidence at all. Later I learned that I had been
introduced to electronic engineers.
E. W. Dijkstra
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
|