diff options
author | Rob Clark <robdclark@chromium.org> | 2021-04-05 20:45:28 +0300 |
---|---|---|
committer | Rob Clark <robdclark@chromium.org> | 2021-04-07 21:05:47 +0300 |
commit | f48f356330f7124671b28ddc93a28c492ef05b9f (patch) | |
tree | 2b4a6b93b38c122210fba46b00b32ee1df56f885 /drivers/gpu/drm/msm/msm_gem.c | |
parent | 20d0ae2f8c72e3603c50844c4f8487951ace456f (diff) | |
download | linux-f48f356330f7124671b28ddc93a28c492ef05b9f.tar.xz |
drm/msm: Add $debugfs/gem stats on resident objects
Currently nearly everything, other than newly allocated objects which
are not yet backed by pages, is pinned and resident in RAM. But it will
be nice to have some stats on what is unpinned once that is supported.
Signed-off-by: Rob Clark <robdclark@chromium.org>
Link: https://lore.kernel.org/r/20210405174532.1441497-6-robdclark@gmail.com
Signed-off-by: Rob Clark <robdclark@chromium.org>
Diffstat (limited to 'drivers/gpu/drm/msm/msm_gem.c')
-rw-r--r-- | drivers/gpu/drm/msm/msm_gem.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/gpu/drm/msm/msm_gem.c b/drivers/gpu/drm/msm/msm_gem.c index 46d3a96dce86..124306bec6f8 100644 --- a/drivers/gpu/drm/msm/msm_gem.c +++ b/drivers/gpu/drm/msm/msm_gem.c @@ -902,6 +902,11 @@ void msm_gem_describe(struct drm_gem_object *obj, struct seq_file *m, stats->active.size += obj->size; } + if (msm_obj->pages) { + stats->resident.count++; + stats->resident.size += obj->size; + } + switch (msm_obj->madv) { case __MSM_MADV_PURGED: stats->purged.count++; @@ -991,6 +996,8 @@ void msm_gem_describe_objects(struct list_head *list, struct seq_file *m) stats.all.count, stats.all.size); seq_printf(m, "Active: %4d objects, %9zu bytes\n", stats.active.count, stats.active.size); + seq_printf(m, "Resident: %4d objects, %9zu bytes\n", + stats.resident.count, stats.resident.size); seq_printf(m, "Purgeable: %4d objects, %9zu bytes\n", stats.purgeable.count, stats.purgeable.size); seq_printf(m, "Purged: %4d objects, %9zu bytes\n", |