public inbox for igt-dev@lists.freedesktop.org
 help / color / mirror / Atom feed
* [PATCH i-g-t v2 0/2] Close any open drm device after engine initialization in GPUTOP
@ 2025-12-17  9:31 Soham Purkait
  2025-12-17  9:31 ` [PATCH i-g-t v2 1/2] tools/gputop/xe_gputop: Close card_fd after engine population in xe_populate_engines() Soham Purkait
                   ` (5 more replies)
  0 siblings, 6 replies; 9+ messages in thread
From: Soham Purkait @ 2025-12-17  9:31 UTC (permalink / raw)
  To: igt-dev, riana.tauro, badal.nilawar, kamil.konieczny
  Cc: anshuman.gupta, soham.purkait, umesh.nerlige.ramappa

    During the engine initialization for a specific device, igt helper
functions need card_fd to access each engine and respective configs which
is required in obtaining the busyness of the same through PMU.
But during KMS tests no other DRM client should run. So once the required
configs and engines are obtained, the card_fd should be closed as opened
card_fd in gputop makes appear itself as DRM client.
  
  GPUTOP engine busyness is also capable of running without superuser access
through setting CAP_PERFMON or an appropriate perf_event_paranoid setting,
Otherwise user could continue with only GPU client busyness if required.

Steps to enable engine busyness to run without root (using CAP_PERFMON):
$ cd /path/to/igt-gpu-tools/
$ sudo setcap cap_perfmon=+ep $(pwd)/build/tools/gputop/gputop
$ sudo sh -c "echo $(pwd)/build/lib > /etc/ld.so.conf.d/lib-igt.conf"
$ sudo ldconfig
Steps to revert once done:
$ sudo setcap cap_perfmon=-ep $(pwd)/build/tools/gputop/gputop
$ sudo rm /etc/ld.so.conf.d/lib-igt.conf
$ sudo ldconfig

Steps to enable engine busyness to run without root (using perf_event_paranoid):
# Save current value
$ orig_val=$(sysctl -n kernel.perf_event_paranoid)
# Set the value to allow running GPUTOP without root privileges
$ sudo sysctl -w kernel.perf_event_paranoid=-1
Steps to revert once done:
$ sudo sysctl -w kernel.perf_event_paranoid=$orig_val

Soham Purkait (2):
  tools/gputop/xe_gputop: Close card_fd after engine population in
    xe_populate_engines()
  tools/gputop/gputop: Enable support for multiple GPUs and instances

 tools/{ => gputop}/gputop.c | 299 +++++++++++++++++++++++++++++++-----
 tools/gputop/meson.build    |   6 +
 tools/gputop/xe_gputop.c    |   7 +-
 tools/meson.build           |   6 +-
 4 files changed, 271 insertions(+), 47 deletions(-)
 rename tools/{ => gputop}/gputop.c (58%)
 create mode 100644 tools/gputop/meson.build

-- 
2.34.1


^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2025-12-24  6:35 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-12-17  9:31 [PATCH i-g-t v2 0/2] Close any open drm device after engine initialization in GPUTOP Soham Purkait
2025-12-17  9:31 ` [PATCH i-g-t v2 1/2] tools/gputop/xe_gputop: Close card_fd after engine population in xe_populate_engines() Soham Purkait
2025-12-17  9:31 ` [PATCH i-g-t v2 2/2] tools/gputop/gputop: Enable support for multiple GPUs and instances Soham Purkait
2025-12-22 19:02   ` Kamil Konieczny
2025-12-24  6:34     ` Purkait, Soham
2025-12-17 12:41 ` ✓ Xe.CI.BAT: success for Close any open drm device after engine initialization in GPUTOP (rev3) Patchwork
2025-12-17 12:55 ` ✓ i915.CI.BAT: " Patchwork
2025-12-17 15:55 ` ✗ i915.CI.Full: failure " Patchwork
2025-12-18  9:35 ` ✗ Xe.CI.Full: " Patchwork

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox