|
@@ -1034,11 +1034,6 @@ static void memcg_check_events(struct mem_cgroup *memcg, struct page *page)
|
|
|
preempt_enable();
|
|
|
}
|
|
|
|
|
|
-static inline struct mem_cgroup *mem_cgroup_from_cont(struct cgroup *cont)
|
|
|
-{
|
|
|
- return mem_cgroup_from_css(cgroup_css(cont, mem_cgroup_subsys_id));
|
|
|
-}
|
|
|
-
|
|
|
struct mem_cgroup *mem_cgroup_from_task(struct task_struct *p)
|
|
|
{
|
|
|
/*
|
|
@@ -5620,10 +5615,10 @@ static void mem_cgroup_oom_notify(struct mem_cgroup *memcg)
|
|
|
mem_cgroup_oom_notify_cb(iter);
|
|
|
}
|
|
|
|
|
|
-static int mem_cgroup_usage_register_event(struct cgroup *cgrp,
|
|
|
+static int mem_cgroup_usage_register_event(struct cgroup_subsys_state *css,
|
|
|
struct cftype *cft, struct eventfd_ctx *eventfd, const char *args)
|
|
|
{
|
|
|
- struct mem_cgroup *memcg = mem_cgroup_from_cont(cgrp);
|
|
|
+ struct mem_cgroup *memcg = mem_cgroup_from_css(css);
|
|
|
struct mem_cgroup_thresholds *thresholds;
|
|
|
struct mem_cgroup_threshold_ary *new;
|
|
|
enum res_type type = MEMFILE_TYPE(cft->private);
|
|
@@ -5703,10 +5698,10 @@ unlock:
|
|
|
return ret;
|
|
|
}
|
|
|
|
|
|
-static void mem_cgroup_usage_unregister_event(struct cgroup *cgrp,
|
|
|
+static void mem_cgroup_usage_unregister_event(struct cgroup_subsys_state *css,
|
|
|
struct cftype *cft, struct eventfd_ctx *eventfd)
|
|
|
{
|
|
|
- struct mem_cgroup *memcg = mem_cgroup_from_cont(cgrp);
|
|
|
+ struct mem_cgroup *memcg = mem_cgroup_from_css(css);
|
|
|
struct mem_cgroup_thresholds *thresholds;
|
|
|
struct mem_cgroup_threshold_ary *new;
|
|
|
enum res_type type = MEMFILE_TYPE(cft->private);
|
|
@@ -5782,10 +5777,10 @@ unlock:
|
|
|
mutex_unlock(&memcg->thresholds_lock);
|
|
|
}
|
|
|
|
|
|
-static int mem_cgroup_oom_register_event(struct cgroup *cgrp,
|
|
|
+static int mem_cgroup_oom_register_event(struct cgroup_subsys_state *css,
|
|
|
struct cftype *cft, struct eventfd_ctx *eventfd, const char *args)
|
|
|
{
|
|
|
- struct mem_cgroup *memcg = mem_cgroup_from_cont(cgrp);
|
|
|
+ struct mem_cgroup *memcg = mem_cgroup_from_css(css);
|
|
|
struct mem_cgroup_eventfd_list *event;
|
|
|
enum res_type type = MEMFILE_TYPE(cft->private);
|
|
|
|
|
@@ -5807,10 +5802,10 @@ static int mem_cgroup_oom_register_event(struct cgroup *cgrp,
|
|
|
return 0;
|
|
|
}
|
|
|
|
|
|
-static void mem_cgroup_oom_unregister_event(struct cgroup *cgrp,
|
|
|
+static void mem_cgroup_oom_unregister_event(struct cgroup_subsys_state *css,
|
|
|
struct cftype *cft, struct eventfd_ctx *eventfd)
|
|
|
{
|
|
|
- struct mem_cgroup *memcg = mem_cgroup_from_cont(cgrp);
|
|
|
+ struct mem_cgroup *memcg = mem_cgroup_from_css(css);
|
|
|
struct mem_cgroup_eventfd_list *ev, *tmp;
|
|
|
enum res_type type = MEMFILE_TYPE(cft->private);
|
|
|
|