Re: [PATCH v2 1/4] mm: introduce compaction and migration for virtioballooned pages

From: Rafael Aquini
Date: Tue Jul 03 2012 - 14:32:00 EST


On Mon, Jul 02, 2012 at 08:36:02AM +0900, Minchan Kim wrote:
> On 06/30/2012 10:34 AM, Rafael Aquini wrote:
>
> >> void isolate_page_from_balloonlist(struct page* page)
> >> > {
> >> > page->mapping->a_ops->invalidatepage(page, 0);
> >> > }
> >> >
> >> > if (is_balloon_page(page) && (page_count(page) == 2)) {
> >> > isolate_page_from_balloonlist(page);
> >> > }
> >> >
> > Humm, my feelings on your approach here: just an unecessary indirection that
> > doesn't bring the desired code readability improvement.
> > If the header comment statement on balloon_mapping->a_ops is not clear enough
> > on those methods usage for ballooned pages:
> >
> > .....
> > /*
> > * Balloon pages special page->mapping.
> > * users must properly allocate and initialize an instance of balloon_mapping,
> > * and set it as the page->mapping for balloon enlisted page instances.
> > *
> > * address_space_operations necessary methods for ballooned pages:
> > * .migratepage - used to perform balloon's page migration (as is)
> > * .invalidatepage - used to isolate a page from balloon's page list
> > * .freepage - used to reinsert an isolated page to balloon's page list
> > */
> > struct address_space *balloon_mapping;
> > EXPORT_SYMBOL_GPL(balloon_mapping);
> > .....
> >
> > I can add an extra commentary, to recollect folks about that usage, next to the
> > points where those callbacks are used at isolate_balloon_page() &
> > putback_balloon_page(). What do you think?
> >
> >
>
>
> I am not strongly against you.
> It trivial nitpick must not prevent your great work. :)
>
> Thanks!
>
>
Nah, I'm the one who should be thanking everyone else here. :)

After a second thought I decided to follow your suggestion on this one as well.
Soon, I'll be posting the re-spin

Thanks Minchan!

Rafael
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/