lkml.org 
[lkml]   [2011]   [Feb]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH v5 3/9] writeback: convert variables to unsigned
On Fri, Feb 25, 2011 at 01:35:54PM -0800, Greg Thelen wrote:
> Convert two balance_dirty_pages() page counter variables (nr_reclaimable
> and nr_writeback) from 'long' to 'unsigned long'.
>
> These two variables are used to store results from global_page_state().
> global_page_state() returns unsigned long and carefully sums per-cpu
> counters explicitly avoiding returning a negative value.
>
> Signed-off-by: Greg Thelen <gthelen@google.com>
Reviewed-by: Minchan Kim <minchan.kim@gmail.com>

> ---
> Changelog since v4:
> - Created this patch for clarity. Previously this patch was integrated within
> the "writeback: create dirty_info structure" patch.
>
> mm/page-writeback.c | 6 ++++--
> 1 files changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/mm/page-writeback.c b/mm/page-writeback.c
> index 2cb01f6..4408e54 100644
> --- a/mm/page-writeback.c
> +++ b/mm/page-writeback.c
> @@ -478,8 +478,10 @@ unsigned long bdi_dirty_limit(struct backing_dev_info *bdi, unsigned long dirty)
> 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;
> + long bdi_nr_reclaimable;
> + unsigned long nr_writeback;
> + long bdi_nr_writeback;
> unsigned long background_thresh;
> unsigned long dirty_thresh;
> unsigned long bdi_thresh;
> --
> 1.7.3.1
>
bdi_nr_[reclaimable|writeback] can return negative value?
When I just look through bdi_stat_sum, it uses *percpu_counter_sum_positive*.
So I guess it always returns positive value.
If it is right, could you change it, too?

--
Kind regards,
Minchan Kim


\
 
 \ /
  Last update: 2011-02-27 17:09    [W:0.155 / U:0.020 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site