linux/drivers/gpu/drm/xe
Matthew Brost a6f3b25273 drm/xe: Fix memory leak when aborting binds
Make sure to call xe_pt_update_ops_fini in xe_pt_update_ops_abort to
free any memory the bind allocated.

Caught by kmemleak when running Vulkan CTS tests on LNL. The leak
seems to happen only when there's some kind of failure happening, like
the lack of memory. Example output:

unreferenced object 0xffff9120bdf62000 (size 8192):
  comm "deqp-vk", pid 115008, jiffies 4310295728
  hex dump (first 32 bytes):
    00 00 00 00 00 00 00 00 1b 05 f9 28 01 00 00 40  ...........(...@
    00 00 00 00 00 00 00 00 1b 15 f9 28 01 00 00 40  ...........(...@
  backtrace (crc 7a56be79):
    [<ffffffff86dd81f0>] __kmalloc_cache_noprof+0x310/0x3d0
    [<ffffffffc08e8211>] xe_pt_new_shared.constprop.0+0x81/0xb0 [xe]
    [<ffffffffc08e8309>] xe_pt_insert_entry+0xb9/0x140 [xe]
    [<ffffffffc08eab6d>] xe_pt_stage_bind_entry+0x12d/0x5b0 [xe]
    [<ffffffffc08ecbca>] xe_pt_walk_range+0xea/0x280 [xe]
    [<ffffffffc08eccea>] xe_pt_walk_range+0x20a/0x280 [xe]
    [<ffffffffc08eccea>] xe_pt_walk_range+0x20a/0x280 [xe]
    [<ffffffffc08eccea>] xe_pt_walk_range+0x20a/0x280 [xe]
    [<ffffffffc08eccea>] xe_pt_walk_range+0x20a/0x280 [xe]
    [<ffffffffc08e9eff>] xe_pt_stage_bind.constprop.0+0x25f/0x580 [xe]
    [<ffffffffc08eb21a>] bind_op_prepare+0xea/0x6e0 [xe]
    [<ffffffffc08ebab8>] xe_pt_update_ops_prepare+0x1c8/0x440 [xe]
    [<ffffffffc08ffbf3>] ops_execute+0x143/0x850 [xe]
    [<ffffffffc0900b64>] vm_bind_ioctl_ops_execute+0x244/0x800 [xe]
    [<ffffffffc0906467>] xe_vm_bind_ioctl+0x1877/0x2370 [xe]
    [<ffffffffc05e92b3>] drm_ioctl_kernel+0xb3/0x110 [drm]
unreferenced object 0xffff9120bdf72000 (size 8192):
  comm "deqp-vk", pid 115008, jiffies 4310295728
  hex dump (first 32 bytes):
    6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b  kkkkkkkkkkkkkkkk
    6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b 6b  kkkkkkkkkkkkkkkk
  backtrace (crc 23b2f0b5):
    [<ffffffff86dd81f0>] __kmalloc_cache_noprof+0x310/0x3d0
    [<ffffffffc08e8211>] xe_pt_new_shared.constprop.0+0x81/0xb0 [xe]
    [<ffffffffc08e8453>] xe_pt_stage_unbind_post_descend+0xb3/0x150 [xe]
    [<ffffffffc08ecd26>] xe_pt_walk_range+0x246/0x280 [xe]
    [<ffffffffc08eccea>] xe_pt_walk_range+0x20a/0x280 [xe]
    [<ffffffffc08eccea>] xe_pt_walk_range+0x20a/0x280 [xe]
    [<ffffffffc08eccea>] xe_pt_walk_range+0x20a/0x280 [xe]
    [<ffffffffc08ece31>] xe_pt_walk_shared+0xc1/0x110 [xe]
    [<ffffffffc08e7b2a>] xe_pt_stage_unbind+0x9a/0xd0 [xe]
    [<ffffffffc08e913d>] unbind_op_prepare+0xdd/0x270 [xe]
    [<ffffffffc08eb9f6>] xe_pt_update_ops_prepare+0x106/0x440 [xe]
    [<ffffffffc08ffbf3>] ops_execute+0x143/0x850 [xe]
    [<ffffffffc0900b64>] vm_bind_ioctl_ops_execute+0x244/0x800 [xe]
    [<ffffffffc0906467>] xe_vm_bind_ioctl+0x1877/0x2370 [xe]
    [<ffffffffc05e92b3>] drm_ioctl_kernel+0xb3/0x110 [drm]
    [<ffffffffc05e95a0>] drm_ioctl+0x280/0x4e0 [drm]

Reported-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Closes: https://gitlab.freedesktop.org/drm/xe/kernel/-/issues/2877
Fixes: a708f6501c ("drm/xe: Update PT layer with better error handling")
Signed-off-by: Matthew Brost <matthew.brost@intel.com>
Reviewed-by: Paulo Zanoni <paulo.r.zanoni@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240927232228.3255246-1-matthew.brost@intel.com
(cherry picked from commit 63e0695597)
Signed-off-by: Lucas De Marchi <lucas.demarchi@intel.com>
2024-10-03 01:24:54 -05:00
..
abi drm/xe/guc: Enable w/a 14022293748 and 22019794406 2024-08-08 13:47:27 -07:00
compat-i915-headers drm/xe/display: fix compat IS_DISPLAY_STEP() range end 2024-09-12 10:06:55 -04:00
display Cross-subsystem Changes: 2024-09-10 13:18:00 +10:00
instructions
regs drm/xe/xe2: Add performance tuning for L3 cache flushing 2024-10-03 01:13:55 -05:00
tests drm/xe: replace #include <drm/xe_drm.h> with <uapi/drm/xe_drm.h> 2024-08-28 15:17:54 -04:00
.gitignore
.kunitconfig
Kconfig
Kconfig.debug
Kconfig.profile
Makefile drm/xe/gsc: Add debugfs to print GSC info 2024-08-29 10:32:20 -07:00
xe_args.h
xe_assert.h drm/xe: Remove redundant [drm] tag from xe_assert() message 2024-09-03 11:42:42 +02:00
xe_bb.c drm/xe/oa: Fix overflow in oa batch buffer 2024-09-17 23:31:59 -05:00
xe_bb.h
xe_bb_types.h
xe_bo.c drm/xe: Prevent null pointer access in xe_migrate_copy 2024-10-03 01:24:22 -05:00
xe_bo.h drm/xe/bo: add some annotations in bo_put() 2024-09-17 23:31:06 -05:00
xe_bo_doc.h
xe_bo_evict.c
xe_bo_evict.h
xe_bo_types.h drm/xe: Make xe_ggtt_node struct independent 2024-08-22 14:00:45 -04:00
xe_debugfs.c Many singleton patches - please see the various changelogs for details. 2024-09-21 08:20:50 -07:00
xe_debugfs.h drm/xe: Allow to compile out debugfs 2024-08-09 21:15:14 -07:00
xe_devcoredump.c drm/xe: Faster devcoredump 2024-08-01 11:00:14 -07:00
xe_devcoredump.h
xe_devcoredump_types.h drm/xe: Faster devcoredump 2024-08-01 11:00:14 -07:00
xe_device.c drm/xe: Clean up VM / exec queue file lock usage. 2024-10-03 01:21:55 -05:00
xe_device.h drm/i915 & drm/xe: save struct drm_device to drvdata 2024-09-02 15:01:59 +03:00
xe_device_sysfs.c
xe_device_sysfs.h
xe_device_types.h drm/xe: Clean up VM / exec queue file lock usage. 2024-10-03 01:21:55 -05:00
xe_dma_buf.c
xe_dma_buf.h
xe_drm_client.c drm/xe: Clean up VM / exec queue file lock usage. 2024-10-03 01:21:55 -05:00
xe_drm_client.h
xe_drv.h
xe_exec.c drm/xe: replace #include <drm/xe_drm.h> with <uapi/drm/xe_drm.h> 2024-08-28 15:17:54 -04:00
xe_exec.h
xe_exec_queue.c drm/xe/queue: move xa_alloc to prevent UAF 2024-10-03 01:22:50 -05:00
xe_exec_queue.h drm/xe/exec_queue: Prepare last fence for hw engine group resume context 2024-08-17 18:31:54 -07:00
xe_exec_queue_types.h Linux 6.11-rc5 2024-08-27 14:09:45 +02:00
xe_execlist.c drm/xe: move the kernel lrc from hwe to execlist port 2024-08-28 14:50:13 -04:00
xe_execlist.h
xe_execlist_types.h drm/xe: move the kernel lrc from hwe to execlist port 2024-08-28 14:50:13 -04:00
xe_force_wake.c
xe_force_wake.h
xe_force_wake_types.h
xe_gen_wa_oob.c drm/xe: Migrate OOB WAs to OR rules 2024-07-29 11:19:40 -07:00
xe_ggtt.c drm/xe: Don't keep stale pointer to bo->ggtt_node 2024-09-12 18:04:36 -05:00
xe_ggtt.h drm/xe: Make xe_ggtt_node struct independent 2024-08-22 14:00:45 -04:00
xe_ggtt_types.h drm/xe: Fix missing runtime outer protection for ggtt_remove_node 2024-08-22 14:00:45 -04:00
xe_gpu_scheduler.c drm/xe: Resume TDR after GT reset 2024-10-03 01:19:44 -05:00
xe_gpu_scheduler.h drm/xe: Resume TDR after GT reset 2024-10-03 01:19:44 -05:00
xe_gpu_scheduler_types.h
xe_gsc.c drm/xe/gsc: Do not attempt to load the GSC multiple times 2024-09-03 10:36:38 -04:00
xe_gsc.h drm/xe/gsc: Add debugfs to print GSC info 2024-08-29 10:32:20 -07:00
xe_gsc_debugfs.c drm/xe/gsc: Add debugfs to print GSC info 2024-08-29 10:32:20 -07:00
xe_gsc_debugfs.h drm/xe/gsc: Add debugfs to print GSC info 2024-08-29 10:32:20 -07:00
xe_gsc_proxy.c drm/xe/uc: Use managed bo for HuC and GSC objects 2024-08-16 09:15:04 -07:00
xe_gsc_proxy.h
xe_gsc_submit.c
xe_gsc_submit.h
xe_gsc_types.h
xe_gt.c drm next for 6.12-rc1 2024-09-19 10:18:15 +02:00
xe_gt.h drm/xe: clean up fault injection usage 2024-09-01 20:43:33 -07:00
xe_gt_ccs_mode.c
xe_gt_ccs_mode.h
xe_gt_clock.c
xe_gt_clock.h
xe_gt_debugfs.c drm/xe: Add debugfs to dump GuC's hwconfig 2024-08-16 11:07:11 -07:00
xe_gt_debugfs.h
xe_gt_freq.c drm/xe: use devm_add_action_or_reset() helper 2024-10-03 01:13:54 -05:00
xe_gt_freq.h
xe_gt_idle.c
xe_gt_idle.h
xe_gt_idle_types.h
xe_gt_mcr.c drm/xe/mcr: Use Xe2_LPM steering tables for Xe2_HPM 2024-10-03 01:13:55 -05:00
xe_gt_mcr.h
xe_gt_pagefault.c drm/xe: Use helper for ASID -> VM in GPU faults and access counters 2024-10-03 01:13:55 -05:00
xe_gt_pagefault.h
xe_gt_printk.h
xe_gt_sriov_pf.c drm/xe/pf: Improve VF control 2024-08-30 10:51:09 +02:00
xe_gt_sriov_pf.h
xe_gt_sriov_pf_config.c drm/xe: prevent potential UAF in pf_provision_vf_ggtt() 2024-09-12 12:29:30 -05:00
xe_gt_sriov_pf_config.h drm/xe/pf: Add function to sanitize VF resources 2024-08-30 10:51:06 +02:00
xe_gt_sriov_pf_config_types.h drm/xe: Make xe_ggtt_node struct independent 2024-08-22 14:00:45 -04:00
xe_gt_sriov_pf_control.c drm/xe/pf: Improve VF control 2024-08-30 10:51:09 +02:00
xe_gt_sriov_pf_control.h drm/xe/pf: Improve VF control 2024-08-30 10:51:09 +02:00
xe_gt_sriov_pf_control_types.h drm/xe/pf: Improve VF control 2024-08-30 10:51:09 +02:00
xe_gt_sriov_pf_debugfs.c
xe_gt_sriov_pf_debugfs.h
xe_gt_sriov_pf_helpers.h
xe_gt_sriov_pf_monitor.c
xe_gt_sriov_pf_monitor.h
xe_gt_sriov_pf_monitor_types.h
xe_gt_sriov_pf_policy.c
xe_gt_sriov_pf_policy.h
xe_gt_sriov_pf_policy_types.h
xe_gt_sriov_pf_service.c
xe_gt_sriov_pf_service.h
xe_gt_sriov_pf_service_types.h
xe_gt_sriov_pf_types.h drm/xe/pf: Improve VF control 2024-08-30 10:51:09 +02:00
xe_gt_sriov_printk.h
xe_gt_sriov_vf.c drm/xe: Make xe_ggtt_node struct independent 2024-08-22 14:00:45 -04:00
xe_gt_sriov_vf.h
xe_gt_sriov_vf_debugfs.c
xe_gt_sriov_vf_debugfs.h
xe_gt_sriov_vf_types.h
xe_gt_stats.c drm/xe: Add stats for tlb invalidation count 2024-08-12 19:08:53 +02:00
xe_gt_stats.h drm/xe: Add stats for tlb invalidation count 2024-08-12 19:08:53 +02:00
xe_gt_sysfs.c drm/xe: use devm_add_action_or_reset() helper 2024-10-03 01:13:54 -05:00
xe_gt_sysfs.h
xe_gt_sysfs_types.h
xe_gt_throttle.c
xe_gt_throttle.h
xe_gt_tlb_invalidation.c drm/xe: Remove fence check from send_tlb_invalidation 2024-09-12 10:06:16 -04:00
xe_gt_tlb_invalidation.h drm/xe: Hold a PM ref when GT TLB invalidations are inflight 2024-08-15 09:44:22 -04:00
xe_gt_tlb_invalidation_types.h drm/xe: Hold a PM ref when GT TLB invalidations are inflight 2024-08-15 09:44:22 -04:00
xe_gt_topology.c
xe_gt_topology.h
xe_gt_types.h drm/xe/pcode: Treat pcode as per-tile rather than per-GT 2024-09-03 10:36:46 -04:00
xe_guc.c drm/xe: Set firmware state to loadable before registering guc_fini_hw 2024-08-23 09:54:11 -07:00
xe_guc.h drm/xe/guc: Fix GUC_{SUBMIT,FIRMWARE}_VER helper macros 2024-09-17 23:22:24 -05:00
xe_guc_ads.c drm/xe/guc: Enable w/a 14022293748 and 22019794406 2024-08-08 13:47:27 -07:00
xe_guc_ads.h
xe_guc_ads_types.h
xe_guc_ct.c drm/xe/guc: Bump the G2H queue size to account for page faults 2024-08-20 09:45:54 -07:00
xe_guc_ct.h
xe_guc_ct_types.h
xe_guc_db_mgr.c
xe_guc_db_mgr.h
xe_guc_debugfs.c
xe_guc_debugfs.h
xe_guc_exec_queue_types.h
xe_guc_fwif.h
xe_guc_hwconfig.c drm/xe/mcr: Try to derive dss_per_grp from hwconfig attributes 2024-08-16 11:07:13 -07:00
xe_guc_hwconfig.h drm/xe/mcr: Try to derive dss_per_grp from hwconfig attributes 2024-08-16 11:07:13 -07:00
xe_guc_hxg_helpers.h
xe_guc_id_mgr.c
xe_guc_id_mgr.h
xe_guc_klv_helpers.c
xe_guc_klv_helpers.h
xe_guc_klv_thresholds_set.h
xe_guc_klv_thresholds_set_types.h
xe_guc_log.c
xe_guc_log.h
xe_guc_log_types.h
xe_guc_pc.c drm/xe/pcode: Treat pcode as per-tile rather than per-GT 2024-09-03 10:36:46 -04:00
xe_guc_pc.h
xe_guc_pc_types.h
xe_guc_relay.c
xe_guc_relay.h
xe_guc_relay_types.h
xe_guc_submit.c drm/xe: Resume TDR after GT reset 2024-10-03 01:19:44 -05:00
xe_guc_submit.h
xe_guc_submit_types.h
xe_guc_types.h drm/xe: fix UAF around queue destruction 2024-10-03 01:13:54 -05:00
xe_heci_gsc.c
xe_heci_gsc.h
xe_hmm.c
xe_hmm.h
xe_huc.c drm/xe/uc: Use managed bo for HuC and GSC objects 2024-08-16 09:15:04 -07:00
xe_huc.h
xe_huc_debugfs.c
xe_huc_debugfs.h
xe_huc_types.h
xe_hw_engine.c drm/xe: replace #include <drm/xe_drm.h> with <uapi/drm/xe_drm.h> 2024-08-28 15:17:54 -04:00
xe_hw_engine.h drm/xe: Export xe_hw_engine's mmio accessors 2024-08-06 22:21:14 -07:00
xe_hw_engine_class_sysfs.c
xe_hw_engine_class_sysfs.h
xe_hw_engine_group.c drm/xe/exec: Switch hw engine group execution mode upon job submission 2024-08-17 18:31:57 -07:00
xe_hw_engine_group.h drm/xe/exec: Switch hw engine group execution mode upon job submission 2024-08-17 18:31:57 -07:00
xe_hw_engine_group_types.h drm/xe/hw_engine_group: Introduce xe_hw_engine_group 2024-08-17 18:31:47 -07:00
xe_hw_engine_types.h drm/xe: move the kernel lrc from hwe to execlist port 2024-08-28 14:50:13 -04:00
xe_hw_fence.c drm/xe: Drop HW fence pointer to HW fence ctx 2024-08-21 11:53:12 -04:00
xe_hw_fence.h
xe_hw_fence_types.h drm/xe: Drop HW fence pointer to HW fence ctx 2024-08-21 11:53:12 -04:00
xe_hwmon.c drm/xe/pcode: Treat pcode as per-tile rather than per-GT 2024-09-03 10:36:46 -04:00
xe_hwmon.h
xe_irq.c
xe_irq.h
xe_lmtt.c
xe_lmtt.h
xe_lmtt_2l.c
xe_lmtt_ml.c
xe_lmtt_types.h
xe_lrc.c drm/xe: Remove NULL check of lrc->bo in xe_lrc_snapshot_capture() 2024-08-26 10:27:33 +02:00
xe_lrc.h
xe_lrc_types.h
xe_macros.h
xe_map.h
xe_memirq.c
xe_memirq.h
xe_memirq_types.h
xe_migrate.c drm/xe: replace #include <drm/xe_drm.h> with <uapi/drm/xe_drm.h> 2024-08-28 15:17:54 -04:00
xe_migrate.h drm/xe: Remove unnecessary drm_mm.h includes 2024-08-22 14:00:44 -04:00
xe_migrate_doc.h
xe_mmio.c Linux 6.11-rc5 2024-08-27 14:09:45 +02:00
xe_mmio.h
xe_mocs.c
xe_mocs.h
xe_module.c drm/xe: Use separate rpm lockdep map for non-d3cold-capable devices 2024-08-28 16:29:15 +02:00
xe_module.h drm/xe: Rename enable_display module param 2024-08-13 13:52:20 -07:00
xe_oa.c drm/xe/oa: Don't reset OAC_CONTEXT_ENABLE on OA stream close 2024-10-03 01:23:18 -05:00
xe_oa.h
xe_oa_types.h drm/xe: replace #include <drm/xe_drm.h> with <uapi/drm/xe_drm.h> 2024-08-28 15:17:54 -04:00
xe_observation.c drm/xe: replace #include <drm/xe_drm.h> with <uapi/drm/xe_drm.h> 2024-08-28 15:17:54 -04:00
xe_observation.h
xe_pat.c drm/xe: replace #include <drm/xe_drm.h> with <uapi/drm/xe_drm.h> 2024-08-28 15:17:54 -04:00
xe_pat.h
xe_pci.c drm/xe: Restore pci state upon resume 2024-10-03 01:13:54 -05:00
xe_pci.h
xe_pci_sriov.c
xe_pci_sriov.h
xe_pci_types.h
xe_pcode.c drm/xe/pcode: Treat pcode as per-tile rather than per-GT 2024-09-03 10:36:46 -04:00
xe_pcode.h drm/xe/pcode: Treat pcode as per-tile rather than per-GT 2024-09-03 10:36:46 -04:00
xe_pcode_api.h
xe_platform_types.h
xe_pm.c drm/xe: Fix missing conversion to xe_display_pm_runtime_resume 2024-09-12 18:04:36 -05:00
xe_pm.h drm/xe: Use xe_pm_runtime_get in xe_bo_move() if reclaim-safe. 2024-09-04 09:28:09 +02:00
xe_preempt_fence.c Linux 6.11-rc5 2024-08-27 14:09:45 +02:00
xe_preempt_fence.h
xe_preempt_fence_types.h drm/xe: prevent UAF around preempt fence 2024-08-19 10:39:28 -04:00
xe_pt.c drm/xe: Fix memory leak when aborting binds 2024-10-03 01:24:54 -05:00
xe_pt.h
xe_pt_types.h
xe_pt_walk.c
xe_pt_walk.h
xe_query.c drm/xe: replace #include <drm/xe_drm.h> with <uapi/drm/xe_drm.h> 2024-08-28 15:17:54 -04:00
xe_query.h
xe_range_fence.c
xe_range_fence.h
xe_reg_sr.c
xe_reg_sr.h
xe_reg_sr_types.h
xe_reg_whitelist.c
xe_reg_whitelist.h
xe_res_cursor.h drm/xe: Remove unnecessary drm_mm.h includes 2024-08-22 14:00:44 -04:00
xe_ring_ops.c
xe_ring_ops.h
xe_ring_ops_types.h
xe_rtp.c drm/xe: replace #include <drm/xe_drm.h> with <uapi/drm/xe_drm.h> 2024-08-28 15:17:54 -04:00
xe_rtp.h drm/xe/rtp: Expand max rules/actions per entry again 2024-07-29 11:19:40 -07:00
xe_rtp_helpers.h drm/xe/rtp: Expand max rules/actions per entry again 2024-07-29 11:19:40 -07:00
xe_rtp_types.h
xe_sa.c drm/xe: Update xe_sa to use xe_managed_bo_create_pin_map 2024-08-23 09:54:32 -07:00
xe_sa.h
xe_sa_types.h drm/xe: Update xe_sa to use xe_managed_bo_create_pin_map 2024-08-23 09:54:32 -07:00
xe_sched_job.c drm/xe: replace #include <drm/xe_drm.h> with <uapi/drm/xe_drm.h> 2024-08-28 15:17:54 -04:00
xe_sched_job.h
xe_sched_job_types.h
xe_sriov.c
xe_sriov.h
xe_sriov_pf.c
xe_sriov_pf.h
xe_sriov_pf_helpers.h
xe_sriov_printk.h
xe_sriov_types.h
xe_step.c drm/xe: remove display stepping handling 2024-08-22 15:48:21 +03:00
xe_step.h
xe_step_types.h drm/xe: remove display stepping handling 2024-08-22 15:48:21 +03:00
xe_sync.c drm/xe: Fix access_ok check in user_fence_create 2024-09-12 10:06:30 -04:00
xe_sync.h
xe_sync_types.h
xe_tile.c drm/xe/pcode: Treat pcode as per-tile rather than per-GT 2024-09-03 10:36:46 -04:00
xe_tile.h
xe_tile_sysfs.c
xe_tile_sysfs.h
xe_tile_sysfs_types.h
xe_trace.c
xe_trace.h Linux 6.11-rc5 2024-08-27 14:09:45 +02:00
xe_trace_bo.c
xe_trace_bo.h
xe_trace_guc.c
xe_trace_guc.h
xe_ttm_stolen_mgr.c drm/xe: Remove unnecessary drm_mm.h includes 2024-08-22 14:00:44 -04:00
xe_ttm_stolen_mgr.h
xe_ttm_sys_mgr.c Revert "drm/xe/lnl: Offload system clear page activity to GPU" 2024-08-28 06:45:52 -07:00
xe_ttm_sys_mgr.h
xe_ttm_vram_mgr.c drm/buddy: Add start address support to trim function 2024-08-07 18:19:00 -04:00
xe_ttm_vram_mgr.h
xe_ttm_vram_mgr_types.h
xe_tuning.c drm/xe/xe2: Add performance tuning for L3 cache flushing 2024-10-03 01:13:55 -05:00
xe_tuning.h
xe_uc.c
xe_uc.h
xe_uc_debugfs.c drm/xe/gsc: Add debugfs to print GSC info 2024-08-29 10:32:20 -07:00
xe_uc_debugfs.h
xe_uc_fw.c drm/xe/gsc: Track the platform in the compatibility version 2024-08-29 10:32:19 -07:00
xe_uc_fw.h drm/xe/gsc: Do not attempt to load the GSC multiple times 2024-09-03 10:36:38 -04:00
xe_uc_fw_abi.h
xe_uc_fw_types.h
xe_uc_types.h
xe_vm.c drm/xe/vm: move xa_alloc to prevent UAF 2024-10-03 01:22:05 -05:00
xe_vm.h
xe_vm_doc.h
xe_vm_types.h
xe_vram.c drm/xe/vram: fix ccs offset calculation 2024-09-17 23:22:28 -05:00
xe_vram.h
xe_vram_freq.c drm/xe/pcode: Treat pcode as per-tile rather than per-GT 2024-09-03 10:36:46 -04:00
xe_vram_freq.h
xe_wa.c drm/xe/xe2hpg: Add Wa_15016589081 2024-09-12 18:04:36 -05:00
xe_wa.h
xe_wa_oob.rules drm/xe/bmg: implement Wa_16023588340 2024-08-19 13:30:41 -04:00
xe_wait_user_fence.c drm/xe: replace #include <drm/xe_drm.h> with <uapi/drm/xe_drm.h> 2024-08-28 15:17:54 -04:00
xe_wait_user_fence.h
xe_wopcm.c
xe_wopcm.h
xe_wopcm_types.h