Re: [PATCH 8/8] Per-container pages reclamation

2007-06-01 Thread Balbir Singh
Pavel Emelianov wrote: > Balbir Singh wrote: > > [snip] > > + for_each_online_node(node) { > +#ifdef CONFIG_HIGHMEM > + zones = NODE_DATA(node)->node_zonelists[ZONE_HIGHMEM].zones; > + if (do_try_to_free_pages(zones, sc.gfp_mask, &sc)) > + retur

Re: [PATCH 8/8] Per-container pages reclamation

2007-06-01 Thread Pavel Emelianov
Balbir Singh wrote: [snip] + for_each_online_node(node) { +#ifdef CONFIG_HIGHMEM + zones = NODE_DATA(node)->node_zonelists[ZONE_HIGHMEM].zones; + if (do_try_to_free_pages(zones, sc.gfp_mask, &sc)) + return 1; +#endif +

Re: [PATCH 8/8] Per-container pages reclamation

2007-06-01 Thread Andrew Morton
On Fri, 01 Jun 2007 11:44:25 +0400 Pavel Emelianov <[EMAIL PROTECTED]> wrote: > Andrew Morton wrote: > > On Thu, 31 May 2007 14:35:43 +0400 > > Pavel Emelianov <[EMAIL PROTECTED]> wrote: > > > >>> Would I be correct in guessing that pages which are on the > >>> per-rss-container lists are also el

Re: [PATCH 8/8] Per-container pages reclamation

2007-06-01 Thread Pavel Emelianov
Balbir Singh wrote: > Andrew Morton wrote: >> On Wed, 30 May 2007 19:42:26 +0400 >> Pavel Emelianov <[EMAIL PROTECTED]> wrote: >> >>> Implement try_to_free_pages_in_container() to free the >>> pages in container that has run out of memory. >>> >>> The scan_control->isolate_pages() function is set t

Re: [PATCH 8/8] Per-container pages reclamation

2007-06-01 Thread Pavel Emelianov
Andrew Morton wrote: > On Thu, 31 May 2007 14:35:43 +0400 > Pavel Emelianov <[EMAIL PROTECTED]> wrote: > >>> Would I be correct in guessing that pages which are on the >>> per-rss-container lists are also eligible for reclaim off the traditional >>> page LRUs? If so, how does that work? When a p

Re: [PATCH 8/8] Per-container pages reclamation

2007-06-01 Thread Balbir Singh
Andrew Morton wrote: > On Wed, 30 May 2007 19:42:26 +0400 > Pavel Emelianov <[EMAIL PROTECTED]> wrote: > >> Implement try_to_free_pages_in_container() to free the >> pages in container that has run out of memory. >> >> The scan_control->isolate_pages() function is set to >> isolate_pages_in_contai

Re: [PATCH 8/8] Per-container pages reclamation

2007-05-31 Thread Andrew Morton
On Thu, 31 May 2007 14:35:43 +0400 Pavel Emelianov <[EMAIL PROTECTED]> wrote: > > Would I be correct in guessing that pages which are on the > > per-rss-container lists are also eligible for reclaim off the traditional > > page LRUs? If so, how does that work? When a page gets freed off the > >

Re: [PATCH 8/8] Per-container pages reclamation

2007-05-31 Thread Pavel Emelianov
Andrew Morton wrote: > On Wed, 30 May 2007 19:42:26 +0400 > Pavel Emelianov <[EMAIL PROTECTED]> wrote: > >> Implement try_to_free_pages_in_container() to free the >> pages in container that has run out of memory. >> >> The scan_control->isolate_pages() function is set to >> isolate_pages_in_contai

Re: [PATCH 8/8] Per-container pages reclamation

2007-05-31 Thread Balbir Singh
Vaidyanathan Srinivasan wrote: > > Andrew Morton wrote: >> On Wed, 30 May 2007 19:42:26 +0400 >> Pavel Emelianov <[EMAIL PROTECTED]> wrote: >> > [snip] >>> +#ifdef CONFIG_RSS_CONTAINER >>> +unsigned long try_to_free_pages_in_container(struct rss_container *cnt) >>> +{ >>> + struct scan_control s

Re: [PATCH 8/8] Per-container pages reclamation

2007-05-31 Thread Vaidyanathan Srinivasan
Andrew Morton wrote: > On Wed, 30 May 2007 19:42:26 +0400 > Pavel Emelianov <[EMAIL PROTECTED]> wrote: > [snip] >> >> +#ifdef CONFIG_RSS_CONTAINER >> +unsigned long try_to_free_pages_in_container(struct rss_container *cnt) >> +{ >> +struct scan_control sc = { >> +.gfp_mask = GFP_

Re: [PATCH 8/8] Per-container pages reclamation

2007-05-30 Thread Andrew Morton
On Wed, 30 May 2007 19:42:26 +0400 Pavel Emelianov <[EMAIL PROTECTED]> wrote: > Implement try_to_free_pages_in_container() to free the > pages in container that has run out of memory. > > The scan_control->isolate_pages() function is set to > isolate_pages_in_container() that isolates the contain

[PATCH 8/8] Per-container pages reclamation

2007-05-30 Thread Pavel Emelianov
Implement try_to_free_pages_in_container() to free the pages in container that has run out of memory. The scan_control->isolate_pages() function is set to isolate_pages_in_container() that isolates the container pages only. The exported __isolate_lru_page() call makes things look simpler than in t

Re: [PATCH 8/8] Per-container pages reclamation

2007-05-24 Thread Balbir Singh
Pavel Emelianov wrote: >> Index: linux-2.6.20/mm/rss_container.c >> === >> --- linux-2.6.20.orig/mm/rss_container.c 2007-05-15 05:13:46.0 >> -0700 >> +++ linux-2.6.20/mm/rss_container.c 2007-05-16 20:45:45.0 -0700

Re: [PATCH 8/8] Per-container pages reclamation

2007-05-21 Thread Pavel Emelianov
Balbir Singh wrote: > Pavel Emelianov wrote: >> Implement try_to_free_pages_in_container() to free the >> pages in container that has run out of memory. >> >> The scan_control->isolate_pages() function isolates the >> container pages only. Sorry for the late answer, but I have just managed to get

Re: [PATCH 8/8] Per-container pages reclamation

2007-05-17 Thread Balbir Singh
Pavel Emelianov wrote: > Implement try_to_free_pages_in_container() to free the > pages in container that has run out of memory. > > The scan_control->isolate_pages() function isolates the > container pages only. > > Hi, Pavel/Andrew, I've started running some basic tests like lmbench and LTP

Re: [PATCH 8/8] Per-container pages reclamation

2007-05-02 Thread Balbir Singh
Pavel Emelianov wrote: Implement try_to_free_pages_in_container() to free the pages in container that has run out of memory. The scan_control->isolate_pages() function isolates the container pages only. +#ifdef CONFIG_RSS_CONTAINER +unsigned long try_to_free_pages_in_container(struct rss_contai

Re: [PATCH 8/8] Per-container pages reclamation

2007-04-24 Thread Pavel Emelianov
Balbir Singh wrote: > Pavel Emelianov wrote: >> Balbir Singh wrote: >>> Pavel Emelianov wrote: Implement try_to_free_pages_in_container() to free the pages in container that has run out of memory. The scan_control->isolate_pages() function isolates the container pages only.

Re: [PATCH 8/8] Per-container pages reclamation

2007-04-24 Thread Balbir Singh
Pavel Emelianov wrote: Balbir Singh wrote: Pavel Emelianov wrote: Implement try_to_free_pages_in_container() to free the pages in container that has run out of memory. The scan_control->isolate_pages() function isolates the container pages only. Pavel, I've just started playing around with

Re: [PATCH 8/8] Per-container pages reclamation

2007-04-24 Thread Pavel Emelianov
Balbir Singh wrote: > Pavel Emelianov wrote: >> Implement try_to_free_pages_in_container() to free the >> pages in container that has run out of memory. >> >> The scan_control->isolate_pages() function isolates the >> container pages only. >> > > Pavel, > > I've just started playing around with t

Re: [PATCH 8/8] Per-container pages reclamation

2007-04-24 Thread Balbir Singh
Pavel Emelianov wrote: Implement try_to_free_pages_in_container() to free the pages in container that has run out of memory. The scan_control->isolate_pages() function isolates the container pages only. Pavel, I've just started playing around with these patches, I preferred the approach of v

[PATCH 8/8] Per-container pages reclamation

2007-04-09 Thread Pavel Emelianov
Implement try_to_free_pages_in_container() to free the pages in container that has run out of memory. The scan_control->isolate_pages() function isolates the container pages only. diff -upr linux-2.6.20.orig/include/linux/swap.h linux-2.6.20-2/include/linux/swap.h --- linux-2.6.20.orig/include/li