blob: a1bdf6966357b6b914d101c7545ef306fa395bdb [file] [log] [blame]
Wu Fengguang1a9b5b72009-12-16 12:19:59 +01001#ifndef LINUX_KERNEL_PAGE_FLAGS_H
2#define LINUX_KERNEL_PAGE_FLAGS_H
3
4/*
5 * Stable page flag bits exported to user space
6 */
7
8#define KPF_LOCKED 0
9#define KPF_ERROR 1
10#define KPF_REFERENCED 2
11#define KPF_UPTODATE 3
12#define KPF_DIRTY 4
13#define KPF_LRU 5
14#define KPF_ACTIVE 6
15#define KPF_SLAB 7
16#define KPF_WRITEBACK 8
17#define KPF_RECLAIM 9
18#define KPF_BUDDY 10
19
20/* 11-20: new additions in 2.6.31 */
21#define KPF_MMAP 11
22#define KPF_ANON 12
23#define KPF_SWAPCACHE 13
24#define KPF_SWAPBACKED 14
25#define KPF_COMPOUND_HEAD 15
26#define KPF_COMPOUND_TAIL 16
27#define KPF_HUGE 17
28#define KPF_UNEVICTABLE 18
29#define KPF_HWPOISON 19
30#define KPF_NOPAGE 20
31
32#define KPF_KSM 21
Naoya Horiguchie873c492012-03-21 16:33:58 -070033#define KPF_THP 22
Wu Fengguang1a9b5b72009-12-16 12:19:59 +010034
Ulrich Drepper9295b7a2012-05-29 15:06:30 -070035#ifdef __KERNEL__
36
Wu Fengguang1a9b5b72009-12-16 12:19:59 +010037/* kernel hacking assistances
38 * WARNING: subject to change, never rely on them!
39 */
40#define KPF_RESERVED 32
41#define KPF_MLOCKED 33
42#define KPF_MAPPEDTODISK 34
43#define KPF_PRIVATE 35
44#define KPF_PRIVATE_2 36
45#define KPF_OWNER_PRIVATE 37
46#define KPF_ARCH 38
47#define KPF_UNCACHED 39
48
Ulrich Drepper9295b7a2012-05-29 15:06:30 -070049#endif /* __KERNEL__ */
50
Wu Fengguang1a9b5b72009-12-16 12:19:59 +010051#endif /* LINUX_KERNEL_PAGE_FLAGS_H */