mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2026-01-15 12:25:41 +01:00
Goal here is cut over to gpusvm and remove xe_hmm, relying instead on
common code. The core facilities we need are get_pages(), unmap_pages()
and free_pages() for a given useptr range, plus a vm level notifier
lock, which is now provided by gpusvm.
v2:
- Reuse the same SVM vm struct we use for full SVM, that way we can
use the same lock (Matt B & Himal)
v3:
- Re-use svm_init/fini for userptr.
v4:
- Allow building xe without userptr if we are missing DRM_GPUSVM
config. (Matt B)
- Always make .read_only match xe_vma_read_only() for the ctx. (Dafna)
v5:
- Fix missing conversion with CONFIG_DRM_XE_USERPTR_INVAL_INJECT
v6:
- Convert the new user in xe_vm_madise.
Signed-off-by: Matthew Auld <matthew.auld@intel.com>
Cc: Himal Prasad Ghimiray <himal.prasad.ghimiray@intel.com>
Cc: Thomas Hellström <thomas.hellstrom@linux.intel.com>
Cc: Dafna Hirschfeld <dafna.hirschfeld@intel.com>
Cc: Matthew Brost <matthew.brost@intel.com>
Reviewed-by: Matthew Brost <matthew.brost@intel.com>
Link: https://lore.kernel.org/r/20250828142430.615826-17-matthew.auld@intel.com
115 lines
3.1 KiB
Plaintext
115 lines
3.1 KiB
Plaintext
# SPDX-License-Identifier: GPL-2.0-only
|
|
config DRM_XE_WERROR
|
|
bool "Force GCC to throw an error instead of a warning when compiling"
|
|
# As this may inadvertently break the build, only allow the user
|
|
# to shoot oneself in the foot iff they aim really hard
|
|
depends on EXPERT
|
|
# We use the dependency on !COMPILE_TEST to not be enabled in
|
|
# allmodconfig or allyesconfig configurations
|
|
depends on !COMPILE_TEST
|
|
default n
|
|
help
|
|
Add -Werror to the build flags for (and only for) xe.ko.
|
|
Do not enable this unless you are writing code for the xe.ko module.
|
|
|
|
Recommended for driver developers only.
|
|
|
|
If in doubt, say "N".
|
|
|
|
config DRM_XE_DEBUG
|
|
bool "Enable additional driver debugging"
|
|
depends on DRM_XE
|
|
depends on EXPERT
|
|
depends on !COMPILE_TEST
|
|
default n
|
|
help
|
|
Choose this option to turn on extra driver debugging that may affect
|
|
performance but will catch some internal issues.
|
|
|
|
Recommended for driver developers only.
|
|
|
|
If in doubt, say "N".
|
|
|
|
config DRM_XE_DEBUG_VM
|
|
bool "Enable extra VM debugging info"
|
|
default n
|
|
help
|
|
Enable extra VM debugging info
|
|
|
|
Recommended for driver developers only.
|
|
|
|
If in doubt, say "N".
|
|
|
|
config DRM_XE_DEBUG_MEMIRQ
|
|
bool "Enable extra memirq debugging"
|
|
default n
|
|
help
|
|
Choose this option to enable additional debugging info for
|
|
memory based interrupts.
|
|
|
|
Recommended for driver developers only.
|
|
|
|
If in doubt, say "N".
|
|
|
|
config DRM_XE_DEBUG_SRIOV
|
|
bool "Enable extra SR-IOV debugging"
|
|
default n
|
|
select DRM_XE_DEBUG_MEMIRQ
|
|
help
|
|
Enable extra SR-IOV debugging info.
|
|
|
|
Recommended for driver developers only.
|
|
|
|
If in doubt, say "N".
|
|
|
|
config DRM_XE_DEBUG_MEM
|
|
bool "Enable passing SYS/VRAM addresses to user space"
|
|
default n
|
|
help
|
|
Pass object location through uapi. Intended for extended
|
|
testing and development only.
|
|
|
|
Recommended for driver developers only.
|
|
|
|
If in doubt, say "N".
|
|
|
|
config DRM_XE_KUNIT_TEST
|
|
tristate "KUnit tests for the drm xe driver" if !KUNIT_ALL_TESTS
|
|
depends on DRM_XE && KUNIT && DEBUG_FS
|
|
default KUNIT_ALL_TESTS
|
|
select DRM_EXPORT_FOR_TESTS if m
|
|
help
|
|
Choose this option to allow the driver to perform selftests under
|
|
the kunit framework
|
|
|
|
Recommended for driver developers only.
|
|
|
|
If in doubt, say "N".
|
|
|
|
config DRM_XE_DEBUG_GUC
|
|
bool "Enable extra GuC related debug options"
|
|
depends on DRM_XE_DEBUG
|
|
default n
|
|
select STACKDEPOT
|
|
help
|
|
Choose this option when debugging guc issues.
|
|
The GuC log buffer is increased to the maximum allowed, which should
|
|
be large enough for complex issues. The tracking of FAST_REQ messages
|
|
is extended to include a record of the calling stack, which is then
|
|
dumped on a FAST_REQ error notification.
|
|
|
|
Recommended for driver developers only.
|
|
|
|
If in doubt, say "N".
|
|
|
|
config DRM_XE_USERPTR_INVAL_INJECT
|
|
bool "Inject userptr invalidation -EINVAL errors"
|
|
depends on DRM_GPUSVM
|
|
default n
|
|
help
|
|
Choose this option when debugging error paths that
|
|
are hit during checks for userptr invalidations.
|
|
|
|
Recommended for driver developers only.
|
|
If in doubt, say "N".
|