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>,
"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: Tue, 30 Dec 2025 10:58:40 +0100 [thread overview]
Message-ID: <aVOiULyYdnFbq-JB@fedora> (raw)
Hi Dave, Simona
This week's drm-xe-next PR (Rodrigo is out this week).
Two big series, the SRIOV scheduler groups, and
multi-device SVM. The latter may conflict somewhat with
fixes, but conflict resolutions are in drm-rerere and
should be resolved to the -next code anyway.
The multi-device SVM also touches UAPI.
Thanks,
Thomas
drm-xe-next-2025-12-30:
Core Changes:
- Dynamic pagemaps and multi-device SVM (Thomas)
Driver Changes:
- Introduce SRIOV scheduler Groups (Daniele)
- Configure migration queue as low latency (Francois)
- Don't use absolute path in generated header comment (Calvin Owens)
- Add SoC remapper support for system controller (Umesh)
- Insert compiler barriers in GuC code (Jonathan)
- Rebar updates (Lucas)
The following changes since commit 844758bd99a86e6a07247784727fb337c4b979ca:
drm/xe: Print GuC queue submission state on engine reset (2025-12-19 11:45:29 -0800)
are available in the Git repository at:
https://gitlab.freedesktop.org/drm/xe/kernel.git tags/drm-xe-next-2025-12-30
for you to fetch changes up to 0b075f82935e82fc9fff90d06d2a161caaebd9c3:
drm/xe: Improve rebar log messages (2025-12-24 07:59:35 -0800)
----------------------------------------------------------------
Core Changes:
- Dynamic pagemaps and multi-device SVM (Thomas)
Driver Changes:
- Introduce SRIOV scheduler Groups (Daniele)
- Configure migration queue as low latency (Francois)
- Don't use absolute path in generated header comment (Calvin Owens)
- Add SoC remapper support for system controller (Umesh)
- Insert compiler barriers in GuC code (Jonathan)
- Rebar updates (Lucas)
----------------------------------------------------------------
Calvin Owens (1):
drm/xe: Don't use absolute path in generated header comment
Daniele Ceraolo Spurio (12):
drm/xe/gt: Add engine masks for each class
drm/gt/guc: extract scheduler-related defines from guc_fwif.h
drm/xe/pf: Initialize scheduler groups
drm/xe/pf: Add support for enabling scheduler groups
drm/xe/pf: Scheduler groups are incompatible with multi-lrc
drm/xe/vf: Check if scheduler groups are enabled
drm/xe/pf: Add debugfs to enable scheduler groups
drm/xe/pf: Add debugfs with scheduler groups information
drm/xe/pf: Prep for multiple exec quantums and preemption timeouts
drm/xe/pf: Add functions to set exec quantums for each group
drm/xe/pf: Add functions to set preempt timeouts for each group
drm/xe/pf: Add debugfs to set EQ and PT for scheduler groups
Francois Dugast (1):
drm/xe/migrate: Configure migration queue as low latency
Jonathan Cavitt (2):
drm/xe/guc: READ/WRITE_ONCE g2h_fence->done
drm/xe/guc: READ/WRITE_ONCE ct->state
Lucas De Marchi (2):
drm/xe: Move rebar to its own file
drm/xe: Improve rebar log messages
Thomas Hellström (24):
drm/xe/svm: Fix a debug printout
drm/pagemap: Remove some dead code
drm/pagemap, drm/xe: Ensure that the devmem allocation is idle before use
drm/pagemap, drm/xe: Add refcounting to struct drm_pagemap
drm/pagemap: Add a refcounted drm_pagemap backpointer to struct drm_pagemap_zdd
drm/pagemap, drm/xe: Manage drm_pagemap provider lifetimes
drm/pagemap: Add a drm_pagemap cache and shrinker
drm/xe: Use the drm_pagemap cache and shrinker
drm/pagemap: Remove the drm_pagemap_create() interface
drm/pagemap_util: Add a utility to assign an owner to a set of interconnected gpus
drm/xe: Use the drm_pagemap_util helper to get a svm pagemap owner
drm/xe: Pass a drm_pagemap pointer around with the memory advise attributes
drm/xe: Use the vma attibute drm_pagemap to select where to migrate
drm/xe: Simplify madvise_preferred_mem_loc()
drm/xe/uapi: Extend the madvise functionality to support foreign pagemap placement for svm
drm/xe: Support pcie p2p dma as a fast interconnect
drm/xe/vm: Add a couple of VM debug printouts
drm/xe/svm: Document how xe keeps drm_pagemap references
drm/pagemap, drm/xe: Clean up the use of the device-private page owner
drm/gpusvm: Introduce a function to scan the current migration state
drm/xe: Use drm_gpusvm_scan_mm()
drm/pagemap, drm/xe: Support destination migration over interconnect
drm/pagemap: Support source migration over interconnect
drm/xe/svm: Serialize migration to device if racing
Umesh Nerlige Ramappa (3):
drm/xe/soc_remapper: Initialize SoC remapper during Xe probe
drm/xe/soc_remapper: Use SoC remapper helper from VSEC code
drm/xe/soc_remapper: Add system controller config for SoC remapper
drivers/gpu/drm/Makefile | 3 +-
drivers/gpu/drm/drm_gpusvm.c | 124 ++++
drivers/gpu/drm/drm_pagemap.c | 563 +++++++++++++++---
drivers/gpu/drm/drm_pagemap_util.c | 568 ++++++++++++++++++
drivers/gpu/drm/xe/Makefile | 2 +
drivers/gpu/drm/xe/abi/guc_klvs_abi.h | 64 ++
drivers/gpu/drm/xe/abi/guc_scheduler_abi.h | 57 ++
drivers/gpu/drm/xe/regs/xe_pmt.h | 3 -
drivers/gpu/drm/xe/regs/xe_soc_remapper_regs.h | 14 +
drivers/gpu/drm/xe/xe_device.c | 25 +
drivers/gpu/drm/xe/xe_device.h | 2 +
drivers/gpu/drm/xe/xe_device_types.h | 21 +
drivers/gpu/drm/xe/xe_exec_queue.c | 19 +
drivers/gpu/drm/xe/xe_gen_wa_oob.c | 3 +-
drivers/gpu/drm/xe/xe_gt.h | 12 +-
drivers/gpu/drm/xe/xe_gt_ccs_mode.c | 8 +-
drivers/gpu/drm/xe/xe_gt_ccs_mode.h | 2 +-
drivers/gpu/drm/xe/xe_gt_sriov_pf.c | 20 +
drivers/gpu/drm/xe/xe_gt_sriov_pf.h | 8 +
drivers/gpu/drm/xe/xe_gt_sriov_pf_config.c | 279 ++++++++-
drivers/gpu/drm/xe/xe_gt_sriov_pf_config.h | 10 +
drivers/gpu/drm/xe/xe_gt_sriov_pf_config_types.h | 5 +-
drivers/gpu/drm/xe/xe_gt_sriov_pf_debugfs.c | 295 +++++++++
drivers/gpu/drm/xe/xe_gt_sriov_pf_policy.c | 329 ++++++++++
drivers/gpu/drm/xe/xe_gt_sriov_pf_policy.h | 10 +
drivers/gpu/drm/xe/xe_gt_sriov_pf_policy_types.h | 39 ++
drivers/gpu/drm/xe/xe_gt_sriov_vf.c | 67 +++
drivers/gpu/drm/xe/xe_gt_sriov_vf.h | 1 +
drivers/gpu/drm/xe/xe_gt_sriov_vf_types.h | 2 +
drivers/gpu/drm/xe/xe_guc.c | 2 +-
drivers/gpu/drm/xe/xe_guc_capture.h | 2 +-
drivers/gpu/drm/xe/xe_guc_ct.c | 21 +-
drivers/gpu/drm/xe/xe_guc_ct.h | 6 +-
drivers/gpu/drm/xe/xe_guc_fwif.h | 54 +-
drivers/gpu/drm/xe/xe_guc_klv_helpers.c | 9 +
drivers/gpu/drm/xe/xe_guc_submit.c | 40 +-
drivers/gpu/drm/xe/xe_guc_submit.h | 2 +
drivers/gpu/drm/xe/xe_migrate.c | 32 +-
drivers/gpu/drm/xe/xe_migrate.h | 6 +-
drivers/gpu/drm/xe/xe_pci.c | 8 +-
drivers/gpu/drm/xe/xe_pci_rebar.c | 106 ++++
drivers/gpu/drm/xe/xe_pci_rebar.h | 13 +
drivers/gpu/drm/xe/xe_pci_types.h | 2 +
drivers/gpu/drm/xe/xe_soc_remapper.c | 52 ++
drivers/gpu/drm/xe/xe_soc_remapper.h | 13 +
drivers/gpu/drm/xe/xe_svm.c | 727 +++++++++++++++++++----
drivers/gpu/drm/xe/xe_svm.h | 85 ++-
drivers/gpu/drm/xe/xe_tile.c | 34 +-
drivers/gpu/drm/xe/xe_tile.h | 21 +
drivers/gpu/drm/xe/xe_userptr.c | 2 +-
drivers/gpu/drm/xe/xe_vm.c | 65 +-
drivers/gpu/drm/xe/xe_vm.h | 1 +
drivers/gpu/drm/xe/xe_vm_madvise.c | 106 +++-
drivers/gpu/drm/xe/xe_vm_types.h | 21 +-
drivers/gpu/drm/xe/xe_vram.c | 91 ---
drivers/gpu/drm/xe/xe_vram.h | 1 -
drivers/gpu/drm/xe/xe_vram_types.h | 15 +-
drivers/gpu/drm/xe/xe_vsec.c | 6 +-
include/drm/drm_gpusvm.h | 29 +
include/drm/drm_pagemap.h | 128 +++-
include/drm/drm_pagemap_util.h | 92 +++
include/uapi/drm/xe_drm.h | 18 +-
62 files changed, 3880 insertions(+), 485 deletions(-)
create mode 100644 drivers/gpu/drm/drm_pagemap_util.c
create mode 100644 drivers/gpu/drm/xe/abi/guc_scheduler_abi.h
create mode 100644 drivers/gpu/drm/xe/regs/xe_soc_remapper_regs.h
create mode 100644 drivers/gpu/drm/xe/xe_pci_rebar.c
create mode 100644 drivers/gpu/drm/xe/xe_pci_rebar.h
create mode 100644 drivers/gpu/drm/xe/xe_soc_remapper.c
create mode 100644 drivers/gpu/drm/xe/xe_soc_remapper.h
create mode 100644 include/drm/drm_pagemap_util.h
next reply other threads:[~2025-12-30 9:58 UTC|newest]
Thread overview: 52+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-12-30 9:58 Thomas Hellstrom [this message]
-- strict thread matches above, loose matches on Subject: below --
2025-12-19 22:41 [PULL] drm-xe-next 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
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=aVOiULyYdnFbq-JB@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=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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).