All of lore.kernel.org
 help / color / mirror / Atom feed
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

             reply	other threads:[~2025-12-30  9:58 UTC|newest]

Thread overview: 68+ 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 --
2026-05-14 13:20 [PULL] drm-xe-next Thomas Hellstrom
2026-04-30 13:00 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-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=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 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.