blob: 792c6eb442326790b72759d7ca5e8cd433f838af [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001#include <linux/kernel.h>
2#include <linux/mm.h>
3#include <linux/swap.h>
4
5void show_mem(void)
6{
Yoichi Yuasab4819b52005-06-25 14:54:31 -07007#ifndef CONFIG_NEED_MULTIPLE_NODES /* XXX(hch): later.. */
Linus Torvalds1da177e2005-04-16 15:20:36 -07008 int pfn, total = 0, reserved = 0;
9 int shared = 0, cached = 0;
10 int highmem = 0;
11 struct page *page;
12
13 printk("Mem-info:\n");
14 show_free_areas();
15 printk("Free swap: %6ldkB\n", nr_swap_pages<<(PAGE_SHIFT-10));
16 pfn = max_mapnr;
17 while (pfn-- > 0) {
18 page = pfn_to_page(pfn);
19 total++;
20 if (PageHighMem(page))
21 highmem++;
22 if (PageReserved(page))
23 reserved++;
24 else if (PageSwapCache(page))
25 cached++;
26 else if (page_count(page))
27 shared += page_count(page) - 1;
28 }
29 printk("%d pages of RAM\n", total);
30 printk("%d pages of HIGHMEM\n",highmem);
31 printk("%d reserved pages\n",reserved);
32 printk("%d pages shared\n",shared);
33 printk("%d pages swap cached\n",cached);
34#endif
35}