|
@@ -315,8 +315,7 @@ void sock_update_memcg(struct sock *sk)
|
|
rcu_read_lock();
|
|
rcu_read_lock();
|
|
memcg = mem_cgroup_from_task(current);
|
|
memcg = mem_cgroup_from_task(current);
|
|
cg_proto = sk->sk_prot->proto_cgroup(memcg);
|
|
cg_proto = sk->sk_prot->proto_cgroup(memcg);
|
|
- if (!mem_cgroup_is_root(memcg) &&
|
|
|
|
- memcg_proto_active(cg_proto) &&
|
|
|
|
|
|
+ if (cg_proto && memcg_proto_active(cg_proto) &&
|
|
css_tryget_online(&memcg->css)) {
|
|
css_tryget_online(&memcg->css)) {
|
|
sk->sk_cgrp = cg_proto;
|
|
sk->sk_cgrp = cg_proto;
|
|
}
|
|
}
|