diff options
author | Tejun Heo <tj@kernel.org> | 2015-11-05 21:46:09 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2015-11-05 22:34:48 -0500 |
commit | 626ebc4100285be56fe3546f29b6afeb36b6871a (patch) | |
tree | c36a6c10a00ed6169d245c1589cb24ce7e2a2f28 /include/linux/memcontrol.h | |
parent | 55e1ceaf2586ab11aafba798a6b9499dd7c14441 (diff) |
memcg: flatten task_struct->memcg_oom
task_struct->memcg_oom is a sub-struct containing fields which are used
for async memcg oom handling. Most task_struct fields aren't packaged
this way and it can lead to unnecessary alignment paddings. This patch
flattens it.
* task.memcg_oom.memcg -> task.memcg_in_oom
* task.memcg_oom.gfp_mask -> task.memcg_oom_gfp_mask
* task.memcg_oom.order -> task.memcg_oom_order
* task.memcg_oom.may_oom -> task.memcg_may_oom
In addition, task.memcg_may_oom is relocated to where other bitfields are
which reduces the size of task_struct.
Signed-off-by: Tejun Heo <tj@kernel.org>
Acked-by: Michal Hocko <mhocko@suse.com>
Reviewed-by: Vladimir Davydov <vdavydov@parallels.com>
Acked-by: Johannes Weiner <hannes@cmpxchg.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'include/linux/memcontrol.h')
-rw-r--r-- | include/linux/memcontrol.h | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/include/linux/memcontrol.h b/include/linux/memcontrol.h index 3e3318ddfc0e..56174c7199ee 100644 --- a/include/linux/memcontrol.h +++ b/include/linux/memcontrol.h | |||
@@ -406,19 +406,19 @@ void mem_cgroup_print_oom_info(struct mem_cgroup *memcg, | |||
406 | 406 | ||
407 | static inline void mem_cgroup_oom_enable(void) | 407 | static inline void mem_cgroup_oom_enable(void) |
408 | { | 408 | { |
409 | WARN_ON(current->memcg_oom.may_oom); | 409 | WARN_ON(current->memcg_may_oom); |
410 | current->memcg_oom.may_oom = 1; | 410 | current->memcg_may_oom = 1; |
411 | } | 411 | } |
412 | 412 | ||
413 | static inline void mem_cgroup_oom_disable(void) | 413 | static inline void mem_cgroup_oom_disable(void) |
414 | { | 414 | { |
415 | WARN_ON(!current->memcg_oom.may_oom); | 415 | WARN_ON(!current->memcg_may_oom); |
416 | current->memcg_oom.may_oom = 0; | 416 | current->memcg_may_oom = 0; |
417 | } | 417 | } |
418 | 418 | ||
419 | static inline bool task_in_memcg_oom(struct task_struct *p) | 419 | static inline bool task_in_memcg_oom(struct task_struct *p) |
420 | { | 420 | { |
421 | return p->memcg_oom.memcg; | 421 | return p->memcg_in_oom; |
422 | } | 422 | } |
423 | 423 | ||
424 | bool mem_cgroup_oom_synchronize(bool wait); | 424 | bool mem_cgroup_oom_synchronize(bool wait); |