* [PATCH] [shadow] Disable higher level pagetables early unshadow only when the "process dying" hypercall is used.
@ 2011-11-16 13:44 Gianluca Guida
2011-12-14 15:58 ` George Dunlap
0 siblings, 1 reply; 3+ messages in thread
From: Gianluca Guida @ 2011-11-16 13:44 UTC (permalink / raw)
To: xen-devel, Keir Fraser; +Cc: Tim Deegan, Jan Beulich, Gianluca Guida
This patch fixes a performance problem in fully virtualized guests.
Should be backported to xen-4.0 and xen-4.1. This patch applies (with
slightly different offsets) to all three versions.
Signed-off-by: Gianluca Guida <gianluca.guida@citrix.com>
Tested-by: Jan Beulich <jbeulich@suse.com>
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 Wed Nov 16 14:30:57 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 */ );
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] [shadow] Disable higher level pagetables early unshadow only when the "process dying" hypercall is used.
2011-11-16 13:44 [PATCH] [shadow] Disable higher level pagetables early unshadow only when the "process dying" hypercall is used Gianluca Guida
@ 2011-12-14 15:58 ` George Dunlap
2011-12-14 16:19 ` Gianluca Guida
0 siblings, 1 reply; 3+ messages in thread
From: George Dunlap @ 2011-12-14 15:58 UTC (permalink / raw)
To: Gianluca Guida
Cc: Tim Deegan, xen-devel, Keir Fraser, Jan Beulich, Gianluca Guida
On Wed, Nov 16, 2011 at 1:44 PM, Gianluca Guida <glguida@gmail.com> wrote:
> This patch fixes a performance problem in fully virtualized guests.
What performance problem, and how does it fix it? The c/s doesn't
have any information about either, so it's hard for me to evaluate
whether I should pull it into the XenServer patchqueue...
>
> Should be backported to xen-4.0 and xen-4.1. This patch applies (with
> slightly different offsets) to all three versions.
>
> Signed-off-by: Gianluca Guida <gianluca.guida@citrix.com>
> Tested-by: Jan Beulich <jbeulich@suse.com>
>
> 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 Wed Nov 16 14:30:57 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@lists.xensource.com
> http://lists.xensource.com/xen-devel
^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: [PATCH] [shadow] Disable higher level pagetables early unshadow only when the "process dying" hypercall is used.
2011-12-14 15:58 ` George Dunlap
@ 2011-12-14 16:19 ` Gianluca Guida
0 siblings, 0 replies; 3+ messages in thread
From: Gianluca Guida @ 2011-12-14 16:19 UTC (permalink / raw)
To: George Dunlap
Cc: Tim Deegan, xen-devel, Keir Fraser, Jan Beulich, Gianluca Guida
Hi George,
On Wed, Dec 14, 2011 at 7:58 AM, George Dunlap <dunlapg@umich.edu> wrote:
> On Wed, Nov 16, 2011 at 1:44 PM, Gianluca Guida <glguida@gmail.com> wrote:
>> This patch fixes a performance problem in fully virtualized guests.
>
> What performance problem, and how does it fix it? The c/s doesn't
> have any information about either, so it's hard for me to evaluate
> whether I should pull it into the XenServer patchqueue...
Have a look at this:
http://old-list-archives.xen.org/archives/html/xen-devel/2011-11/msg00650.html
A good question is whether the performance improvement that brought
Stefano to implement the hypercall in Linux was due to the original
patch creating a regression or if it really helps even after the
performance regression is fixed.
I wasn't here on the Xen world while the patch was tested on unstable,
so i have no idea about it.
Gianluca
--
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
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2011-12-14 16:19 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-11-16 13:44 [PATCH] [shadow] Disable higher level pagetables early unshadow only when the "process dying" hypercall is used Gianluca Guida
2011-12-14 15:58 ` George Dunlap
2011-12-14 16:19 ` Gianluca Guida
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).