diff options
author | David S. Miller <davem@davemloft.net> | 2013-10-23 16:28:39 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2013-10-23 16:49:34 -0400 |
commit | c3fa32b9764dc45dcf8a2231b1c110abc4a63e0b (patch) | |
tree | 6cf2896a77b65bec64284681e1c3851eb3263e09 /kernel/cgroup.c | |
parent | 34d92d5315b64a3e5292b7e9511c1bb617227fb6 (diff) | |
parent | 320437af954cbe66478f1f5e8b34cb5a8d072191 (diff) |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Conflicts:
drivers/net/usb/qmi_wwan.c
include/net/dst.h
Trivial merge conflicts, both were overlapping changes.
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'kernel/cgroup.c')
-rw-r--r-- | kernel/cgroup.c | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/kernel/cgroup.c b/kernel/cgroup.c index 2418b6e71a85..8bd9cfdc70d7 100644 --- a/kernel/cgroup.c +++ b/kernel/cgroup.c | |||
@@ -2039,7 +2039,7 @@ static int cgroup_attach_task(struct cgroup *cgrp, struct task_struct *tsk, | |||
2039 | 2039 | ||
2040 | /* @tsk either already exited or can't exit until the end */ | 2040 | /* @tsk either already exited or can't exit until the end */ |
2041 | if (tsk->flags & PF_EXITING) | 2041 | if (tsk->flags & PF_EXITING) |
2042 | continue; | 2042 | goto next; |
2043 | 2043 | ||
2044 | /* as per above, nr_threads may decrease, but not increase. */ | 2044 | /* as per above, nr_threads may decrease, but not increase. */ |
2045 | BUG_ON(i >= group_size); | 2045 | BUG_ON(i >= group_size); |
@@ -2047,7 +2047,7 @@ static int cgroup_attach_task(struct cgroup *cgrp, struct task_struct *tsk, | |||
2047 | ent.cgrp = task_cgroup_from_root(tsk, root); | 2047 | ent.cgrp = task_cgroup_from_root(tsk, root); |
2048 | /* nothing to do if this task is already in the cgroup */ | 2048 | /* nothing to do if this task is already in the cgroup */ |
2049 | if (ent.cgrp == cgrp) | 2049 | if (ent.cgrp == cgrp) |
2050 | continue; | 2050 | goto next; |
2051 | /* | 2051 | /* |
2052 | * saying GFP_ATOMIC has no effect here because we did prealloc | 2052 | * saying GFP_ATOMIC has no effect here because we did prealloc |
2053 | * earlier, but it's good form to communicate our expectations. | 2053 | * earlier, but it's good form to communicate our expectations. |
@@ -2055,7 +2055,7 @@ static int cgroup_attach_task(struct cgroup *cgrp, struct task_struct *tsk, | |||
2055 | retval = flex_array_put(group, i, &ent, GFP_ATOMIC); | 2055 | retval = flex_array_put(group, i, &ent, GFP_ATOMIC); |
2056 | BUG_ON(retval != 0); | 2056 | BUG_ON(retval != 0); |
2057 | i++; | 2057 | i++; |
2058 | 2058 | next: | |
2059 | if (!threadgroup) | 2059 | if (!threadgroup) |
2060 | break; | 2060 | break; |
2061 | } while_each_thread(leader, tsk); | 2061 | } while_each_thread(leader, tsk); |
@@ -3188,11 +3188,9 @@ css_next_descendant_post(struct cgroup_subsys_state *pos, | |||
3188 | 3188 | ||
3189 | WARN_ON_ONCE(!rcu_read_lock_held()); | 3189 | WARN_ON_ONCE(!rcu_read_lock_held()); |
3190 | 3190 | ||
3191 | /* if first iteration, visit the leftmost descendant */ | 3191 | /* if first iteration, visit leftmost descendant which may be @root */ |
3192 | if (!pos) { | 3192 | if (!pos) |
3193 | next = css_leftmost_descendant(root); | 3193 | return css_leftmost_descendant(root); |
3194 | return next != root ? next : NULL; | ||
3195 | } | ||
3196 | 3194 | ||
3197 | /* if we visited @root, we're done */ | 3195 | /* if we visited @root, we're done */ |
3198 | if (pos == root) | 3196 | if (pos == root) |