[PATCH v4 0/9] drm: fdinfo memory stats

From: Rob Clark
Date: Mon May 15 2023 - 10:30:50 EST

From: Rob Clark <robdclark@xxxxxxxxxxxx>

Similar motivation to other similar recent attempt[1]. But with an
attempt to have some shared code for this. As well as documentation.

It is probably a bit UMA-centric, I guess devices with VRAM might want
some placement stats as well. But this seems like a reasonable start.

Basic gputop support: https://patchwork.freedesktop.org/series/116236/
And already nvtop support: https://github.com/Syllo/nvtop/pull/204

I've combined the separate series to add comm/cmdline override onto
the end of this, simply out of convenience (they would otherwise
conflict in a bunch of places).

v2: Extend things to allow for multiple regions other than just system
"memory", make drm_show_memory_stats() a helper so that, drivers
can use it or not based on their needs (but in either case, re-
use drm_print_memory_stats()
v3: Docs fixes
v4: use u64 for drm_memory_stats, small docs update and collected
Tvrtko's a-b

[1] https://patchwork.freedesktop.org/series/112397/

Rob Clark (9):
drm/docs: Fix usage stats typos
drm: Add common fdinfo helper
drm/msm: Switch to fdinfo helper
drm/amdgpu: Switch to fdinfo helper
drm: Add fdinfo memory stats
drm/msm: Add memory stats to fdinfo
drm/doc: Relax fdinfo string constraints
drm/fdinfo: Add comm/cmdline override fields
drm/msm: Wire up comm/cmdline override for fdinfo

Documentation/gpu/drm-usage-stats.rst | 101 ++++++++++----
drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | 3 +-
drivers/gpu/drm/amd/amdgpu/amdgpu_fdinfo.c | 16 +--
drivers/gpu/drm/amd/amdgpu/amdgpu_fdinfo.h | 2 +-
drivers/gpu/drm/drm_file.c | 147 +++++++++++++++++++++
drivers/gpu/drm/msm/adreno/adreno_gpu.c | 24 +++-
drivers/gpu/drm/msm/msm_drv.c | 15 ++-
drivers/gpu/drm/msm/msm_gem.c | 15 +++
drivers/gpu/drm/msm/msm_gpu.c | 2 -
drivers/gpu/drm/msm/msm_gpu.h | 10 ++
include/drm/drm_drv.h | 7 +
include/drm/drm_file.h | 51 +++++++
include/drm/drm_gem.h | 32 +++++
13 files changed, 378 insertions(+), 47 deletions(-)