Linux Kernel
3.7.1
|
#include <linux/spinlock.h>
#include <linux/list.h>
#include <linux/wait.h>
#include <linux/bitops.h>
#include <linux/cache.h>
#include <linux/threads.h>
#include <linux/numa.h>
#include <linux/init.h>
#include <linux/seqlock.h>
#include <linux/nodemask.h>
#include <linux/pageblock-flags.h>
#include <generated/bounds.h>
#include <linux/atomic.h>
#include <asm/page.h>
#include <linux/memory_hotplug.h>
Go to the source code of this file.
Data Structures | |
struct | free_area |
struct | zone_reclaim_stat |
struct | lruvec |
struct | per_cpu_pages |
struct | per_cpu_pageset |
struct | zone |
struct | zoneref |
struct | zonelist |
struct | pglist_data |
Typedefs | |
typedef unsigned __bitwise__ | isolate_mode_t |
typedef struct pglist_data | pg_data_t |
#define for_each_online_pgdat | ( | pgdat | ) |
for_each_online_pgdat - helper macro to iterate over all online nodes - pointer to a pg_data_t variable
#define for_each_populated_zone | ( | zone | ) |
#define for_each_zone | ( | zone | ) |
#define for_each_zone_zonelist | ( | zone, | |
z, | |||
zlist, | |||
highidx | |||
) | for_each_zone_zonelist_nodemask(zone, z, zlist, highidx, NULL) |
for_each_zone_zonelist - helper macro to iterate over valid zones in a zonelist at or below a given zone index - The current zone in the iterator - The current pointer within zonelist->zones being iterated - The zonelist being iterated - The zone index of the highest zone to return
This iterator iterates though all zones at or below a given zone index.
#define for_each_zone_zonelist_nodemask | ( | zone, | |
z, | |||
zlist, | |||
highidx, | |||
nodemask | |||
) |
for_each_zone_zonelist_nodemask - helper macro to iterate over valid zones in a zonelist at or below a given zone index and within a nodemask - The current zone in the iterator - The current pointer within zonelist->zones being iterated - The zonelist being iterated - The zone index of the highest zone to return - Nodemask allowed by the allocator
This iterator iterates though all zones at or below a given zone index and within a given nodemask
#define high_wmark_pages | ( | z | ) | (z->watermark[WMARK_HIGH]) |
#define ISOLATE_ASYNC_MIGRATE ((__force isolate_mode_t)0x4) |
#define ISOLATE_CLEAN ((__force isolate_mode_t)0x1) |
#define ISOLATE_UNEVICTABLE ((__force isolate_mode_t)0x8) |
#define ISOLATE_UNMAPPED ((__force isolate_mode_t)0x2) |
#define LRU_ALL ((1 << NR_LRU_LISTS) - 1) |
#define LRU_ALL_ANON (BIT(LRU_INACTIVE_ANON) | BIT(LRU_ACTIVE_ANON)) |
#define LRU_ALL_FILE (BIT(LRU_INACTIVE_FILE) | BIT(LRU_ACTIVE_FILE)) |
#define MAX_ZONES_PER_ZONELIST (MAX_NUMNODES * MAX_NR_ZONES) |
#define nid_page_nr | ( | nid, | |
pagenr | |||
) | pgdat_page_nr(NODE_DATA(nid),(pagenr)) |
#define NODE_DATA | ( | nid | ) | (&contig_page_data) |
#define node_end_pfn | ( | nid | ) |
#define node_present_pages | ( | nid | ) | (NODE_DATA(nid)->node_present_pages) |
#define node_spanned_pages | ( | nid | ) | (NODE_DATA(nid)->node_spanned_pages) |
#define node_start_pfn | ( | nid | ) | (NODE_DATA(nid)->node_start_pfn) |
#define pgdat_page_nr | ( | pgdat, | |
pagenr | |||
) | pfn_to_page((pgdat)->node_start_pfn + (pagenr)) |
typedef unsigned __bitwise__ isolate_mode_t |
typedef struct pglist_data pg_data_t |
anonymous enum |
enum lru_list |
enum memmap_context |
enum zone_flags_t |
enum zone_stat_item |
enum zone_type |
enum zone_watermarks |
Definition at line 3588 of file page_alloc.c.
|
read |
int init_currently_empty_zone | ( | struct zone * | zone, |
unsigned long | start_pfn, | ||
unsigned long | size, | ||
enum memmap_context | context | ||
) |
Definition at line 4043 of file page_alloc.c.
int lowmem_reserve_ratio_sysctl_handler | ( | struct ctl_table * | , |
int | , | ||
void __user * | , | ||
size_t * | , | ||
loff_t * | |||
) |
Definition at line 5347 of file page_alloc.c.
int min_free_kbytes_sysctl_handler | ( | struct ctl_table * | , |
int | , | ||
void __user * | , | ||
size_t * | , | ||
loff_t * | |||
) |
|
read |
|
read |
next_zones_zonelist - Returns the next zone at or below highest_zoneidx within the allowed nodemask using a cursor within a zonelist as a starting point - The cursor used as a starting point for the search - The zone index of the highest zone to return - An optional nodemask to filter the zonelist with - The first suitable zone found is returned via this parameter
This function returns the next zone at or below a given zone index that is within the allowed nodemask using a cursor as the starting point for the search. The zoneref returned is a cursor that represents the current zone being examined. It should be advanced by one before calling next_zones_zonelist again.
int percpu_pagelist_fraction_sysctl_handler | ( | struct ctl_table * | , |
int | , | ||
void __user * | , | ||
size_t * | , | ||
loff_t * | |||
) |
Definition at line 5361 of file page_alloc.c.
int sysctl_min_slab_ratio_sysctl_handler | ( | struct ctl_table * | , |
int | , | ||
void __user * | , | ||
size_t * | , | ||
loff_t * | |||
) |
int sysctl_min_unmapped_ratio_sysctl_handler | ( | struct ctl_table * | , |
int | , | ||
void __user * | , | ||
size_t * | , | ||
loff_t * | |||
) |
bool zone_watermark_ok | ( | struct zone * | z, |
int | order, | ||
unsigned long | mark, | ||
int | classzone_idx, | ||
int | alloc_flags | ||
) |
Definition at line 1658 of file page_alloc.c.
bool zone_watermark_ok_safe | ( | struct zone * | z, |
int | order, | ||
unsigned long | mark, | ||
int | classzone_idx, | ||
int | alloc_flags | ||
) |
Definition at line 1665 of file page_alloc.c.
struct pglist_data contig_page_data |
int movable_zone |
char numa_zonelist_order[] |
int page_group_by_mobility_disabled |
int sysctl_lowmem_reserve_ratio[MAX_NR_ZONES-1] |
Definition at line 165 of file page_alloc.c.