1 #ifndef __INCLUDE_LINUX_OOM_H
2 #define __INCLUDE_LINUX_OOM_H
4 /* /proc/<pid>/oom_adj set to -17 protects from the oom-killer */
5 #define OOM_DISABLE (-17)
7 #define OOM_ADJUST_MIN (-16)
8 #define OOM_ADJUST_MAX 15
12 #include <linux/types.h>
13 #include <linux/nodemask.h>
16 struct notifier_block
;
19 * Types of limitations to the nodes from which allocations may occur
24 CONSTRAINT_MEMORY_POLICY
,
28 extern int try_set_zonelist_oom(struct zonelist
*zonelist
, gfp_t gfp_flags
);
29 extern void clear_zonelist_oom(struct zonelist
*zonelist
, gfp_t gfp_flags
);
31 extern void out_of_memory(struct zonelist
*zonelist
, gfp_t gfp_mask
,
32 int order
, nodemask_t
*mask
);
33 extern int register_oom_notifier(struct notifier_block
*nb
);
34 extern int unregister_oom_notifier(struct notifier_block
*nb
);
36 extern bool oom_killer_disabled
;
38 static inline void oom_killer_disable(void)
40 oom_killer_disabled
= true;
43 static inline void oom_killer_enable(void)
45 oom_killer_disabled
= false;
49 extern int sysctl_oom_dump_tasks
;
50 extern int sysctl_oom_kill_allocating_task
;
51 extern int sysctl_panic_on_oom
;
52 #endif /* __KERNEL__*/
53 #endif /* _INCLUDE_LINUX_OOM_H */