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
_______________________________________________
Virtualization mailing list
[email protected]
https://lists.linuxfoundation.org/mailman/listinfo/virtualization