On Mon, Mar 04, 2013 at 02:14:02AM +0000, KY Srinivasan wrote:
> 
> 
> > -----Original Message-----
> > From: Greg KH [mailto:[email protected]]
> > Sent: Sunday, March 03, 2013 9:08 PM
> > To: KY Srinivasan
> > Cc: [email protected]; [email protected]; 
> > [email protected];
> > [email protected]; [email protected]; [email protected]; linux-
> > [email protected]
> > Subject: Re: [PATCH 1/1] mm: Export split_page().
> > 
> > On Sun, Mar 03, 2013 at 06:27:55PM -0800, K. Y. Srinivasan wrote:
> > > The split_page() function will be very useful for balloon drivers. On 
> > > Hyper-V,
> > > it will be very efficient to use 2M allocations in the guest as this (a) 
> > > makes
> > > the ballooning protocol with the host that much more efficient and (b) 
> > > moving
> > > memory in 2M chunks minimizes fragmentation in the host. Export the
> > split_page()
> > > function to let the guest allocations be in 2M chunks while the host is 
> > > free to
> > > return this memory at arbitrary granularity.
> > >
> > >
> > > Signed-off-by: K. Y. Srinivasan <[email protected]>
> > > ---
> > >  mm/page_alloc.c |    1 +
> > >  1 files changed, 1 insertions(+), 0 deletions(-)
> > >
> > > diff --git a/mm/page_alloc.c b/mm/page_alloc.c
> > > index 6cacfee..7e0ead6 100644
> > > --- a/mm/page_alloc.c
> > > +++ b/mm/page_alloc.c
> > > @@ -1404,6 +1404,7 @@ void split_page(struct page *page, unsigned int 
> > > order)
> > >   for (i = 1; i < (1 << order); i++)
> > >           set_page_refcounted(page + i);
> > >  }
> > > +EXPORT_SYMBOL_GPL(split_page);
> > 
> > When you export a symbol, you also need to post the code that is going
> > to use that symbol, otherwise people don't really know how to judge this
> > request.
> > 
> > Can you just make this a part of your balloon driver update patch series
> > instead?
> 
> Fair enough; I was hoping to see how inclined the mm folks were with regards 
> to
> exporting this symbol before I went ahead and modified the balloon driver 
> code to
> leverage this. Looking at the Windows guests on Hyper-V, I am convinced 2M 
> balloon
> allocations in the Linux (Hyper-V) balloon driver will make significant 
> difference. As you
> suggest, I will post this patch as part of the balloon driver changes that 
> use this exported
> symbol. I am still hoping to get some feedback from the mm guys on this.

I guess the most obvious question about exporting this symbol is, "Why
doesn't any of the other hypervisor balloon drivers need this?  What is
so special about hyper-v?"

Or can those other drivers also need/use it as well, and they were just
too chicken to be asking for the export?  :)

thanks,

greg k-h
_______________________________________________
devel mailing list
[email protected]
http://driverdev.linuxdriverproject.org/mailman/listinfo/devel

Reply via email to