oom: add per-zone locking
[pandora-kernel.git] / include / linux / oom.h
1 #ifndef __INCLUDE_LINUX_OOM_H
2 #define __INCLUDE_LINUX_OOM_H
3
4 #include <linux/sched.h>
5
6 /* /proc/<pid>/oom_adj set to -17 protects from the oom-killer */
7 #define OOM_DISABLE (-17)
8 /* inclusive */
9 #define OOM_ADJUST_MIN (-16)
10 #define OOM_ADJUST_MAX 15
11
12 #ifdef __KERNEL__
13
14 /*
15  * Types of limitations to the nodes from which allocations may occur
16  */
17 enum oom_constraint {
18         CONSTRAINT_NONE,
19         CONSTRAINT_CPUSET,
20         CONSTRAINT_MEMORY_POLICY,
21 };
22
23 extern int try_set_zone_oom(struct zonelist *zonelist);
24 extern void clear_zonelist_oom(struct zonelist *zonelist);
25
26 extern void out_of_memory(struct zonelist *zonelist, gfp_t gfp_mask, int order);
27 extern int register_oom_notifier(struct notifier_block *nb);
28 extern int unregister_oom_notifier(struct notifier_block *nb);
29
30 #endif /* __KERNEL__*/
31 #endif /* _INCLUDE_LINUX_OOM_H */