Panthor BO tagging and GEMS debug display
From: | Adrián Larumbe <adrian.larumbe-AT-collabora.com> | |
To: | Boris Brezillon <boris.brezillon-AT-collabora.com>, Steven Price <steven.price-AT-arm.com>, Liviu Dudau <liviu.dudau-AT-arm.com>, Maarten Lankhorst <maarten.lankhorst-AT-linux.intel.com>, Maxime Ripard <mripard-AT-kernel.org>, Thomas Zimmermann <tzimmermann-AT-suse.de>, David Airlie <airlied-AT-gmail.com>, Simona Vetter <simona-AT-ffwll.ch>, Sumit Semwal <sumit.semwal-AT-linaro.org>, Christian König <christian.koenig-AT-amd.com> | |
Subject: | [PATCH v5 0/4] Panthor BO tagging and GEMS debug display | |
Date: | Tue, 08 Apr 2025 23:24:20 +0100 | |
Message-ID: | <20250408222427.1214330-1-adrian.larumbe@collabora.com> | |
Cc: | kernel-AT-collabora.com, Adrián Larumbe <adrian.larumbe-AT-collabora.com>, dri-devel-AT-lists.freedesktop.org, linux-kernel-AT-vger.kernel.org, linux-media-AT-vger.kernel.org, linaro-mm-sig-AT-lists.linaro.org | |
Archive-link: | Article |
This patch series is aimed at providing UM with detailed memory profiling information in debug builds. It is achieved through a device-wide list of DRM GEM objects, and also implementing the ability to label BO's from UM through a new IOCTL. The new debugfs file shows a list of driver DRM GEM objects in tabular mode. To visualise it, cat sudo cat /sys/kernel/debug/dri/*.gpu/gems. To test this functionality from UM, please refer to this Mesa patch series: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests... Discussion of previous revision of this patch series can be found at: https://lore.kernel.org/dri-devel/20250402115432.1469703-... Changelog: v5: - Kept case and naming of kernel BO's consistent - Increased the driver minor after new ioctl - Now adds BO to debugfs GEMs list at GEM object creation time - No longer try to hide BO creator's name when it's a workqueue or modprobe - Reworked the procedure for printing GEM state and kernel BO flags - Turned kernel BO flags and GEM state flags into bit enums - Wait until BO state is marked as initialied for debugfs display v4: - Labelled all kernel BO's, not just heap chunks. - Refactored DebugGFs GEMs list handling functions - Added debugfs GEMS node mask to tell different kinds of BO's Adrián Larumbe (4): drm/panthor: Introduce BO labeling drm/panthor: Add driver IOCTL for setting BO labels drm/panthor: Label all kernel BO's drm/panthor: show device-wide list of DRM GEM objects over DebugFS drivers/gpu/drm/panthor/panthor_device.c | 5 + drivers/gpu/drm/panthor/panthor_device.h | 11 ++ drivers/gpu/drm/panthor/panthor_drv.c | 68 +++++++- drivers/gpu/drm/panthor/panthor_fw.c | 8 +- drivers/gpu/drm/panthor/panthor_gem.c | 210 ++++++++++++++++++++++- drivers/gpu/drm/panthor/panthor_gem.h | 86 +++++++++- drivers/gpu/drm/panthor/panthor_heap.c | 6 +- drivers/gpu/drm/panthor/panthor_sched.c | 9 +- include/uapi/drm/panthor_drm.h | 19 ++ 9 files changed, 411 insertions(+), 11 deletions(-) -- 2.48.1