mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/
synced 2026-11-10 20:48:12 +00:00
drm/xe: Fine grained page fault locking
Enable page faults to be serviced while holding vm->lock in read mode. Introduce additional locks to: - Ensure only one page fault thread services a given range or VMA - Serialize SVM garbage collection - Protect SVM range insertion and removal While these locks may contend during page faults, expensive operations like migration can now run in parallel within a single VM. In addition to new locking, ranges must be reference-counted after lookup, as another thread could immediately remove them from the GPU SVM tree, potentially dropping the last reference. Lastly, decouple the VM’s ASID from the page fault queue selection to allow parallel page fault handling within the same VM. Lays the groundwork for prefetch IOCTLs to use threaded migration too. Signed-off-by: Matthew Brost <matthew.brost@intel.com> Reviewed-by: Gwan-gyeong Mun <gwan-gyeong.mun@intel.com> Link: https://patch.msgid.link/20260806185202.3922432-2-matthew.brost@intel.com
This commit is contained in:
parent
52d223c05e
commit
941bcc1a4b
7 changed files with 300 additions and 131 deletions
Loading…
Add table
Add a link
Reference in a new issue