Messages in this thread | | | Date | Thu, 26 Jun 2014 08:08:50 +0400 | Subject | Re: [PATCH 3/3] mm: catch memory commitment underflow | From | Konstantin Khlebnikov <> |
| |
On Thu, Jun 26, 2014 at 2:03 AM, Andrew Morton <akpm@linux-foundation.org> wrote: > On Wed, 25 Jun 2014 00:16:14 +0400 Konstantin Khlebnikov <koct9i@gmail.com> wrote: > >> This patch prints warning (if CONFIG_DEBUG_VM=y) when >> memory commitment becomes too negative. >> >> ... >> >> --- a/mm/mmap.c >> +++ b/mm/mmap.c >> @@ -134,6 +134,12 @@ int __vm_enough_memory(struct mm_struct *mm, long pages, int cap_sys_admin) >> { >> unsigned long free, allowed, reserve; >> >> +#ifdef CONFIG_DEBUG_VM >> + WARN_ONCE(percpu_counter_read(&vm_committed_as) < >> + -(s64)vm_committed_as_batch * num_online_cpus(), >> + "memory commitment underflow"); >> +#endif >> + >> vm_acct_memory(pages); > > The changelog doesn't describe the reasons for making the change. > > I assume this warning will detect the situation which the previous two > patches just fixed?
Yep. Otherwise there is no way to validate these bugs, /proc/meminfo hides negative values.
> Why not use VM_WARN_ON_ONCE()?
This patch is older than this macro. Previously I've sent it in the last september and it was ignored. Now I've found it again in my backlog.
| |