[patch] 2.6.8.1: display committed memory limit and available inmeminfo
From: Frank Hirtz
Date: Thu Aug 19 2004 - 10:01:58 EST
The following patch will have the committed memory limit (per the current
overcommit ratio) and the amount of memory remaining under this limit displayed
in meminfo.
It's presently somewhat difficult to use the strict memory overcommit settings
as it's somewhat difficult to determine the amount of memory remaining under the
cap. This patch would make using strict overcommit a good bit simpler. Does such
an addition seem reasonable?
Thank you,
Frank.
--- linux-2.6.8.1/fs/proc/proc_misc.c 2004-08-18 16:32:07.000000000 -0400
+++ linux-2.6.8.1.new/fs/proc/proc_misc.c 2004-08-18 16:55:47.000000000 -0400
@@ -153,7 +153,7 @@
int count, int *eof, void *data)
{
struct sysinfo i;
- int len, committed;
+ int len, committed, allowed;
struct page_state ps;
unsigned long inactive;
unsigned long active;
@@ -171,6 +171,8 @@
si_meminfo(&i);
si_swapinfo(&i);
committed = atomic_read(&vm_committed_space);
+ allowed = ((totalram_pages - hugetlb_total_pages())
+ * sysctl_overcommit_ratio / 100) + total_swap_pages;
vmtot = (VMALLOC_END-VMALLOC_START)>>10;
vmi = get_vmalloc_info();
@@ -198,7 +200,9 @@
"Writeback: %8lu kB\n"
"Mapped: %8lu kB\n"
"Slab: %8lu kB\n"
+ "CommitLimit: %8lu kB\n"
"Committed_AS: %8u kB\n"
+ "CommitAvail: %8ld kB\n"
"PageTables: %8lu kB\n"
"VmallocTotal: %8lu kB\n"
"VmallocUsed: %8lu kB\n"
@@ -220,7 +224,9 @@
K(ps.nr_writeback),
K(ps.nr_mapped),
K(ps.nr_slab),
+ K(allowed),
K(committed),
+ K(allowed - committed),
K(ps.nr_page_table_pages),
vmtot,
vmi.used,