Hi Dave and Sima, This is indeed a hectic week on our drm-xe-fixes. - 10 of the patches here are patches that got recent merged. - 9 are extra patches, mostly workarounds, which were already in drm-xe-next, but not picked up for fixes due the lack of Fixes tag. Lucas had identified them on a backport effort and they look important for the overall stability, hence we are adding this for this round on top of the 10 regular fixes. The conflicts on taking them now were only trivial and solved getting the -next tree versions on a drm-tip rebuild. Everything recorded directly in drm-rerere, with no extra manual conflict handling needed. Thanks, Rodrigo. drm-xe-fixes-2024-08-22: UAPI Changes: - Fix OA format masks which were breaking build with gcc-5 (Geert) Driver Changes: - Fix opregion leak (Lucas) - Fix OA sysfs entry (Ashutosh) - Fix VM dma-resv lock (Brost) - Fix tile fini sequence (Brost) - Prevent UAF around preempt fence (Auld) - Fix DGFX display suspend/resume (Maarten) - Many Xe/Xe2 critical workarounds (Auld, Ngai-Mint, Bommu, Tejas, Daniele) - Fix devm/drmm issues (Daniele) - Fix missing workqueue destroy in xe_gt_pagefault (Stuart) - Drop HW fence pointer to HW fence ctx (Brost) - Free job before xe_exec_queue_put (Brost) The following changes since commit 47ac09b91befbb6a235ab620c32af719f8208399: Linux 6.11-rc4 (2024-08-18 13:17:27 -0700) are available in the Git repository at: https://gitlab.freedesktop.org/drm/xe/kernel.git tags/drm-xe-fixes-2024-08-22 for you to fetch changes up to 9e7f30563677fbeff62d368d5d2a5ac7aaa9746a: drm/xe: Free job before xe_exec_queue_put (2024-08-21 11:53:15 -0400) ---------------------------------------------------------------- UAPI Changes: - Fix OA format masks which were breaking build with gcc-5 (Geert) Driver Changes: - Fix opregion leak (Lucas) - Fix OA sysfs entry (Ashutosh) - Fix VM dma-resv lock (Brost) - Fix tile fini sequence (Brost) - Prevent UAF around preempt fence (Auld) - Fix DGFX display suspend/resume (Maarten) - Many Xe/Xe2 critical workarounds (Auld, Ngai-Mint, Bommu, Tejas, Daniele) - Fix devm/drmm issues (Daniele) - Fix missing workqueue destroy in xe_gt_pagefault (Stuart) - Drop HW fence pointer to HW fence ctx (Brost) - Free job before xe_exec_queue_put (Brost) ---------------------------------------------------------------- Ashutosh Dixit (1): drm/xe/observation: Drop empty sysctl table entry Bommu Krishnaiah (1): drm/xe/xe2lpg: Extend workaround 14021402888 Daniele Ceraolo Spurio (3): drm/xe: fix WA 14018094691 drm/xe: use devm instead of drmm for managed bo drm/xe/uc: Use devm to register cleanup that includes exec_queues Geert Uytterhoeven (1): drm/xe/oa/uapi: Make bit masks unsigned Lucas De Marchi (1): drm/xe: Fix opregion leak Maarten Lankhorst (1): drm/xe/display: Make display suspend/resume work on discrete Matthew Auld (2): drm/xe: prevent UAF around preempt fence drm/xe/bmg: implement Wa_16023588340 Matthew Brost (4): drm/xe: Move VM dma-resv lock from xe_exec_queue_create to __xe_exec_queue_init drm/xe: Fix tile fini sequence drm/xe: Drop HW fence pointer to HW fence ctx drm/xe: Free job before xe_exec_queue_put Ngai-Mint Kwan (1): drm/xe/xe2lpm: Extend Wa_16021639441 Stuart Summers (1): drm/xe: Fix missing workqueue destroy in xe_gt_pagefault Tejas Upadhyay (3): drm/xe/xe2: Make subsequent L2 flush sequential drm/xe/xe2: Add Wa_15015404425 drm/xe/xe2hpg: Add Wa_14021821874 drivers/gpu/drm/xe/Makefile | 2 ++ drivers/gpu/drm/xe/display/xe_display.c | 28 ++++++++++++++- drivers/gpu/drm/xe/display/xe_dsb_buffer.c | 8 +++++ drivers/gpu/drm/xe/display/xe_fb_pin.c | 3 ++ drivers/gpu/drm/xe/regs/xe_gt_regs.h | 9 +++++ drivers/gpu/drm/xe/xe_bo.c | 6 ++-- drivers/gpu/drm/xe/xe_device.c | 32 +++++++++++++++++ drivers/gpu/drm/xe/xe_device.h | 1 + drivers/gpu/drm/xe/xe_exec_queue.c | 24 +++++++------ drivers/gpu/drm/xe/xe_exec_queue_types.h | 2 -- drivers/gpu/drm/xe/xe_gsc.c | 8 ++--- drivers/gpu/drm/xe/xe_gt.c | 55 +++++++++++++++++++++++++++++ drivers/gpu/drm/xe/xe_gt_pagefault.c | 18 ++++++++-- drivers/gpu/drm/xe/xe_gt_types.h | 6 ++++ drivers/gpu/drm/xe/xe_guc_submit.c | 4 +-- drivers/gpu/drm/xe/xe_hw_fence.c | 9 ++--- drivers/gpu/drm/xe/xe_hw_fence_types.h | 7 ++-- drivers/gpu/drm/xe/xe_mmio.c | 28 ++++++++++++++- drivers/gpu/drm/xe/xe_observation.c | 1 - drivers/gpu/drm/xe/xe_pat.c | 11 +++++- drivers/gpu/drm/xe/xe_pm.c | 11 +++--- drivers/gpu/drm/xe/xe_preempt_fence.c | 3 +- drivers/gpu/drm/xe/xe_preempt_fence_types.h | 2 ++ drivers/gpu/drm/xe/xe_sched_job.c | 3 +- drivers/gpu/drm/xe/xe_trace.h | 2 +- drivers/gpu/drm/xe/xe_wa.c | 18 ++++++++++ drivers/gpu/drm/xe/xe_wa_oob.rules | 1 + include/uapi/drm/xe_drm.h | 8 ++--- 28 files changed, 265 insertions(+), 45 deletions(-)