ddk: v4.5.7
git-svn-id: svn://kolibrios.org@6936 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
54
drivers/include/linux/mmzone.h
Normal file
54
drivers/include/linux/mmzone.h
Normal file
@@ -0,0 +1,54 @@
|
||||
#ifndef _LINUX_MMZONE_H
|
||||
#define _LINUX_MMZONE_H
|
||||
|
||||
#include <linux/spinlock.h>
|
||||
#include <linux/list.h>
|
||||
#include <linux/wait.h>
|
||||
#include <linux/bitops.h>
|
||||
#include <linux/atomic.h>
|
||||
|
||||
/* Free memory management - zoned buddy allocator. */
|
||||
#ifndef CONFIG_FORCE_MAX_ZONEORDER
|
||||
#define MAX_ORDER 11
|
||||
#else
|
||||
#define MAX_ORDER CONFIG_FORCE_MAX_ZONEORDER
|
||||
#endif
|
||||
#define MAX_ORDER_NR_PAGES (1 << (MAX_ORDER - 1))
|
||||
|
||||
/*
|
||||
* PAGE_ALLOC_COSTLY_ORDER is the order at which allocations are deemed
|
||||
* costly to service. That is between allocation orders which should
|
||||
* coalesce naturally under reasonable reclaim pressure and those which
|
||||
* will not.
|
||||
*/
|
||||
#define PAGE_ALLOC_COSTLY_ORDER 3
|
||||
|
||||
enum {
|
||||
MIGRATE_UNMOVABLE,
|
||||
MIGRATE_MOVABLE,
|
||||
MIGRATE_RECLAIMABLE,
|
||||
MIGRATE_PCPTYPES, /* the number of types on the pcp lists */
|
||||
MIGRATE_HIGHATOMIC = MIGRATE_PCPTYPES,
|
||||
#ifdef CONFIG_CMA
|
||||
/*
|
||||
* MIGRATE_CMA migration type is designed to mimic the way
|
||||
* ZONE_MOVABLE works. Only movable pages can be allocated
|
||||
* from MIGRATE_CMA pageblocks and page allocator never
|
||||
* implicitly change migration type of MIGRATE_CMA pageblock.
|
||||
*
|
||||
* The way to use it is to change migratetype of a range of
|
||||
* pageblocks to MIGRATE_CMA which can be done by
|
||||
* __free_pageblock_cma() function. What is important though
|
||||
* is that a range of pageblocks must be aligned to
|
||||
* MAX_ORDER_NR_PAGES should biggest page be bigger then
|
||||
* a single pageblock.
|
||||
*/
|
||||
MIGRATE_CMA,
|
||||
#endif
|
||||
#ifdef CONFIG_MEMORY_ISOLATION
|
||||
MIGRATE_ISOLATE, /* can't allocate from here */
|
||||
#endif
|
||||
MIGRATE_TYPES
|
||||
};
|
||||
|
||||
#endif /* _LINUX_MMZONE_H */
|
Reference in New Issue
Block a user