#include <linux/blkdev.h>
#include <linux/cma.h>
#include <linux/cpuset.h>
#include <linux/highmem.h>
#include <linux/hugetlb.h>
#include <linux/mm.h>
#include <linux/mmzone.h>
#include <linux/swap.h>
#include <linux/vmstat.h>
#include "internal.h"
#include "swap.h"
atomic_long_t _totalram_pages __read_mostly;
EXPORT_SYMBOL(…);
unsigned long totalreserve_pages __read_mostly;
unsigned long totalcma_pages __read_mostly;
static inline void show_node(struct zone *zone)
{ … }
long si_mem_available(void)
{ … }
EXPORT_SYMBOL_GPL(…);
void si_meminfo(struct sysinfo *val)
{ … }
EXPORT_SYMBOL(…);
#ifdef CONFIG_NUMA
void si_meminfo_node(struct sysinfo *val, int nid)
{ … }
#endif
static bool show_mem_node_skip(unsigned int flags, int nid, nodemask_t *nodemask)
{ … }
static void show_migration_types(unsigned char type)
{ … }
static bool node_has_managed_zones(pg_data_t *pgdat, int max_zone_idx)
{ … }
static void show_free_areas(unsigned int filter, nodemask_t *nodemask, int max_zone_idx)
{ … }
void __show_mem(unsigned int filter, nodemask_t *nodemask, int max_zone_idx)
{ … }