linux/drivers/gpu/drm
Matthew Auld 2d1684a077 drm/xe/uapi: loosen used tracking restriction
Currently this is hidden behind perfmon_capable() since this is
technically an info leak, given that this is a system wide metric.
However the granularity reported here is always PAGE_SIZE aligned, which
matches what the core kernel is already willing to expose to userspace
if querying how many free RAM pages there are on the system, and that
doesn't need any special privileges. In addition other drm drivers seem
happy to expose this.

The motivation here if with oneAPI where they want to use the system
wide 'used' reporting here, so not the per-client fdinfo stats. This has
also come up with some perf overlay applications wanting this
information.

Fixes: 1105ac15d2 ("drm/xe/uapi: restrict system wide accounting")
Signed-off-by: Matthew Auld <matthew.auld@intel.com>
Cc: Thomas Hellström <thomas.hellstrom@linux.intel.com>
Cc: Joshua Santosh <joshua.santosh.ranjan@intel.com>
Cc: José Roberto de Souza <jose.souza@intel.com>
Cc: Matthew Brost <matthew.brost@intel.com>
Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
Cc: <stable@vger.kernel.org> # v6.8+
Acked-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
Reviewed-by: Lucas De Marchi <lucas.demarchi@intel.com>
Link: https://lore.kernel.org/r/20250919122052.420979-2-matthew.auld@intel.com
(cherry picked from commit 4d0b035fd6)
Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com>
2025-10-03 14:16:55 -05:00
..
adp drm: convert many bridge drivers from devm_kzalloc() to devm_drm_bridge_alloc() API 2025-05-23 15:03:47 +02:00
amd drm/amd: Add name to modes from amdgpu_connector_add_common_modes() 2025-09-25 15:54:22 -04:00
arm drm for 6.17-rc1 2025-07-30 19:26:49 -07:00
armada drm/armada: Pass along the format info from .fb_create() to drm_helper_mode_fill_fb_struct() 2025-07-16 20:07:32 +03:00
aspeed
ast drm/ast: ast_2100: Remove unneeded semicolon 2025-09-05 14:53:06 +02:00
atmel-hlcdc
bridge Short summary of fixes pull: 2025-09-26 13:06:39 +10:00
ci drm/ci: Uprev igt 2025-07-04 11:06:38 -07:00
clients drm/fbdev-client: Skip DRM clients if modesetting is absent 2025-07-06 14:05:07 +03:00
display drm/display: bridge-connector: remove unused variable assignment 2025-09-05 15:42:21 +02:00
etnaviv drm for 6.17-rc1 2025-07-30 19:26:49 -07:00
exynos drm/exynos: dsi: add support for exynos7870 2025-09-15 20:19:23 +09:00
fsl-dcu
gma500 drm/gma500: Do not clear framebuffer GEM objects during cleanup 2025-09-09 10:25:32 +02:00
gud drm/gud: Replace simple display pipe with DRM atomic helpers 2025-09-01 08:42:51 +02:00
hisilicon drm/hisilicon/hibmc: fix dp and vga cannot show together 2025-08-17 18:32:31 +03:00
hyperv drm/hyperv: Add support for drm_panic 2025-06-05 14:59:56 +02:00
i915 Cross-subsystem Changes: 2025-09-19 13:02:46 +10:00
imagination drm/imagination: Enable PowerVR driver for RISC-V 2025-09-01 12:11:00 +01:00
imx drm/imx: Add i.MX8qxp Display Controller KMS 2025-05-14 15:11:31 +08:00
ingenic drm: Pass the format info to .fb_create() 2025-07-16 20:03:14 +03:00
kmb
lib drm: Include <linux/export.h> 2025-06-16 09:01:23 +02:00
lima drm for 6.17-rc1 2025-07-30 19:26:49 -07:00
logicvc
loongson PCI: Add CONFIG_MMU dependency 2025-04-23 15:40:30 -05:00
mcde drm/mcde: convert to devm_drm_bridge_alloc() API 2025-04-29 11:21:23 +02:00
mediatek drm/mediatek: clean up driver data initialisation 2025-09-10 12:52:59 +00:00
meson drm-misc-next for 6.17: 2025-06-18 08:09:35 +10:00
mgag200 drm for 6.17-rc1 2025-07-30 19:26:49 -07:00
msm Merge tag 'drm-msm-next-2025-09-12' of https://gitlab.freedesktop.org/drm/msm into drm-next 2025-09-16 10:21:38 +10:00
mxsfb drm/mxsfb: put the bridge returned by drm_bridge_chain_get_first_bridge() 2025-07-22 13:01:28 +02:00
nouveau Linux 6.17-rc6 2025-09-15 17:51:07 +10:00
nova DRM Rust changes for v6.18 2025-09-17 16:13:49 +10:00
omapdrm drm/omapdrm: use drm_bridge_chain_get_last_bridge() 2025-09-02 11:38:29 +02:00
panel drm/panel-edp: Add 4 more panels needed by mt8189 Chromebooks 2025-09-08 08:55:42 -07:00
panfrost Merge drm/drm-next into drm-misc-next 2025-08-20 09:33:06 +02:00
panthor Linux 6.17-rc6 2025-09-15 17:51:07 +10:00
pl111
qxl drm/gem: Pass along the format info from .fb_create() to drm_helper_mode_fill_fb_struct() 2025-07-16 20:05:58 +03:00
radeon drm/radeon: use dev_warn_once() in CS parsers 2025-09-05 17:38:42 -04:00
renesas drm/rcar-du: dsi: Implement DSI command support 2025-09-08 09:45:01 +03:00
rockchip Linux 6.17-rc6 2025-09-15 17:51:07 +10:00
scheduler drm/sched: Fix racy access to drm_sched_entity.dependency 2025-09-02 12:58:56 +02:00
sitronix drm/st7571-i2c: add support for 2bit grayscale for XRGB8888 2025-09-01 15:35:29 +02:00
solomon drm/ssd130x: Remove the use of dev_err_probe() 2025-09-01 16:09:19 +02:00
sprd
sti drm/sti: Remove redundant ternary operators 2025-09-05 13:17:21 +02:00
stm drm/stm: ltdc: handle lvds pixel clock 2025-08-28 17:43:57 +02:00
sun4i drm: sun4i: de33: mixer: add mixer configuration for the H616 2025-06-02 09:59:10 +02:00
sysfb drm/sysfb: Remove double assignment to pointer crtc_state 2025-09-04 09:26:39 +02:00
tegra Revert "drm/tegra: Use dma_buf from GEM object instance" 2025-08-26 10:41:27 +02:00
tests Linux 6.17-rc6 2025-09-15 17:51:07 +10:00
tidss drm/tidss: dispc: Explicitly include bitfield.h 2025-09-03 12:16:04 +03:00
tilcdc
tiny drm/tiny: pixpaper: Fix missing dependency on DRM_GEM_SHMEM_HELPER 2025-09-23 14:07:04 +02:00
ttm ttm/bo: add an API to populate a bo before exporting. 2025-09-11 10:01:38 +10:00
tve200
tyr rust: drm: Introduce the Tyr driver for Arm Mali GPUs 2025-09-11 12:20:03 +00:00
udl drm/gem-shmem: Do not map s/g table by default 2025-07-07 15:23:41 +02:00
v3d drm/v3d: Protect per-fd reset counter against fd release 2025-08-29 10:28:11 -03:00
vboxvideo
vc4 drm: Pass the format info to .fb_create() 2025-07-16 20:03:14 +03:00
vgem drm/vgem/vgem_drv convert to use faux_device 2025-07-07 15:24:14 +02:00
virtio drm/virtio: clean up minor codestyle issues 2025-08-20 13:36:45 +03:00
vkms drm/vkms: Add P01* formats 2025-09-05 19:57:26 +02:00
vmwgfx Merge drm/drm-next into drm-misc-n 2025-08-11 14:37:45 +02:00
xe drm/xe/uapi: loosen used tracking restriction 2025-10-03 14:16:55 -05:00
xen drm/gem: Pass along the format info from .fb_create() to drm_helper_mode_fill_fb_struct() 2025-07-16 20:05:58 +03:00
xlnx drm for 6.17-rc1 2025-07-30 19:26:49 -07:00
drm_atomic_helper.c drm/atomic-helper: put the bridge returned by drm_bridge_chain_get_first_bridge() 2025-07-22 13:01:28 +02:00
drm_atomic_state_helper.c drm: Include <linux/export.h> 2025-06-16 09:01:23 +02:00
drm_atomic_uapi.c drm: re-allow no-op changes on non-primary planes in async flips 2025-08-22 14:31:21 -03:00
drm_atomic.c drm: Include <linux/export.h> 2025-06-16 09:01:23 +02:00
drm_auth.c drm: Include <linux/export.h> 2025-06-16 09:01:23 +02:00
drm_blend.c drm/doc: document front-buffer rendering 2025-04-30 23:35:00 +02:00
drm_bridge_helper.c drm/bridge: Include <linux/export.h> 2025-06-16 09:02:25 +02:00
drm_bridge.c drm/debugfs: bridges_show: show refcount 2025-09-02 11:18:55 +02:00
drm_buddy.c drm for 6.17-rc1 2025-07-30 19:26:49 -07:00
drm_cache.c drm/gpu: Remove dead checks on wbinvd_on_all_cpus()'s return value 2025-07-10 13:07:26 +02:00
drm_client_event.c drm/client: Include <linux/export.h> 2025-06-16 09:02:29 +02:00
drm_client_modeset.c drm/client: Include <linux/export.h> 2025-06-16 09:02:29 +02:00
drm_client.c drm/client: Include <linux/export.h> 2025-06-16 09:02:29 +02:00
drm_color_mgmt.c drm/color-mgmt: Prepare for RGB332 palettes 2025-08-26 09:54:18 +02:00
drm_connector.c drm/connector: move HDR sink metadata to display info 2025-06-23 21:44:55 +03:00
drm_crtc_helper_internal.h
drm_crtc_helper.c drm: Remove redundant statement in drm_crtc_helper_set_mode() 2025-03-27 14:02:57 +02:00
drm_crtc_internal.h
drm_crtc.c
drm_damage_helper.c drm: Include <linux/export.h> 2025-06-16 09:01:23 +02:00
drm_debugfs_crc.c drm: Include <linux/export.h> 2025-06-16 09:01:23 +02:00
drm_debugfs.c drm: add debugfs support on per client-id basis 2025-07-04 15:59:06 +02:00
drm_displayid_internal.h drm/edid: Refactor DisplayID timing block structs 2025-04-16 20:40:51 +03:00
drm_displayid.c
drm_draw_internal.h
drm_draw.c Merge drm/drm-next into drm-misc-next 2025-04-07 14:35:48 +02:00
drm_drv.c Merge drm/drm-next into drm-intel-next 2025-09-10 08:01:42 -04:00
drm_dumb_buffers.c
drm_edid_load.c
drm_edid.c drm-misc-next for 6.17: 2025-06-27 09:58:05 +10:00
drm_eld.c
drm_encoder.c
drm_exec.c drm: Include <linux/export.h> 2025-06-16 09:01:23 +02:00
drm_fb_dma_helper.c drm: Include <linux/export.h> 2025-06-16 09:01:23 +02:00
drm_fb_helper.c drm/client: Include <linux/export.h> 2025-06-16 09:02:29 +02:00
drm_fbdev_dma.c drm/client: Include <linux/export.h> 2025-06-16 09:02:29 +02:00
drm_fbdev_shmem.c drm/client: Include <linux/export.h> 2025-06-16 09:02:29 +02:00
drm_fbdev_ttm.c drm/client: Include <linux/export.h> 2025-06-16 09:02:29 +02:00
drm_file.c drm: add debugfs support on per client-id basis 2025-07-04 15:59:06 +02:00
drm_flip_work.c drm: Include <linux/export.h> 2025-06-16 09:01:23 +02:00
drm_format_helper.c drm/format-helper: introduce drm_fb_xrgb8888_to_gray2() 2025-09-01 15:35:07 +02:00
drm_format_internal.h drm/format-helper: Split off byte swapping from drm_fb_xrgb8888_to_rgb565() 2025-06-27 15:59:23 +02:00
drm_fourcc.c drm: Pass pixel_format+modifier directly to drm_get_format_info() 2025-07-16 20:01:13 +03:00
drm_framebuffer.c drm for 6.17-rc1 2025-07-30 19:26:49 -07:00
drm_gem_atomic_helper.c drm/gem: Include <linux/export.h> 2025-06-16 09:02:35 +02:00
drm_gem_dma_helper.c Revert "drm/gem-dma: Use dma_buf from GEM object instance" 2025-07-17 12:26:19 +02:00
drm_gem_framebuffer_helper.c drm for 6.17-rc1 2025-07-30 19:26:49 -07:00
drm_gem_shmem_helper.c drm for 6.17-rc1 2025-07-30 19:26:49 -07:00
drm_gem_ttm_helper.c drm/gem: Include <linux/export.h> 2025-06-16 09:02:35 +02:00
drm_gem_vram_helper.c drm/gem: Include <linux/export.h> 2025-06-16 09:02:35 +02:00
drm_gem.c drm_gem: add mutex to drm_gem_object.gpuva 2025-08-28 12:40:43 +02:00
drm_gpusvm.c drm/gpusvm, drm/xe: Fix userptr to not allow device private pages 2025-10-02 21:57:52 -07:00
drm_gpuvm.c Linux 6.17-rc6 2025-09-15 17:51:07 +10:00
drm_internal.h Merge drm/drm-next into drm-misc-n 2025-08-11 14:37:45 +02:00
drm_ioc32.c
drm_ioctl.c drm: Add DRM prime interface to reassign GEM handle 2025-07-18 08:59:24 +02:00
drm_kms_helper_common.c
drm_lease.c
drm_managed.c drm: Include <linux/export.h> 2025-06-16 09:01:23 +02:00
drm_mipi_dbi.c drm/format-helper: Split off byte swapping from drm_fb_xrgb8888_to_rgb565() 2025-06-27 15:59:23 +02:00
drm_mipi_dsi.c drm: Add MIPI read_multi func and two write macros 2025-08-14 15:42:26 -07:00
drm_mm.c
drm_mode_config.c drm: Include <linux/export.h> 2025-06-16 09:01:23 +02:00
drm_mode_object.c
drm_modes.c
drm_modeset_helper.c drm: Make passing of format info to drm_helper_mode_fill_fb_struct() mandatory 2025-07-16 20:12:35 +03:00
drm_modeset_lock.c drm: Include <linux/export.h> 2025-06-16 09:01:23 +02:00
drm_of.c drm: of: fix documentation reference 2025-08-21 16:21:08 +02:00
drm_pagemap.c drm/pagemap: Allocate folios when possible 2025-08-06 13:34:58 +02:00
drm_panel_backlight_quirks.c drm: panel-backlight-quirks: Add Steam Deck brightness quirk 2025-09-03 10:23:03 -05:00
drm_panel_orientation_quirks.c drm/panel: Include <linux/export.h> 2025-06-16 09:02:39 +02:00
drm_panel.c drm/panel: Allow powering on panel follower after panel is enabled 2025-08-25 09:17:49 -07:00
drm_panic_qr.rs drm/panic: Add a u64 divide by 10 for arm32 2025-08-12 09:33:05 +02:00
drm_panic.c drm: Include <linux/export.h> 2025-06-16 09:01:23 +02:00
drm_pci.c drm: Do not include <linux/export.h> 2025-06-16 09:00:09 +02:00
drm_plane_helper.c drm: Include <linux/export.h> 2025-06-16 09:01:23 +02:00
drm_plane.c drm: Include <linux/export.h> 2025-06-16 09:01:23 +02:00
drm_prime.c Merge drm/drm-next into drm-misc-n 2025-08-11 14:37:45 +02:00
drm_print.c drm: Include <linux/export.h> 2025-06-16 09:01:23 +02:00
drm_privacy_screen_x86.c
drm_privacy_screen.c drm: Include <linux/export.h> 2025-06-16 09:01:23 +02:00
drm_probe_helper.c drm/probe-helper: put the bridge returned by drm_bridge_chain_get_first_bridge() 2025-07-22 13:01:28 +02:00
drm_property.c
drm_rect.c
drm_self_refresh_helper.c drm: Include <linux/export.h> 2025-06-16 09:01:23 +02:00
drm_simple_kms_helper.c drm: Include <linux/export.h> 2025-06-16 09:01:23 +02:00
drm_suballoc.c drm: Include <linux/export.h> 2025-06-16 09:01:23 +02:00
drm_syncobj.c drm: Include <linux/export.h> 2025-06-16 09:01:23 +02:00
drm_sysfs.c DRM: Add a new 'boot_display' attribute 2025-09-10 09:35:33 -05:00
drm_trace_points.c
drm_trace.h
drm_vblank_work.c drm: Include <linux/export.h> 2025-06-16 09:01:23 +02:00
drm_vblank.c treewide, timers: Rename from_timer() to timer_container_of() 2025-06-08 09:07:37 +02:00
drm_vma_manager.c drm: Include <linux/export.h> 2025-06-16 09:01:23 +02:00
drm_writeback.c drm for 6.17-rc1 2025-07-30 19:26:49 -07:00
Kconfig rust: drm: Introduce the Tyr driver for Arm Mali GPUs 2025-09-11 12:20:03 +00:00
Kconfig.debug drm/format-helper: Move drm_fb_build_fourcc_list() to sysfb helpers 2025-06-18 10:46:03 +02:00
Makefile rust: drm: Introduce the Tyr driver for Arm Mali GPUs 2025-09-11 12:20:03 +00:00