aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c
diff options
context:
space:
mode:
authorTejun Heo <[email protected]>2016-01-21 20:31:11 +0000
committerTejun Heo <[email protected]>2016-01-22 15:42:57 +0000
commitaa226ff4a1ce79f229c6b7a4c0a14e17fececd01 (patch)
tree1db4c5f20ffafca177de0bbe26beddcc60e26f93 /drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c
parentcpuset: make mm migration asynchronous (diff)
downloadkernel-aa226ff4a1ce79f229c6b7a4c0a14e17fececd01.tar.gz
kernel-aa226ff4a1ce79f229c6b7a4c0a14e17fececd01.zip
cgroup: make sure a parent css isn't offlined before its children
There are three subsystem callbacks in css shutdown path - css_offline(), css_released() and css_free(). Except for css_released(), cgroup core didn't guarantee the order of invocation. css_offline() or css_free() could be called on a parent css before its children. This behavior is unexpected and led to bugs in cpu and memory controller. This patch updates offline path so that a parent css is never offlined before its children. Each css keeps online_cnt which reaches zero iff itself and all its children are offline and offline_css() is invoked only after online_cnt reaches zero. This fixes the memory controller bug and allows the fix for cpu controller. Signed-off-by: Tejun Heo <[email protected]> Reported-and-tested-by: Christian Borntraeger <[email protected]> Reported-by: Brian Christiansen <[email protected]> Link: http://lkml.kernel.org/g/[email protected] Link: http://lkml.kernel.org/g/CAKB58ikDkzc8REt31WBkD99+hxNzjK4+FBmhkgS+NVrC9vjMSg@mail.gmail.com Cc: Heiko Carstens <[email protected]> Cc: Peter Zijlstra <[email protected]> Cc: [email protected]
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c')
0 files changed, 0 insertions, 0 deletions