aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/linux/memcontrol.h8
-rw-r--r--include/linux/oom.h14
-rw-r--r--include/linux/sched.h3
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);
125unsigned long mem_cgroup_soft_limit_reclaim(struct zone *zone, int order, 125unsigned 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);
128u64 mem_cgroup_get_limit(struct mem_cgroup *mem);
129
128#else /* CONFIG_CGROUP_MEM_RES_CTLR */ 130#else /* CONFIG_CGROUP_MEM_RES_CTLR */
129struct mem_cgroup; 131struct 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
309static inline
310u64 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
40extern unsigned int oom_badness(struct task_struct *p, struct mem_cgroup *mem,
41 const nodemask_t *nodemask, unsigned long totalpages);
30extern int try_set_zonelist_oom(struct zonelist *zonelist, gfp_t gfp_flags); 42extern int try_set_zonelist_oom(struct zonelist *zonelist, gfp_t gfp_flags);
31extern void clear_zonelist_oom(struct zonelist *zonelist, gfp_t gfp_flags); 43extern 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 */