cgroup: simplify threadgroup locking
authorTejun Heo <tj@kernel.org>
Wed, 16 Sep 2015 17:03:02 +0000 (13:03 -0400)
committerTejun Heo <tj@kernel.org>
Wed, 16 Sep 2015 17:03:46 +0000 (13:03 -0400)
commit3014dde762f618fbcfe899f9ce9e929a2e5aa6dd
tree56e6df9207ba153da5cc9e6b989b00a40477dff1
parent1ed1328792ff46e4bb86a3d7f7be2971f4549f6c
cgroup: simplify threadgroup locking

Note: This commit was originally committed as b5ba75b5fc0e but got
      reverted by f9f9e7b77614 due to the performance regression from
      the percpu_rwsem write down/up operations added to cgroup task
      migration path.  percpu_rwsem changes which alleviate the
      performance issue are pending for v4.4-rc1 merge window.
      Re-apply.

Now that threadgroup locking is made global, code paths around it can
be simplified.

* lock-verify-unlock-retry dancing removed from __cgroup_procs_write().

* Race protection against de_thread() removed from
  cgroup_update_dfl_csses().

Signed-off-by: Tejun Heo <tj@kernel.org>
Link: http://lkml.kernel.org/g/55F8097A.7000206@de.ibm.com
kernel/cgroup.c