lkml.org 
[lkml]   [2011]   [Jun]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH 5/9] writeback: consolidate variable names in balance_dirty_pages()
    On Wed 29-06-11 22:52:50, Wu Fengguang wrote:
    > Introduce
    >
    > nr_dirty = NR_FILE_DIRTY + NR_WRITEBACK + NR_UNSTABLE_NFS
    >
    > in order to simplify many tests in the following patches.
    >
    > balance_dirty_pages() will eventually care only about the dirty sums
    > besides nr_writeback.
    Looks OK.
    Acked-by: Jan Kara <jack@suse.cz>

    Honza
    >
    > Signed-off-by: Wu Fengguang <fengguang.wu@intel.com>
    > ---
    > mm/page-writeback.c | 21 +++++++++++----------
    > 1 file changed, 11 insertions(+), 10 deletions(-)
    >
    > --- linux-next.orig/mm/page-writeback.c 2011-06-20 00:16:58.000000000 +0800
    > +++ linux-next/mm/page-writeback.c 2011-06-20 00:17:06.000000000 +0800
    > @@ -560,8 +560,9 @@ static void bdi_update_bandwidth(struct
    > static void balance_dirty_pages(struct address_space *mapping,
    > unsigned long write_chunk)
    > {
    > - long nr_reclaimable, bdi_nr_reclaimable;
    > - long nr_writeback, bdi_nr_writeback;
    > + unsigned long nr_reclaimable, bdi_nr_reclaimable;
    > + unsigned long nr_dirty; /* = file_dirty + writeback + unstable_nfs */
    > + unsigned long bdi_dirty;
    > unsigned long background_thresh;
    > unsigned long dirty_thresh;
    > unsigned long bdi_thresh;
    > @@ -574,7 +575,7 @@ static void balance_dirty_pages(struct a
    > for (;;) {
    > nr_reclaimable = global_page_state(NR_FILE_DIRTY) +
    > global_page_state(NR_UNSTABLE_NFS);
    > - nr_writeback = global_page_state(NR_WRITEBACK);
    > + nr_dirty = nr_reclaimable + global_page_state(NR_WRITEBACK);
    >
    > global_dirty_limits(&background_thresh, &dirty_thresh);
    >
    > @@ -583,8 +584,7 @@ static void balance_dirty_pages(struct a
    > * catch-up. This avoids (excessively) small writeouts
    > * when the bdi limits are ramping up.
    > */
    > - if (nr_reclaimable + nr_writeback <=
    > - (background_thresh + dirty_thresh) / 2)
    > + if (nr_dirty <= (background_thresh + dirty_thresh) / 2)
    > break;
    >
    > bdi_thresh = bdi_dirty_limit(bdi, dirty_thresh);
    > @@ -602,10 +602,12 @@ static void balance_dirty_pages(struct a
    > */
    > if (bdi_thresh < 2*bdi_stat_error(bdi)) {
    > bdi_nr_reclaimable = bdi_stat_sum(bdi, BDI_RECLAIMABLE);
    > - bdi_nr_writeback = bdi_stat_sum(bdi, BDI_WRITEBACK);
    > + bdi_dirty = bdi_nr_reclaimable +
    > + bdi_stat_sum(bdi, BDI_WRITEBACK);
    > } else {
    > bdi_nr_reclaimable = bdi_stat(bdi, BDI_RECLAIMABLE);
    > - bdi_nr_writeback = bdi_stat(bdi, BDI_WRITEBACK);
    > + bdi_dirty = bdi_nr_reclaimable +
    > + bdi_stat(bdi, BDI_WRITEBACK);
    > }
    >
    > /*
    > @@ -614,9 +616,8 @@ static void balance_dirty_pages(struct a
    > * bdi or process from holding back light ones; The latter is
    > * the last resort safeguard.
    > */
    > - dirty_exceeded =
    > - (bdi_nr_reclaimable + bdi_nr_writeback > bdi_thresh)
    > - || (nr_reclaimable + nr_writeback > dirty_thresh);
    > + dirty_exceeded = (bdi_dirty > bdi_thresh) ||
    > + (nr_dirty > dirty_thresh);
    >
    > if (!dirty_exceeded)
    > break;
    >
    >
    --
    Jan Kara <jack@suse.cz>
    SUSE Labs, CR


    \
     
     \ /
      Last update: 2011-06-30 19:29    [W:0.026 / U:31.020 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site