From: Thomas Hellstrom <thomas.hellstrom@linux.intel.com>
To: Dave Airlie <airlied@gmail.com>, Simona Vetter <simona.vetter@ffwll.ch>
Cc: "Jani Nikula" <jani.nikula@linux.intel.com>,
"Joonas Lahtinen" <joonas.lahtinen@linux.intel.com>,
"Tvrtko Ursulin" <tursulin@ursulin.net>,
"Rodrigo Vivi" <rodrigo.vivi@intel.com>,
"Thomas Zimmermann" <tzimmermann@suse.de>,
"Maarten Lankhorst" <maarten.lankhorst@linux.intel.com>,
"Maxime Ripard" <mripard@kernel.org>,
"Matthew Brost" <matthew.brost@intel.com>,
"Thomas Hellström" <thomas.hellstrom@linux.intel.com>,
"Oded Gabbay" <ogabbay@kernel.org>,
dri-devel@lists.freedesktop.org, intel-gfx@lists.freedesktop.org,
intel-xe@lists.freedesktop.org, dim-tools@lists.freedesktop.org
Subject: [PULL] drm-xe-next
Date: Thu, 14 May 2026 15:20:41 +0200 [thread overview]
Message-ID: <agXMKRRl1oxB204x@fedora> (raw)
Hi, Dave & Simona
The drm-xe-next PR for this week:
Series highlights:
- Support run ticks for multi-queue use case
11/11 patches pushed
In multi-queue scenarios the CTX_TIMESTAMP represents run ticks of all
queues combined. To determine individual queue run ticks, QUEUE TIMESTAMP
must be used instead. The series adds support to read QUEUE TIMESTAMP for
multi-queue use cases, including LRC snapshot support, trace events, and
the infrastructure to capture queue run times for active queues.
(Umesh Nerlige Ramappa, Matthew Brost)
- Refactor functions implementing the blt batch
3/3 patches
Functions implementing batch buffers for blitter instructions (MEM_SET,
MEM_COPY, XY_FAST_COPY, XY_FAST_COLOR) used hardcoded fixed instruction
lengths. Replaces these with a helper function that returns the correct
length based on the platform, as preparatory work for upcoming platforms
where these instruction lengths will increase.
(Balasubramani Vivekanandan)
- drm/xe/memirq: Update interrupt handler logic
2/2 patches
A new programming note for memory-based interrupts was released. Updates
the interrupt handler to follow the new note and stops enabling all
GT_MI_USER_INTERRUPTs to avoid unnecessary empty processing cycles.
(Michal Wajdeczko)
- drm/xe/dma-buf: UAF and race condition fixes
2/2 patches
Fixes two use-after-free and race conditions in the dma-buf import path.
The invalidate_mappings hook could be called back into with a partially
initialized or already freed buffer object. Fixes this by moving the
attach step until after the buffer object is fully set up.
(Matthew Auld)
- drm/xe/multi_queue: Code refactor and cleanup
2/2 patches
Removes a redundant assignment in guc_exec_queue_run_job and refactors
the CGP_SYNC send path to reduce code size and improve clarity.
(Niranjana Vishwanathapura)
- More MERTOA WA's
4/4 patches
Two hardware workarounds for the MERTOA OA unit. Wa_14026746987
restricts the supported OA format to XE_OAM_FORMAT_MPEC8u32_B8_C8.
Wa_14026779378 blocks the SYS_MEM_LAT_MEASURE_EN bit to prevent memory
corruption. Also includes a refactor of oa_unit_supports_oa_format and
a new val argument to xe_oa_is_valid_config_reg.
(Ashutosh Dixit)
Individual commits:
- drm/xe: Drop unused ggtt_balloon field (Michal Wajdeczko)
- drm/xe/devcoredump: Drop a FIXME in devcoredump (Shekhar Chauhan)
- drm/xe/eustall: Return ENODEV from read if EU stall registers get reset (Harish Chegondi)
- drm/xe: Make decision to use Xe2-style blitter instructions a feature flag (Matt Roper)
- drm/xe: Convert stolen memory over to ttm_range_manager (Sanjay Yadav)
- drm/xe/madvise: Track purgeability with BO-local counters (Arvind Yadav)
- drm/xe/cri: Add new PCI IDs (Balasubramani Vivekanandan)
- drm/xe/xe_survivability: Simplify runtime survivability error handling (Mallesh Koujalagi)
- drm/xe/guc: Exclude indirect ring state page from ADS engine state size (Satyanarayana K V P)
- drm/xe/hw_error: Cleanup array map (Raag Jadav)
- drm/xe/pf: Fix MMIO access using PF view instead of VF view during migration (Shuicheng Lin)
- drm/xe/pf: Fix EAGAIN sign in pf_migration_consume() (Shuicheng Lin)
Thanks,
Thomas
drm-xe-next-2026-05-14:
Driver Changes:
- drm/xe/cri: Add new PCI IDs (Balasubramani Vivekanandan)
- drm/xe/memirq: Enable GT_MI_USER_INTERRUPT only (Michal Wajdeczko)
- drm/xe/memirq: Update interrupt handler logic (Michal Wajdeczko)
- drm/xe: Drop unused ggtt_balloon field (Michal Wajdeczko)
- drm/xe: Refactor emit_xy_fast_copy and emit_mem_copy functions (Balasubramani Vivekanandan)
- drm/xe: Refactor emit_clear_link_copy (Balasubramani Vivekanandan)
- drm/xe: Refactor emit_clear_main_copy (Balasubramani Vivekanandan)
- drm/xe/devcoredump: Drop a FIXME in devcoredump (Shekhar Chauhan)
- drm/xe/oa: MERTOA Wa_14026779378 (Ashutosh Dixit)
- drm/xe/oa: Add val arg to xe_oa_is_valid_config_reg (Ashutosh Dixit)
- drm/xe/oa: MERTOA Wa_14026746987 (Ashutosh Dixit)
- drm/xe/oa: Refactor oa_unit_supports_oa_format (Ashutosh Dixit)
- drm/xe/dma-buf: fix UAF with retry loop (Matthew Auld)
- drm/xe/dma-buf: handle empty bo and UAF races (Matthew Auld)
- drm/xe/multi_queue: Whitelist QUEUE_TIMESTAMP register (Umesh Nerlige Ramappa)
- drm/xe/multi_queue: Use QUEUE_TIMESTAMP as job timestamp for multi-queue (Umesh Nerlige Ramappa)
- drm/xe/multi_queue: Add trace event for the multi queue timestamp (Umesh Nerlige Ramappa)
- drm/xe/multi_queue: Capture queue run times for active queues (Umesh Nerlige Ramappa)
- drm/xe/lrc: Refactor out engine id to hwe conversion (Umesh Nerlige Ramappa)
- drm/xe/multi_queue: Add helpers to access CS QUEUE TIMESTAMP from lrc (Umesh Nerlige Ramappa)
- drm/xe/multi_queue: Store primary LRC and position info in LRC (Umesh Nerlige Ramappa)
- drm/xe/multi_queue: Refactor check for multi queue support for engine class (Umesh Nerlige Ramappa)
- drm/xe/lrc: Refactor xe_lrc_timestamp to simplify logic (Umesh Nerlige Ramappa)
- drm/xe: Add timestamp_ms to LRC snapshot (Matthew Brost)
- drm/xe/lrc: Use 64 bit ctx timestamp in the LRC snapshot (Umesh Nerlige Ramappa)
- drm/xe/eustall: Return ENODEV from read if EU stall registers get reset (Harish Chegondi)
- drm/xe/multi_queue: Refactor CGP_SYNC send path (Niranjana Vishwanathapura)
- drm/xe/multi_queue: Remove redundant assignment in guc_exec_queue_run_job (Niranjana Vishwanathapura)
- drm/xe: Make decision to use Xe2-style blitter instructions a feature flag (Matt Roper)
- drm/xe: Convert stolen memory over to ttm_range_manager (Sanjay Yadav)
- drm/xe/madvise: Track purgeability with BO-local counters (Arvind Yadav)
- drm/xe/xe_survivability: Simplify runtime survivability error handling (Mallesh Koujalagi)
- drm/xe/guc: Exclude indirect ring state page from ADS engine state size (Satyanarayana K V P)
- drm/xe/hw_error: Cleanup array map (Raag Jadav)
- drm/xe/pf: Fix MMIO access using PF view instead of VF view during migration (Shuicheng Lin)
- drm/xe/pf: Fix EAGAIN sign in pf_migration_consume() (Shuicheng Lin)
The following changes since commit f96538285cfdbb3acf5e3356e0bb88c38815790b:
Merge tag 'drm-misc-next-2026-05-07' of https://gitlab.freedesktop.org/drm/misc/kernel into drm-next (2026-05-08 14:16:04 +1000)
are available in the Git repository at:
https://gitlab.freedesktop.org/drm/xe/kernel.git tags/drm-xe-next-2026-05-14
for you to fetch changes up to 2ddedd4b7b7c329dd65358025cba8652675bec3d:
drm/xe/memirq: Enable GT_MI_USER_INTERRUPT only (2026-05-13 20:11:21 +0200)
----------------------------------------------------------------
Driver Changes:
- drm/xe/cri: Add new PCI IDs (Balasubramani Vivekanandan)
- drm/xe/memirq: Enable GT_MI_USER_INTERRUPT only (Michal Wajdeczko)
- drm/xe/memirq: Update interrupt handler logic (Michal Wajdeczko)
- drm/xe: Drop unused ggtt_balloon field (Michal Wajdeczko)
- drm/xe: Refactor emit_xy_fast_copy and emit_mem_copy functions (Balasubramani Vivekanandan)
- drm/xe: Refactor emit_clear_link_copy (Balasubramani Vivekanandan)
- drm/xe: Refactor emit_clear_main_copy (Balasubramani Vivekanandan)
- drm/xe/devcoredump: Drop a FIXME in devcoredump (Shekhar Chauhan)
- drm/xe/oa: MERTOA Wa_14026779378 (Ashutosh Dixit)
- drm/xe/oa: Add val arg to xe_oa_is_valid_config_reg (Ashutosh Dixit)
- drm/xe/oa: MERTOA Wa_14026746987 (Ashutosh Dixit)
- drm/xe/oa: Refactor oa_unit_supports_oa_format (Ashutosh Dixit)
- drm/xe/dma-buf: fix UAF with retry loop (Matthew Auld)
- drm/xe/dma-buf: handle empty bo and UAF races (Matthew Auld)
- drm/xe/multi_queue: Whitelist QUEUE_TIMESTAMP register (Umesh Nerlige Ramappa)
- drm/xe/multi_queue: Use QUEUE_TIMESTAMP as job timestamp for multi-queue (Umesh Nerlige Ramappa)
- drm/xe/multi_queue: Add trace event for the multi queue timestamp (Umesh Nerlige Ramappa)
- drm/xe/multi_queue: Capture queue run times for active queues (Umesh Nerlige Ramappa)
- drm/xe/lrc: Refactor out engine id to hwe conversion (Umesh Nerlige Ramappa)
- drm/xe/multi_queue: Add helpers to access CS QUEUE TIMESTAMP from lrc (Umesh Nerlige Ramappa)
- drm/xe/multi_queue: Store primary LRC and position info in LRC (Umesh Nerlige Ramappa)
- drm/xe/multi_queue: Refactor check for multi queue support for engine class (Umesh Nerlige Ramappa)
- drm/xe/lrc: Refactor xe_lrc_timestamp to simplify logic (Umesh Nerlige Ramappa)
- drm/xe: Add timestamp_ms to LRC snapshot (Matthew Brost)
- drm/xe/lrc: Use 64 bit ctx timestamp in the LRC snapshot (Umesh Nerlige Ramappa)
- drm/xe/eustall: Return ENODEV from read if EU stall registers get reset (Harish Chegondi)
- drm/xe/multi_queue: Refactor CGP_SYNC send path (Niranjana Vishwanathapura)
- drm/xe/multi_queue: Remove redundant assignment in guc_exec_queue_run_job (Niranjana Vishwanathapura)
- drm/xe: Make decision to use Xe2-style blitter instructions a feature flag (Matt Roper)
- drm/xe: Convert stolen memory over to ttm_range_manager (Sanjay Yadav)
- drm/xe/madvise: Track purgeability with BO-local counters (Arvind Yadav)
- drm/xe/xe_survivability: Simplify runtime survivability error handling (Mallesh Koujalagi)
- drm/xe/guc: Exclude indirect ring state page from ADS engine state size (Satyanarayana K V P)
- drm/xe/hw_error: Cleanup array map (Raag Jadav)
- drm/xe/pf: Fix MMIO access using PF view instead of VF view during migration (Shuicheng Lin)
- drm/xe/pf: Fix EAGAIN sign in pf_migration_consume() (Shuicheng Lin)
----------------------------------------------------------------
Arvind Yadav (1):
drm/xe/madvise: Track purgeability with BO-local counters
Ashutosh Dixit (4):
drm/xe/oa: Refactor oa_unit_supports_oa_format
drm/xe/oa: MERTOA Wa_14026746987
drm/xe/oa: Add val arg to xe_oa_is_valid_config_reg
drm/xe/oa: MERTOA Wa_14026779378
Balasubramani Vivekanandan (4):
drm/xe/cri: Add new PCI IDs
drm/xe: Refactor emit_clear_main_copy
drm/xe: Refactor emit_clear_link_copy
drm/xe: Refactor emit_xy_fast_copy and emit_mem_copy functions
Harish Chegondi (1):
drm/xe/eustall: Return ENODEV from read if EU stall registers get reset
Mallesh Koujalagi (1):
drm/xe/xe_survivability: Simplify runtime survivability error handling
Matt Roper (1):
drm/xe: Make decision to use Xe2-style blitter instructions a feature flag
Matthew Auld (2):
drm/xe/dma-buf: handle empty bo and UAF races
drm/xe/dma-buf: fix UAF with retry loop
Matthew Brost (1):
drm/xe: Add timestamp_ms to LRC snapshot
Michal Wajdeczko (3):
drm/xe: Drop unused ggtt_balloon field
drm/xe/memirq: Update interrupt handler logic
drm/xe/memirq: Enable GT_MI_USER_INTERRUPT only
Niranjana Vishwanathapura (2):
drm/xe/multi_queue: Remove redundant assignment in guc_exec_queue_run_job
drm/xe/multi_queue: Refactor CGP_SYNC send path
Raag Jadav (1):
drm/xe/hw_error: Cleanup array map
Sanjay Yadav (1):
drm/xe: Convert stolen memory over to ttm_range_manager
Satyanarayana K V P (1):
drm/xe/guc: Exclude indirect ring state page from ADS engine state size
Shekhar Chauhan (1):
drm/xe/devcoredump: Drop a FIXME in devcoredump
Shuicheng Lin (2):
drm/xe/pf: Fix EAGAIN sign in pf_migration_consume()
drm/xe/pf: Fix MMIO access using PF view instead of VF view during migration
Thomas Hellström (1):
Merge drm/drm-next into drm-xe-next
Umesh Nerlige Ramappa (10):
drm/xe/lrc: Use 64 bit ctx timestamp in the LRC snapshot
drm/xe/lrc: Refactor xe_lrc_timestamp to simplify logic
drm/xe/multi_queue: Refactor check for multi queue support for engine class
drm/xe/multi_queue: Store primary LRC and position info in LRC
drm/xe/multi_queue: Add helpers to access CS QUEUE TIMESTAMP from lrc
drm/xe/lrc: Refactor out engine id to hwe conversion
drm/xe/multi_queue: Capture queue run times for active queues
drm/xe/multi_queue: Add trace event for the multi queue timestamp
drm/xe/multi_queue: Use QUEUE_TIMESTAMP as job timestamp for multi-queue
drm/xe/multi_queue: Whitelist QUEUE_TIMESTAMP register
drivers/gpu/drm/xe/display/xe_display_bo.c | 2 +-
drivers/gpu/drm/xe/instructions/xe_gpu_commands.h | 4 +-
drivers/gpu/drm/xe/regs/xe_engine_regs.h | 4 +
drivers/gpu/drm/xe/regs/xe_lrc_layout.h | 3 +
drivers/gpu/drm/xe/regs/xe_oa_regs.h | 3 +
drivers/gpu/drm/xe/tests/xe_migrate.c | 2 +-
drivers/gpu/drm/xe/xe_bo.c | 22 +-
drivers/gpu/drm/xe/xe_bo.h | 88 +++++++-
drivers/gpu/drm/xe/xe_bo_types.h | 28 ++-
drivers/gpu/drm/xe/xe_device_types.h | 3 +
drivers/gpu/drm/xe/xe_device_wa_oob.rules | 2 +
drivers/gpu/drm/xe/xe_dma_buf.c | 80 ++++---
drivers/gpu/drm/xe/xe_eu_stall.c | 40 +++-
drivers/gpu/drm/xe/xe_exec_queue.c | 14 +-
drivers/gpu/drm/xe/xe_gt.h | 15 ++
drivers/gpu/drm/xe/xe_gt_sriov_pf_migration.c | 8 +-
drivers/gpu/drm/xe/xe_gt_types.h | 7 +
drivers/gpu/drm/xe/xe_guc_ads.c | 5 +-
drivers/gpu/drm/xe/xe_guc_capture.c | 6 -
drivers/gpu/drm/xe/xe_guc_submit.c | 69 ++----
drivers/gpu/drm/xe/xe_hw_error.c | 32 ++-
drivers/gpu/drm/xe/xe_lrc.c | 253 +++++++++++++++++-----
drivers/gpu/drm/xe/xe_lrc.h | 12 +-
drivers/gpu/drm/xe/xe_lrc_types.h | 11 +
drivers/gpu/drm/xe/xe_memirq.c | 32 ++-
drivers/gpu/drm/xe/xe_migrate.c | 75 ++++---
drivers/gpu/drm/xe/xe_oa.c | 40 ++--
drivers/gpu/drm/xe/xe_pci.c | 9 +
drivers/gpu/drm/xe/xe_reg_whitelist.c | 14 ++
drivers/gpu/drm/xe/xe_res_cursor.h | 14 +-
drivers/gpu/drm/xe/xe_ring_ops.c | 8 +-
drivers/gpu/drm/xe/xe_sriov_pf_migration.c | 7 +-
drivers/gpu/drm/xe/xe_survivability_mode.c | 14 +-
drivers/gpu/drm/xe/xe_survivability_mode.h | 2 +-
drivers/gpu/drm/xe/xe_tile_types.h | 2 -
drivers/gpu/drm/xe/xe_trace_lrc.h | 27 +++
drivers/gpu/drm/xe/xe_ttm_stolen_mgr.c | 64 ++----
drivers/gpu/drm/xe/xe_ttm_stolen_mgr.h | 12 +
drivers/gpu/drm/xe/xe_ttm_vram_mgr.c | 11 +-
drivers/gpu/drm/xe/xe_vm.c | 51 ++++-
drivers/gpu/drm/xe/xe_vm_madvise.c | 162 +-------------
drivers/gpu/drm/xe/xe_vm_madvise.h | 2 -
include/drm/intel/pciids.h | 6 +-
43 files changed, 779 insertions(+), 486 deletions(-)
next reply other threads:[~2026-05-14 13:20 UTC|newest]
Thread overview: 68+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-05-14 13:20 Thomas Hellstrom [this message]
-- strict thread matches above, loose matches on Subject: below --
2026-04-30 13:00 [PULL] drm-xe-next Thomas Hellstrom
2026-03-27 3:24 Matthew Brost
2026-03-26 4:44 Matthew Brost
2026-03-12 14:57 Matthew Brost
2026-03-02 22:40 Matthew Brost
2026-01-15 16:16 Rodrigo Vivi
2025-12-30 9:58 Thomas Hellstrom
2025-12-19 22:41 Rodrigo Vivi
2025-11-14 10:49 Thomas Hellstrom
2025-11-17 20:56 ` Dave Airlie
2025-11-18 8:34 ` Thomas Hellström
2025-11-05 16:53 Thomas Hellstrom
2025-10-28 11:16 Thomas Hellstrom
2025-10-31 17:46 ` Simona Vetter
2025-10-20 8:31 Thomas Hellstrom
2025-10-24 11:26 ` Simona Vetter
2025-09-19 14:53 Lucas De Marchi
2025-08-29 22:00 Lucas De Marchi
2025-07-15 18:21 Rodrigo Vivi
2025-07-10 22:16 Rodrigo Vivi
2025-07-11 9:12 ` Simona Vetter
2025-07-11 9:25 ` Simona Vetter
2025-06-18 20:05 Rodrigo Vivi
2025-05-08 16:01 Thomas Hellstrom
2025-04-28 16:03 Thomas Hellstrom
2025-04-28 14:27 Thomas Hellstrom
2025-04-28 15:40 ` Thomas Hellström
2025-04-17 10:22 Thomas Hellstrom
2025-03-07 8:02 Lucas De Marchi
2025-03-07 14:51 ` Lucas De Marchi
2025-03-07 19:04 ` Lucas De Marchi
2025-02-24 18:50 Lucas De Marchi
2025-01-10 14:54 Rodrigo Vivi
2025-01-07 19:01 Rodrigo Vivi
2024-12-11 23:27 Rodrigo Vivi
2024-10-31 11:50 Thomas Hellstrom
2024-10-24 17:52 Thomas Hellstrom
2024-10-24 19:22 ` Matthew Brost
2024-10-25 7:30 ` Thomas Hellström
2024-10-25 9:34 ` Jani Nikula
2024-10-25 10:45 ` Thomas Hellström
2024-10-25 22:26 ` Matthew Brost
2024-10-17 9:32 Thomas Hellstrom
2024-10-10 9:56 Thomas Hellstrom
2024-09-06 2:29 Lucas De Marchi
2024-08-28 19:18 Lucas De Marchi
2024-08-22 20:55 Lucas De Marchi
2024-08-27 10:51 ` Daniel Vetter
2024-07-30 22:39 Lucas De Marchi
2024-07-02 19:02 Rodrigo Vivi
2024-07-05 8:18 ` Daniel Vetter
2024-06-26 22:32 Rodrigo Vivi
2024-06-06 21:43 Rodrigo Vivi
2024-04-23 12:54 Thomas Hellstrom
2024-02-26 3:21 Lucas De Marchi
2024-02-26 9:58 ` Daniel Vetter
2024-02-26 10:46 ` Daniel Stone
2024-02-26 14:16 ` Lucas De Marchi
2023-12-15 22:28 Rodrigo Vivi
2023-12-17 12:35 ` Oded Gabbay
2023-12-17 12:35 ` Oded Gabbay
2023-12-18 12:09 ` Oded Gabbay
2023-12-18 12:09 ` Oded Gabbay
2023-12-18 14:27 ` Oded Gabbay
2023-12-18 14:27 ` Oded Gabbay
2023-12-19 7:17 ` Ohad Sharabi
2023-12-19 9:15 ` Dani Liberman
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=agXMKRRl1oxB204x@fedora \
--to=thomas.hellstrom@linux.intel.com \
--cc=airlied@gmail.com \
--cc=dim-tools@lists.freedesktop.org \
--cc=dri-devel@lists.freedesktop.org \
--cc=intel-gfx@lists.freedesktop.org \
--cc=intel-xe@lists.freedesktop.org \
--cc=jani.nikula@linux.intel.com \
--cc=joonas.lahtinen@linux.intel.com \
--cc=maarten.lankhorst@linux.intel.com \
--cc=matthew.brost@intel.com \
--cc=mripard@kernel.org \
--cc=ogabbay@kernel.org \
--cc=rodrigo.vivi@intel.com \
--cc=simona.vetter@ffwll.ch \
--cc=tursulin@ursulin.net \
--cc=tzimmermann@suse.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.