Draft: RFC: initial GPUVA port
Based on @dakr GPUVA series on the list: https://patchwork.freedesktop.org/series/112994/
Update Xe structures xe_vm & xe_vma to inherit from GPUVA structures, use GPUVA to track VMAs within a VM, and use GPUVA to track VMAs attached to GEMs.
More needs to be be done but posting for initial feedback.
In particular follow on work / issues:
- Need to update bind operations to use GPUVA to generate operations
- Need to update GPUVA to not depend on drm_mm
- Need to settle on if regions are needed, my thinking is they are not
- Perhaps change the locking around drm_gpuva_link_*, my thinking is the caller should own the lock
Will continue working on this port + respond on the list with my concerns.