lkml.org 
[lkml]   [2009]   [Feb]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: [RFC] vmscan: initialize sc->nr_reclaimed in do_try_to_free_pages()
From
On Tue, Feb 10, 2009 at 9:06 PM, KOSAKI Motohiro
<kosaki.motohiro@jp.fujitsu.com> wrote:
>> > static int __zone_reclaim(struct zone *zone, gfp_t gfp_mask, unsigned int order)
>> > {
>> > /* Minimum pages needed in order to stay on node */
>> > const unsigned long nr_pages = 1 << order;
>> > struct task_struct *p = current;
>> > struct reclaim_state reclaim_state;
>> > int priority;
>> > struct scan_control sc = {
>> > .may_writepage = !!(zone_reclaim_mode & RECLAIM_WRITE),
>> > .may_swap = !!(zone_reclaim_mode & RECLAIM_SWAP),
>> > .swap_cluster_max = max_t(unsigned long, nr_pages,
>> > SWAP_CLUSTER_MAX),
>> > .gfp_mask = gfp_mask,
>> > .swappiness = vm_swappiness,
>> > .isolate_pages = isolate_pages_global,
>> > + .nr_reclaimed = 0;
>> > };
>>
>> Hmm.. I missed that. Thanks.
>> There is one in shrink_all_memory.
>
> No.
> __zone_reclaim isn't a part of shrink_all_memory().
> Currently, shrink_all_memory() don't use sc.nr_reclaimed member.
> (maybe, it's another wrong thing ;)

Hmm.. You're right.
As Johannes pointed out,
too many page shrinking can degrade resume performance.

We need to bale out in shrink_all_memory.
Other people, thought ?

--
Kinds regards,
MinChan Kim


\
 
 \ /
  Last update: 2009-02-10 13:33    [from the cache]
©2003-2011 Jasper Spaans