This one is a bit more controveral as it may break stupid userlevel
programs: remove the 'Buffers' field from /proc/meminfo and make
the Cached field show the full pagecache size instead of subtracting
the block-device backed pages.
All /proc/meminfo-using programs I have (free, top) still work fine.
{
struct sysinfo i;
int len;
- int pg_size ;
struct page_state ps;
get_page_state(&ps);
#define K(x) ((x) << (PAGE_SHIFT - 10))
si_meminfo(&i);
si_swapinfo(&i);
- pg_size = get_page_cache_size() - i.bufferram ;
/*
* Tagged format, for easy grepping and expansion.
"MemTotal: %8lu kB\n"
"MemFree: %8lu kB\n"
"MemShared: %8lu kB\n"
- "Buffers: %8lu kB\n"
"Cached: %8lu kB\n"
"SwapCached: %8lu kB\n"
"Active: %8u kB\n"
K(i.totalram),
K(i.freeram),
K(i.sharedram),
- K(i.bufferram),
- K(pg_size - swapper_space.nrpages),
+ K(ps.nr_pagecache-swapper_space.nrpages),
K(swapper_space.nrpages),
K(nr_active_pages),
K(nr_inactive_pages),