Isaku Yamahata
2006-Nov-28 08:20 UTC
[Xen-devel] [PATCH] [XENOPROF] fix shared_xenoprof_page_with_guest() and clean up
Without this patch, profiling more than twice causes xen panic because of page reference counter inconsistency. [XENOPROFILE] fix shared_xenoprof_page_with_guest() and clean up. - share_xenoprof_page_with_guest() must check page reference count manually and clear the page owner in order to keep page_info consistency. free_domheap_pages() called by put_page() doesn''t clear page owner. It''s intentional. On the other hand, share_xen_page_with_guest() checks whether the page owner is already a requested one at first. If so, it simply returns doing nothing because share_xen_page_with_guest() expects freshly allocated pages or already shared one and doesn''t expect put_page()-and-free_domheap_pages() pages or pages shared with another domains. - clean up remove unsed argument gmaddr of alloc_xenoprof_buf(), alloc_xenoprof_struct() -- yamahata _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Woller, Thomas
2006-Nov-28 23:32 UTC
RE: [Xen-devel] [PATCH] [XENOPROF] fix shared_xenoprof_page_with_guest() and clean up
Isaku, When xenoprof is enabled in the 64bit linux dom0, then during the build, the xenoprof.h include file is not found, and dom0 fails to build with an error. It looks like there is no soft link to the i386 version created, but I am not sure of all of your cleanup modifications and how the build should actually occur using the i386 xenoprof.h file for x86_64 build. Can you provide fix? Thanks, Tom> -----Original Message----- > From: xen-devel-bounces@lists.xensource.com > [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of > Isaku Yamahata > Sent: Tuesday, November 28, 2006 2:20 AM > To: xen-devel@lists.xensource.com > Subject: [Xen-devel] [PATCH] [XENOPROF] fix > shared_xenoprof_page_with_guest() and clean up > > > Without this patch, profiling more than twice causes xen > panic because of page reference counter inconsistency. > > [XENOPROFILE] fix shared_xenoprof_page_with_guest() and clean up. > - share_xenoprof_page_with_guest() must check page reference > count manually > and clear the page owner in order to keep page_info consistency. > free_domheap_pages() called by put_page() doesn''t clear page owner. > It''s intentional. On the other hand, > share_xen_page_with_guest() checks > whether the page owner is already a requested one at first. If so, > it simply returns doing nothing because > share_xen_page_with_guest() expects > freshly allocated pages or already shared one and doesn''t expect > put_page()-and-free_domheap_pages() pages or pages shared with > another domains. > - clean up > remove unsed argument gmaddr of alloc_xenoprof_buf(), > alloc_xenoprof_struct() > > -- > yamahata >_______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Isaku Yamahata
2006-Nov-29 03:29 UTC
Re: [Xen-devel] [PATCH] [XENOPROF] fix shared_xenoprof_page_with_guest() and clean up
Attached the patch. please find it. I could compile with this patch on x86_64 successfully. If this patch doesn''t solve for you, can you send compilation log? On Tue, Nov 28, 2006 at 05:32:44PM -0600, Woller, Thomas wrote:> Isaku, > When xenoprof is enabled in the 64bit linux dom0, then during the build, > the xenoprof.h include file is not found, and dom0 fails to build with > an error. > It looks like there is no soft link to the i386 version created, but I > am not sure of all of your cleanup modifications and how the build > should actually occur using the i386 xenoprof.h file for x86_64 build. > Can you provide fix? > Thanks, > Tom > > > -----Original Message----- > > From: xen-devel-bounces@lists.xensource.com > > [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of > > Isaku Yamahata > > Sent: Tuesday, November 28, 2006 2:20 AM > > To: xen-devel@lists.xensource.com > > Subject: [Xen-devel] [PATCH] [XENOPROF] fix > > shared_xenoprof_page_with_guest() and clean up > > > > > > Without this patch, profiling more than twice causes xen > > panic because of page reference counter inconsistency. > > > > [XENOPROFILE] fix shared_xenoprof_page_with_guest() and clean up. > > - share_xenoprof_page_with_guest() must check page reference > > count manually > > and clear the page owner in order to keep page_info consistency. > > free_domheap_pages() called by put_page() doesn''t clear page owner. > > It''s intentional. On the other hand, > > share_xen_page_with_guest() checks > > whether the page owner is already a requested one at first. If so, > > it simply returns doing nothing because > > share_xen_page_with_guest() expects > > freshly allocated pages or already shared one and doesn''t expect > > put_page()-and-free_domheap_pages() pages or pages shared with > > another domains. > > - clean up > > remove unsed argument gmaddr of alloc_xenoprof_buf(), > > alloc_xenoprof_struct() > > > > -- > > yamahata > > > > > > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xensource.com > http://lists.xensource.com/xen-devel >-- yamahata _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Isaku Yamahata
2006-Nov-29 03:31 UTC
Re: [Xen-devel] [PATCH] [XENOPROF] fix shared_xenoprof_page_with_guest() and clean up
I forgot to attach it. On Wed, Nov 29, 2006 at 12:29:51PM +0900, Isaku Yamahata wrote:> > Attached the patch. please find it. > I could compile with this patch on x86_64 successfully. > If this patch doesn''t solve for you, can you send compilation log? > > On Tue, Nov 28, 2006 at 05:32:44PM -0600, Woller, Thomas wrote: > > Isaku, > > When xenoprof is enabled in the 64bit linux dom0, then during the build, > > the xenoprof.h include file is not found, and dom0 fails to build with > > an error. > > It looks like there is no soft link to the i386 version created, but I > > am not sure of all of your cleanup modifications and how the build > > should actually occur using the i386 xenoprof.h file for x86_64 build. > > Can you provide fix? > > Thanks, > > Tom > > > > > -----Original Message----- > > > From: xen-devel-bounces@lists.xensource.com > > > [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of > > > Isaku Yamahata > > > Sent: Tuesday, November 28, 2006 2:20 AM > > > To: xen-devel@lists.xensource.com > > > Subject: [Xen-devel] [PATCH] [XENOPROF] fix > > > shared_xenoprof_page_with_guest() and clean up > > > > > > > > > Without this patch, profiling more than twice causes xen > > > panic because of page reference counter inconsistency. > > > > > > [XENOPROFILE] fix shared_xenoprof_page_with_guest() and clean up. > > > - share_xenoprof_page_with_guest() must check page reference > > > count manually > > > and clear the page owner in order to keep page_info consistency. > > > free_domheap_pages() called by put_page() doesn''t clear page owner. > > > It''s intentional. On the other hand, > > > share_xen_page_with_guest() checks > > > whether the page owner is already a requested one at first. If so, > > > it simply returns doing nothing because > > > share_xen_page_with_guest() expects > > > freshly allocated pages or already shared one and doesn''t expect > > > put_page()-and-free_domheap_pages() pages or pages shared with > > > another domains. > > > - clean up > > > remove unsed argument gmaddr of alloc_xenoprof_buf(), > > > alloc_xenoprof_struct() > > > > > > -- > > > yamahata > > > > > > > > > > > _______________________________________________ > > Xen-devel mailing list > > Xen-devel@lists.xensource.com > > http://lists.xensource.com/xen-devel > > > > -- > yamahata > > _______________________________________________ > Xen-devel mailing list > Xen-devel@lists.xensource.com > http://lists.xensource.com/xen-devel >-- yamahata _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Woller, Thomas
2006-Nov-29 23:12 UTC
RE: [Xen-devel] [PATCH] [XENOPROF] fix shared_xenoprof_page_with_guest() and clean up
Can you resend? Seems like it was corrupted somehow, there are missing letters/lines/etc.. Thanks for working on this... tom # HG changeset patch # User yamahata@valinux.co.jp # Date 1164770743 -32400 # Node ID fd994cc456a397feeeb4ef904474baacc5428b19 # Parent 81c9213b3d39573c0b50090958268cb6f068d59e [XENOPROFILE, LINUX] compilation fix on x86_64 igned-off-by: Isaku Yamahata <yamahata@valinux.co.jp> diff -r 81c9213b3d39 -r fd994cc456a3 linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/asm/xenoprof.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/asm/xenoprof.h Wed Nov 29 12:25:43 2006 +0900 @@ -0,0 +1,1 @@ +#include <asm-i386/mach-xen/asm/xenoprof.h> diff -r 81c9213b3d39 -r fd994cc456a3 xen/include/public/xenoprof.h --- a/xen/include/public/xenoprof.h Tue Nov 28 18:41:42 2006 +0000 +++ b/xen/include/public/xenoprof.h Wed Nov 29 12:25:43 2006 +0900 @@ -28,6 +28,8 @@ #ifndef __XEN_PUBLIC_XENOPROF_H__ #define __XEN_PUBLIC_XENOPROF_H__ + +#include "xen.h" /* * Commands to HYPERVISOR_xenoprof_op().> -----Original Message----- > From: xen-devel-bounces@lists.xensource.com > [mailto:xen-devel-bounces@lists.xensource.com] On Behalf Of > Isaku Yamahata > Sent: Tuesday, November 28, 2006 9:32 PM > To: Woller, Thomas > Cc: xen-devel@lists.xensource.com > Subject: Re: [Xen-devel] [PATCH] [XENOPROF] fix > shared_xenoprof_page_with_guest() and clean up > > I forgot to attach it. > > On Wed, Nov 29, 2006 at 12:29:51PM +0900, Isaku Yamahata wrote: > > > > Attached the patch. please find it. > > I could compile with this patch on x86_64 successfully. > > If this patch doesn''t solve for you, can you send compilation log? > > > > On Tue, Nov 28, 2006 at 05:32:44PM -0600, Woller, Thomas wrote: > > > Isaku, > > > When xenoprof is enabled in the 64bit linux dom0, then during the > > > build, the xenoprof.h include file is not found, and dom0 > fails to > > > build with an error. > > > It looks like there is no soft link to the i386 version > created, but > > > I am not sure of all of your cleanup modifications and > how the build > > > should actually occur using the i386 xenoprof.h file for > x86_64 build. > > > Can you provide fix? > > > Thanks, > > > Tom > > > > > > > -----Original Message----- > > > > From: xen-devel-bounces@lists.xensource.com > > > > [mailto:xen-devel-bounces@lists.xensource.com] On > Behalf Of Isaku > > > > Yamahata > > > > Sent: Tuesday, November 28, 2006 2:20 AM > > > > To: xen-devel@lists.xensource.com > > > > Subject: [Xen-devel] [PATCH] [XENOPROF] fix > > > > shared_xenoprof_page_with_guest() and clean up > > > > > > > > > > > > Without this patch, profiling more than twice causes xen panic > > > > because of page reference counter inconsistency. > > > > > > > > [XENOPROFILE] fix shared_xenoprof_page_with_guest() and > clean up. > > > > - share_xenoprof_page_with_guest() must check page > reference count > > > > manually > > > > and clear the page owner in order to keep page_info > consistency. > > > > free_domheap_pages() called by put_page() doesn''t > clear page owner. > > > > It''s intentional. On the other hand, > > > > share_xen_page_with_guest() checks > > > > whether the page owner is already a requested one at > first. If so, > > > > it simply returns doing nothing because > > > > share_xen_page_with_guest() expects > > > > freshly allocated pages or already shared one and > doesn''t expect > > > > put_page()-and-free_domheap_pages() pages or pages shared with > > > > another domains. > > > > - clean up > > > > remove unsed argument gmaddr of alloc_xenoprof_buf(), > > > > alloc_xenoprof_struct() > > > > > > > > -- > > > > yamahata > > > > > > > > > > > > > > > > _______________________________________________ > > > Xen-devel mailing list > > > Xen-devel@lists.xensource.com > > > http://lists.xensource.com/xen-devel > > > > > > > -- > > yamahata > > > > _______________________________________________ > > Xen-devel mailing list > > Xen-devel@lists.xensource.com > > http://lists.xensource.com/xen-devel > > > > -- > yamahata >_______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Isaku Yamahata
2006-Nov-30 01:50 UTC
Re: [Xen-devel] [PATCH] [XENOPROF] fix shared_xenoprof_page_with_guest() and clean up
On Wed, Nov 29, 2006 at 05:12:35PM -0600, Woller, Thomas wrote:> Can you resend? Seems like it was corrupted somehow, there are missing > letters/lines/etc.. > Thanks for working on this... > tom# HG changeset patch # User yamahata@valinux.co.jp # Date 1164770743 -32400 # Node ID fd994cc456a397feeeb4ef904474baacc5428b19 # Parent 81c9213b3d39573c0b50090958268cb6f068d59e [XENOPROFILE, LINUX] compilation fix on x86_64 signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp> diff -r 81c9213b3d39 -r fd994cc456a3 linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/asm/xenoprof.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/asm/xenoprof.h Wed Nov 29 12:25:43 2006 +0900 @@ -0,0 +1,1 @@ +#include <asm-i386/mach-xen/asm/xenoprof.h> diff -r 81c9213b3d39 -r fd994cc456a3 xen/include/public/xenoprof.h --- a/xen/include/public/xenoprof.h Tue Nov 28 18:41:42 2006 +0000 +++ b/xen/include/public/xenoprof.h Wed Nov 29 12:25:43 2006 +0900 @@ -28,6 +28,8 @@ #ifndef __XEN_PUBLIC_XENOPROF_H__ #define __XEN_PUBLIC_XENOPROF_H__ + +#include "xen.h" /* * Commands to HYPERVISOR_xenoprof_op(). -- yamahata _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel