lkml.org 
[lkml]   [2010]   [Mar]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH -mmotm 5/5] memcg: dirty pages instrumentation
    On Mon, 15 Mar 2010 00:26:42 +0100
    Andrea Righi <arighi@develer.com> wrote:

    > Apply the cgroup dirty pages accounting and limiting infrastructure to
    > the opportune kernel functions.
    >
    > [ NOTE: for now do not account WritebackTmp pages (FUSE) and NILFS2
    > bounce pages. This depends on charging also bounce pages per cgroup. ]
    >
    > As a bonus, make determine_dirtyable_memory() static again: this
    > function isn't used anymore outside page writeback.
    >
    > Signed-off-by: Andrea Righi <arighi@develer.com>

    Reviewed-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>

    A nitpick.

    > @@ -660,6 +705,8 @@ void throttle_vm_writeout(gfp_t gfp_mask)
    > unsigned long dirty_thresh;
    >
    > for ( ; ; ) {
    > + unsigned long dirty;
    > +
    > get_dirty_limits(&background_thresh, &dirty_thresh, NULL, NULL);
    >
    > /*
    > @@ -668,10 +715,10 @@ void throttle_vm_writeout(gfp_t gfp_mask)
    > */
    > dirty_thresh += dirty_thresh / 10; /* wheeee... */
    >
    > - if (global_page_state(NR_UNSTABLE_NFS) +
    > - global_page_state(NR_WRITEBACK) <= dirty_thresh)
    > - break;
    > - congestion_wait(BLK_RW_ASYNC, HZ/10);
    > + dirty = get_dirty_writeback_pages();
    > + if (dirty <= dirty_thresh)
    > + break;
    > + congestion_wait(BLK_RW_ASYNC, HZ/10);
    >
    > /*
    > * The caller might hold locks which can prevent IO completion

    "dirty" seems not to be necessary.
    if (get_dirty_writeback_pages() < dirty_thresh) ?

    Thanks,
    -Kame





    \
     
     \ /
      Last update: 2010-03-15 03:37    [W:0.024 / U:0.128 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site