lkml.org 
[lkml]   [2008]   [Feb]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [patch 14/21] scan noreclaim list for reclaimable pages
On Thu, 28 Feb 2008 14:29:22 -0500 Rik van Riel wrote:

> V2 -> V3:
> + rebase to 23-mm1 atop RvR's split LRU series
>
> New in V2
>
> This patch adds a function to scan individual or all zones' noreclaim
> lists and move any pages that have become reclaimable onto the respective
> zone's inactive list, where shrink_inactive_list() will deal with them.
>
> This replaces the function to splice the entire noreclaim list onto the
> active list for rescan by shrink_active_list(). That method had problems
> with vmstat accounting and complicated '[__]isolate_lru_pages()'. Now,
> __isolate_lru_page() will never isolate a non-reclaimable page. The
> only time it should see one is when scanning nearby pages for lumpy
> reclaim.
>
> TODO: This approach may still need some refinement.
> E.g., put back to active list?
>
> DEBUGGING ONLY: NOT FOR UPSTREAM MERGE
>
> Signed-off-by: Lee Schermerhorn <lee.schermerhorn@hp.com>
> Signed-off-by: Rik van Riel <riel@redhat.com>


Hi,

I haven't looked at all 21 patches, but please use kernel-doc
notation as it's defined. See Documentation/kernel-doc-nano-HOWTO.txt
for details, or ask.

> Index: linux-2.6.25-rc2-mm1/mm/vmscan.c
> ===================================================================
> --- linux-2.6.25-rc2-mm1.orig/mm/vmscan.c 2008-02-28 11:05:04.000000000 -0500
> +++ linux-2.6.25-rc2-mm1/mm/vmscan.c 2008-02-28 12:48:01.000000000 -0500
> @@ -2295,4 +2296,144 @@ int page_reclaimable(struct page *page,
>
> return 1;
> }
> +
> +/**
> + * scan_zone_noreclaim_pages(@zone)
> + * @zone - zone to scan

E.g.:

* scan_zone_reclaim_pages - some short description here
* @zone: zone to scan


> + *
> + * Scan @zone's noreclaim LRU lists to check for pages that have become
> + * reclaimable. Move those that have to @zone's inactive list where they
> + * become candidates for reclaim, unless shrink_inactive_zone() decides
> + * to reactivate them. Pages that are still non-reclaimable are rotated
> + * back onto @zone's noreclaim list.
> + */
> +#define SCAN_NORECLAIM_BATCH_SIZE 16UL /* arbitrary lock hold batch size */

and don't insert macros between the kernel-doc section and the
function definition, please.


> +void scan_zone_noreclaim_pages(struct zone *zone)
> +{
...
> +}

---
~Randy

\
 
 \ /
  Last update: 2008-02-29 00:45    [from the cache]
©2003-2011 Jasper Spaans