lkml.org 
[lkml]   [2005]   [Sep]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 2.6.14-rc2] fix incorrect mm->hiwater_vm and mm->hiwater_rss
Frank van Maarseveen wrote:
> On Wed, Sep 21, 2005 at 10:39:01AM -0700, Jay Lan wrote:
>
>>Frank's patch looks fine to me except one place:
>>diff -ru a/mm/mmap.c b/mm/mmap.c
>>--- a/mm/mmap.c 2005-09-21 11:07:40.000000000 +0200
>>+++ b/mm/mmap.c 2005-09-21 11:17:06.755572000 +0200
>>@@ -854,6 +854,7 @@
>> mm->stack_vm += pages;
>> if (flags & (VM_RESERVED|VM_IO))
>> mm->reserved_vm += pages;
>>+ update_mem_hiwater(mm);
>> }
>> #endif /* CONFIG_PROC_FS */
>>
>>I have a question of adding this call here. 'update_mem_hiwater'
>>does nothing unless mm->total_vm or rss gets updated.
>>I do not see total_vm get updates in __vm_stat_account()?
>
>
> Check the callers of __vm_stat_account(). It is called at various places
> after increasing (sometimes decreasing) vm_total.

Sounds good.

- jay


>
> BTW, __vm_stat_account() itself is surrounded by #ifdef CONFIG_PROC_FS so
> I'd thought that that might be appropriate for hiwater_* too. So far they are
> set but are not read except by my patch for /proc/pid/status. >
> in 2.6.13.2:
>
> $ find -type f|xargs grep hiwater_rss
> ./kernel/fork.c: mm->hiwater_rss = get_mm_counter(mm,rss);
> ./include/linux/sched.h: unsigned long hiwater_rss; /* High-water RSS usage */
> ./mm/memory.c: if (tsk->mm->hiwater_rss < rss)
> ./mm/memory.c: tsk->mm->hiwater_rss = rss;
> ./mm/nommu.c: if (tsk->mm->hiwater_rss < rss)
> ./mm/nommu.c: tsk->mm->hiwater_rss = rss;
>
> $ find -type f|xargs grep hiwater_vm
> ./kernel/fork.c: mm->hiwater_vm = mm->total_vm;
> ./include/linux/sched.h: unsigned long hiwater_vm; /* High-water virtual memory usage */
> ./mm/memory.c: if (tsk->mm->hiwater_vm < tsk->mm->total_vm)
> ./mm/memory.c: tsk->mm->hiwater_vm = tsk->mm->total_vm;
> ./mm/nommu.c: if (tsk->mm->hiwater_vm < tsk->mm->total_vm)
> ./mm/nommu.c: tsk->mm->hiwater_vm = tsk->mm->total_vm;
>
> The matches in mm/memory.c and mm/nommu.c are in function update_mem_hiwater().
>

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-09-21 20:41    [W:0.192 / U:0.636 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site