From: Christoph Lameter Do not display HIGHMEM memory sizes if CONFIG_HIGHMEM is not set. Make HIGHMEM dependent texts and make display of highmem counters optional Some texts are depending on CONFIG_HIGHMEM. Remove those strings and remove the display of highmem counter values if CONFIG_HIGHMEM is not set. Signed-off-by: Christoph Lameter Signed-off-by: Andrew Morton --- drivers/base/node.c | 4 ++++ fs/proc/proc_misc.c | 4 ++++ mm/page_alloc.c | 4 ++++ 3 files changed, 12 insertions(+) diff -puN drivers/base/node.c~reduce-max_nr_zones-make-display-of-highmem-counters-conditional-on-config_highmem drivers/base/node.c --- a/drivers/base/node.c~reduce-max_nr_zones-make-display-of-highmem-counters-conditional-on-config_highmem +++ a/drivers/base/node.c @@ -54,10 +54,12 @@ static ssize_t node_read_meminfo(struct "Node %d MemUsed: %8lu kB\n" "Node %d Active: %8lu kB\n" "Node %d Inactive: %8lu kB\n" +#ifdef CONFIG_HIGHMEM "Node %d HighTotal: %8lu kB\n" "Node %d HighFree: %8lu kB\n" "Node %d LowTotal: %8lu kB\n" "Node %d LowFree: %8lu kB\n" +#endif "Node %d Dirty: %8lu kB\n" "Node %d Writeback: %8lu kB\n" "Node %d FilePages: %8lu kB\n" @@ -72,10 +74,12 @@ static ssize_t node_read_meminfo(struct nid, K(i.totalram - i.freeram), nid, K(active), nid, K(inactive), +#ifdef CONFIG_HIGHMEM nid, K(i.totalhigh), nid, K(i.freehigh), nid, K(i.totalram - i.totalhigh), nid, K(i.freeram - i.freehigh), +#endif nid, K(node_page_state(nid, NR_FILE_DIRTY)), nid, K(node_page_state(nid, NR_WRITEBACK)), nid, K(node_page_state(nid, NR_FILE_PAGES)), diff -puN fs/proc/proc_misc.c~reduce-max_nr_zones-make-display-of-highmem-counters-conditional-on-config_highmem fs/proc/proc_misc.c --- a/fs/proc/proc_misc.c~reduce-max_nr_zones-make-display-of-highmem-counters-conditional-on-config_highmem +++ a/fs/proc/proc_misc.c @@ -157,10 +157,12 @@ static int meminfo_read_proc(char *page, "SwapCached: %8lu kB\n" "Active: %8lu kB\n" "Inactive: %8lu kB\n" +#ifdef CONFIG_HIGHMEM "HighTotal: %8lu kB\n" "HighFree: %8lu kB\n" "LowTotal: %8lu kB\n" "LowFree: %8lu kB\n" +#endif "SwapTotal: %8lu kB\n" "SwapFree: %8lu kB\n" "Dirty: %8lu kB\n" @@ -183,10 +185,12 @@ static int meminfo_read_proc(char *page, K(total_swapcache_pages), K(active), K(inactive), +#ifdef CONFIG_HIGHMEM K(i.totalhigh), K(i.freehigh), K(i.totalram-i.totalhigh), K(i.freeram-i.freehigh), +#endif K(i.totalswap), K(i.freeswap), K(global_page_state(NR_FILE_DIRTY)), diff -puN mm/page_alloc.c~reduce-max_nr_zones-make-display-of-highmem-counters-conditional-on-config_highmem mm/page_alloc.c --- a/mm/page_alloc.c~reduce-max_nr_zones-make-display-of-highmem-counters-conditional-on-config_highmem +++ a/mm/page_alloc.c @@ -1281,9 +1281,13 @@ void show_free_areas(void) get_zone_counts(&active, &inactive, &free); +#ifdef CONFIG_HIGHMEM printk("Free pages: %11ukB (%ukB HighMem)\n", K(nr_free_pages()), K(nr_free_highpages())); +#else + printk("Free pages: %11ukB\n", K(nr_free_pages())); +#endif printk("Active:%lu inactive:%lu dirty:%lu writeback:%lu " "unstable:%lu free:%u slab:%lu mapped:%lu pagetables:%lu\n", _