From: Tvrtko Ursulin <tvrtko.ursulin@xxxxxxxxx> Not so long ago when I sent out my DRM cgroup controller RFC I had some pieces in it which were tracking the real client using a specific drm_file. Christian then suggested that should probably be extracted and improved in the DRM core from the start, which was on his wishlist for a long period. So this mini-series is an attempt at that. First patch is just a logging cleanup, 2nd probably makes sense on it's own since it replaces tracking thread names with progresses which are more meaningful. Third one is where action is. The benefit on it's own is rather small, especially relative to the complication to track it, where it essentially changes the debugfs clients output from: command pid dev master a uid magic Xorg 1744 0 y y 0 0 Xorg 1744 0 n y 0 1 Xorg 1744 0 n y 0 2 Xorg 1744 0 n y 0 3 To something like: command tgid dev master a uid magic Xorg 830 0 y y 0 0 xfce4-session 880 0 n y 0 1 xfwm4 943 0 n y 0 2 neverball 1095 0 n y 0 3 One ugly part is one synchronise_rcu() on the first (hopefully) only fd handover. The latency of that could be improved by further wrapping and kfree_rcu() if desired. Another part I am unsure of is whether master nodes are ever handed over via sockets. I assumed no and exluded them from ownership updates. If they need to be then drm_master_check_perm() would break, I think. So looking for some feedback in this area please. Tvrtko Ursulin (3): drm: Replace DRM_DEBUG with drm_dbg_core in file and ioctl handling drm: Track clients by tgid and not tid drm: Update file owner during use drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c | 6 ++- drivers/gpu/drm/drm_auth.c | 3 +- drivers/gpu/drm/drm_debugfs.c | 12 +++--- drivers/gpu/drm/drm_file.c | 53 ++++++++++++++++++++----- drivers/gpu/drm/drm_ioc32.c | 13 +++--- drivers/gpu/drm/drm_ioctl.c | 28 +++++++------ drivers/gpu/drm/nouveau/nouveau_drm.c | 5 ++- drivers/gpu/drm/vmwgfx/vmwgfx_gem.c | 6 ++- include/drm/drm_file.h | 13 +++++- 9 files changed, 97 insertions(+), 42 deletions(-) -- 2.34.1