lkml.org 
[lkml]   [2012]   [Aug]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH v7 1/4] mm: introduce compaction and migration for virtio ballooned pages
    On Mon, Aug 13, 2012 at 11:26:19AM +0300, Michael S. Tsirkin wrote:
    > > +static inline bool movable_balloon_page(struct page *page)
    > > +{
    > > + return (page->mapping && page->mapping == balloon_mapping);
    >
    > I am guessing this needs smp_read_barrier_depends, and maybe
    > ACCESS_ONCE ...
    >

    I'm curious about your guessing here. Could you ellaborate it further, please?


    > > +#else
    > > +static inline bool isolate_balloon_page(struct page *page) { return false; }
    > > +static inline void putback_balloon_page(struct page *page) { return false; }
    > > +static inline bool movable_balloon_page(struct page *page) { return false; }
    > > +#endif /* (VIRTIO_BALLOON || VIRTIO_BALLOON_MODULE) && CONFIG_COMPACTION */
    > > +
    >
    > This does mean that only one type of balloon is useable at a time.
    > I wonder whether using a flag in address_space structure instead
    > is possible ...

    This means we are only introducing this feature for virtio_balloon by now.
    Despite the flagging address_space stuff is something we surely can look in the
    future, I quite didn't get how we could be using two different types of balloon
    devices at the same time for the same system. Could you ellaborate it a little
    more, please?


    > > +/* __isolate_lru_page() counterpart for a ballooned page */
    > > +bool isolate_balloon_page(struct page *page)
    > > +{
    > > + if (WARN_ON(!movable_balloon_page(page)))
    >
    > Looks like this actually can happen if the page is leaked
    > between previous movable_balloon_page and here.
    >
    > > + return false;

    Yes, it surely can happen, and it does not harm to catch it here, print a warn and
    return. While testing it, I wasn't lucky to see this small window opening, though.



    \
     
     \ /
      Last update: 2012-08-14 20:22    [W:0.023 / U:61.692 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site