mm: catch memory commitment underflow
Print a warning (if CONFIG_DEBUG_VM=y) when memory commitment becomes too negative. This shouldn't happen any more - the previous two patches fixed the committed_as underflow issues. [akpm@linux-foundation.org: use VM_WARN_ONCE, per Dave] Signed-off-by: Konstantin Khlebnikov <koct9i@gmail.com> Cc: Hugh Dickins <hughd@google.com> Cc: Dave Hansen <dave.hansen@intel.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
7714251799
commit
82f71ae4a2
|
@ -31,6 +31,7 @@
|
|||
#include <linux/mempolicy.h>
|
||||
#include <linux/rmap.h>
|
||||
#include <linux/mmu_notifier.h>
|
||||
#include <linux/mmdebug.h>
|
||||
#include <linux/perf_event.h>
|
||||
#include <linux/audit.h>
|
||||
#include <linux/khugepaged.h>
|
||||
|
@ -134,6 +135,10 @@ int __vm_enough_memory(struct mm_struct *mm, long pages, int cap_sys_admin)
|
|||
{
|
||||
unsigned long free, allowed, reserve;
|
||||
|
||||
VM_WARN_ONCE(percpu_counter_read(&vm_committed_as) <
|
||||
-(s64)vm_committed_as_batch * num_online_cpus(),
|
||||
"memory commitment underflow");
|
||||
|
||||
vm_acct_memory(pages);
|
||||
|
||||
/*
|
||||
|
|
Loading…
Reference in New Issue