Commit 335482a5 authored by Dave Airlie's avatar Dave Airlie
Browse files

Merge tag 'drm-xe-next-2025-10-20' of https://gitlab.freedesktop.org/drm/xe/kernel into drm-next



Highlights:

UAPI Changes:
Loosen used tracking restriction (Matthew Auld)
New SR-IOV debugfs structure and debugfs updates (Michal Wajdeczko)
Hide the GPU madvise flag behind a VM_BIND flag (Thomas Hellström)
Always expose VRAM provisioning data on discrete GPUs (Lukasz Laguna)

Cross-subsystem Changes:
Allow VRAM mappings for userptr when used with SVM (Matthew Brost)

Driver Changes:
Allow pinning of p2p dma-buf (Thomas Hellstrom)
Use per-tile debugfs where appropriate (Michal Wajdeczko)
Add documentation for Execution Queues (Niranjana Vishwanathapura)
PF improvements (Michal Wajdeczko)
VF migration recovery redesign work (Matthew Brost)
User / Kernel VRAM partitioning (Piotr Piórkowski)
Update Tile-based messages (Michal Wajdeczko)
Allow configfs to disable specific GT types (Matt Roper)
VF provisioning improvements (Michal Wajdeczko)
Initial Xe3P support (Various people)

Signed-off-by: default avatarDave Airlie <airlied@redhat.com>

From: Thomas Hellstrom <thomas.hellstrom@linux.intel.com>
Link: https://lore.kernel.org/r/aPXzbOb7eGbkgMrr@fedora
parents 211ddde0 d104d7ea
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -14,6 +14,7 @@ DG2, etc is provided to prototype the driver.
   xe_mm
   xe_map
   xe_migrate
   xe_exec_queue
   xe_cs
   xe_pm
   xe_gt_freq
+20 −0
Original line number Diff line number Diff line
.. SPDX-License-Identifier: (GPL-2.0+ OR MIT)

===============
Execution Queue
===============

.. kernel-doc:: drivers/gpu/drm/xe/xe_exec_queue.c
   :doc: Execution Queue

Internal API
============

.. kernel-doc:: drivers/gpu/drm/xe/xe_exec_queue_types.h
   :internal:

.. kernel-doc:: drivers/gpu/drm/xe/xe_exec_queue.h
   :internal:

.. kernel-doc:: drivers/gpu/drm/xe/xe_exec_queue.c
   :internal:
+4 −2
Original line number Diff line number Diff line
@@ -1363,7 +1363,8 @@ int drm_gpusvm_get_pages(struct drm_gpusvm *gpusvm,
		order = drm_gpusvm_hmm_pfn_to_order(pfns[i], i, npages);
		if (is_device_private_page(page) ||
		    is_device_coherent_page(page)) {
			if (zdd != page->zone_device_data && i > 0) {
			if (!ctx->allow_mixed &&
			    zdd != page->zone_device_data && i > 0) {
				err = -EOPNOTSUPP;
				goto err_unmap;
			}
@@ -1399,7 +1400,8 @@ int drm_gpusvm_get_pages(struct drm_gpusvm *gpusvm,
		} else {
			dma_addr_t addr;

			if (is_zone_device_page(page) || pagemap) {
			if (is_zone_device_page(page) ||
			    (pagemap && !ctx->allow_mixed)) {
				err = -EOPNOTSUPP;
				goto err_unmap;
			}
+8 −8
Original line number Diff line number Diff line
@@ -40,23 +40,23 @@ config DRM_XE_DEBUG_VM

	  If in doubt, say "N".

config DRM_XE_DEBUG_MEMIRQ
	bool "Enable extra memirq debugging"
config DRM_XE_DEBUG_SRIOV
	bool "Enable extra SR-IOV debugging"
	default n
	imply DRM_XE_DEBUG_MEMIRQ
	help
	  Choose this option to enable additional debugging info for
	  memory based interrupts.
	  Enable extra SR-IOV debugging info.

	  Recommended for driver developers only.

	  If in doubt, say "N".

config DRM_XE_DEBUG_SRIOV
	bool "Enable extra SR-IOV debugging"
config DRM_XE_DEBUG_MEMIRQ
	bool "Enable extra memirq debugging"
	default n
	select DRM_XE_DEBUG_MEMIRQ
	help
	  Enable extra SR-IOV debugging info.
	  Choose this option to enable additional debugging info for
	  memory based interrupts.

	  Recommended for driver developers only.

+5 −1
Original line number Diff line number Diff line
@@ -174,7 +174,11 @@ xe-$(CONFIG_PCI_IOV) += \
	xe_lmtt_ml.o \
	xe_pci_sriov.o \
	xe_sriov_pf.o \
	xe_sriov_pf_service.o
	xe_sriov_pf_control.o \
	xe_sriov_pf_debugfs.o \
	xe_sriov_pf_provision.o \
	xe_sriov_pf_service.o \
	xe_tile_sriov_pf_debugfs.o

# include helpers for tests even when XE is built-in
ifdef CONFIG_DRM_XE_KUNIT_TEST
Loading