diff options
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/memcontrol.h | 8 | ||||
-rw-r--r-- | include/linux/oom.h | 14 | ||||
-rw-r--r-- | include/linux/sched.h | 3 |
3 files changed, 23 insertions, 2 deletions
diff --git a/include/linux/memcontrol.h b/include/linux/memcontrol.h index 9f1afd361583..73564cac38c7 100644 --- a/include/linux/memcontrol.h +++ b/include/linux/memcontrol.h | |||
@@ -125,6 +125,8 @@ void mem_cgroup_update_file_mapped(struct page *page, int val); | |||
125 | unsigned long mem_cgroup_soft_limit_reclaim(struct zone *zone, int order, | 125 | unsigned long mem_cgroup_soft_limit_reclaim(struct zone *zone, int order, |
126 | gfp_t gfp_mask, int nid, | 126 | gfp_t gfp_mask, int nid, |
127 | int zid); | 127 | int zid); |
128 | u64 mem_cgroup_get_limit(struct mem_cgroup *mem); | ||
129 | |||
128 | #else /* CONFIG_CGROUP_MEM_RES_CTLR */ | 130 | #else /* CONFIG_CGROUP_MEM_RES_CTLR */ |
129 | struct mem_cgroup; | 131 | struct mem_cgroup; |
130 | 132 | ||
@@ -304,6 +306,12 @@ unsigned long mem_cgroup_soft_limit_reclaim(struct zone *zone, int order, | |||
304 | return 0; | 306 | return 0; |
305 | } | 307 | } |
306 | 308 | ||
309 | static inline | ||
310 | u64 mem_cgroup_get_limit(struct mem_cgroup *mem) | ||
311 | { | ||
312 | return 0; | ||
313 | } | ||
314 | |||
307 | #endif /* CONFIG_CGROUP_MEM_CONT */ | 315 | #endif /* CONFIG_CGROUP_MEM_CONT */ |
308 | 316 | ||
309 | #endif /* _LINUX_MEMCONTROL_H */ | 317 | #endif /* _LINUX_MEMCONTROL_H */ |
diff --git a/include/linux/oom.h b/include/linux/oom.h index 40e5e3a6bc20..73b8d7b6dd19 100644 --- a/include/linux/oom.h +++ b/include/linux/oom.h | |||
@@ -1,14 +1,24 @@ | |||
1 | #ifndef __INCLUDE_LINUX_OOM_H | 1 | #ifndef __INCLUDE_LINUX_OOM_H |
2 | #define __INCLUDE_LINUX_OOM_H | 2 | #define __INCLUDE_LINUX_OOM_H |
3 | 3 | ||
4 | /* /proc/<pid>/oom_adj set to -17 protects from the oom-killer */ | 4 | /* |
5 | * /proc/<pid>/oom_adj set to -17 protects from the oom-killer | ||
6 | */ | ||
5 | #define OOM_DISABLE (-17) | 7 | #define OOM_DISABLE (-17) |
6 | /* inclusive */ | 8 | /* inclusive */ |
7 | #define OOM_ADJUST_MIN (-16) | 9 | #define OOM_ADJUST_MIN (-16) |
8 | #define OOM_ADJUST_MAX 15 | 10 | #define OOM_ADJUST_MAX 15 |
9 | 11 | ||
12 | /* | ||
13 | * /proc/<pid>/oom_score_adj set to OOM_SCORE_ADJ_MIN disables oom killing for | ||
14 | * pid. | ||
15 | */ | ||
16 | #define OOM_SCORE_ADJ_MIN (-1000) | ||
17 | #define OOM_SCORE_ADJ_MAX 1000 | ||
18 | |||
10 | #ifdef __KERNEL__ | 19 | #ifdef __KERNEL__ |
11 | 20 | ||
21 | #include <linux/sched.h> | ||
12 | #include <linux/types.h> | 22 | #include <linux/types.h> |
13 | #include <linux/nodemask.h> | 23 | #include <linux/nodemask.h> |
14 | 24 | ||
@@ -27,6 +37,8 @@ enum oom_constraint { | |||
27 | CONSTRAINT_MEMCG, | 37 | CONSTRAINT_MEMCG, |
28 | }; | 38 | }; |
29 | 39 | ||
40 | extern unsigned int oom_badness(struct task_struct *p, struct mem_cgroup *mem, | ||
41 | const nodemask_t *nodemask, unsigned long totalpages); | ||
30 | extern int try_set_zonelist_oom(struct zonelist *zonelist, gfp_t gfp_flags); | 42 | extern int try_set_zonelist_oom(struct zonelist *zonelist, gfp_t gfp_flags); |
31 | extern void clear_zonelist_oom(struct zonelist *zonelist, gfp_t gfp_flags); | 43 | extern void clear_zonelist_oom(struct zonelist *zonelist, gfp_t gfp_flags); |
32 | 44 | ||
diff --git a/include/linux/sched.h b/include/linux/sched.h index 9591907c4f79..ce160d68f5e7 100644 --- a/include/linux/sched.h +++ b/include/linux/sched.h | |||
@@ -621,7 +621,8 @@ struct signal_struct { | |||
621 | struct tty_audit_buf *tty_audit_buf; | 621 | struct tty_audit_buf *tty_audit_buf; |
622 | #endif | 622 | #endif |
623 | 623 | ||
624 | int oom_adj; /* OOM kill score adjustment (bit shift) */ | 624 | int oom_adj; /* OOM kill score adjustment (bit shift) */ |
625 | int oom_score_adj; /* OOM kill score adjustment */ | ||
625 | }; | 626 | }; |
626 | 627 | ||
627 | /* Context switch must be unlocked if interrupts are to be enabled */ | 628 | /* Context switch must be unlocked if interrupts are to be enabled */ |