diff options
author | Chris Wilson <[email protected]> | 2020-06-19 20:40:38 +0100 |
---|---|---|
committer | Chris Wilson <[email protected]> | 2020-06-30 19:36:16 +0100 |
commit | 040e123c0b7305a490adb4168b459c342ae7e9b2 (patch) | |
tree | 4229fa52c289e0ae6b703192a138f6a181c701f4 /drivers/gpu/drm/amd/amdgpu/amdgpu_object.c | |
parent | f6a7d3952cbed2c1e07d945dbb36f5c34200e9c1 (diff) |
drm/i915/gem: Avoid kmalloc under i915->mm_lock
Rearrange the allocation of the mm_struct registration to avoid
allocating underneath the i915->mm_lock, so that we avoid tainting the
lock (and in turn many other locks that may be held as i915->mm_lock is
taken, and those locks we may want on the free [shrinker] paths). In
doing so, we convert the lookup to be RCU protected by courtesy of
converting the free-worker to be an rcu_work.
v2: Remember to use hash_rcu variants to protect the list iteration from
concurrent add/del.
Signed-off-by: Chris Wilson <[email protected]>
Reviewed-by: Matthew Auld <[email protected]>
Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_object.c')
0 files changed, 0 insertions, 0 deletions