Intel-XE Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 0/7] Enable device atomics with a VM bind flag
@ 2024-04-12  9:22 Nirmoy Das
  2024-04-12  9:22 ` [PATCH v2 1/7] drm/xe: Introduce has_atomic_enable_pte_bit device info Nirmoy Das
                   ` (14 more replies)
  0 siblings, 15 replies; 21+ messages in thread
From: Nirmoy Das @ 2024-04-12  9:22 UTC (permalink / raw)
  To: intel-xe
  Cc: Nirmoy Das, Balasubramani Vivekanandan, Brian Welty, Fei Yang,
	Jose Souza, Lionel G Landwerlin, Matt Roper, Matthew Brost,
	Michal Mrozek, Oak Zeng, Thomas Hellstr_m

Currently device atomics in SMEM only buffer is not supported and
given that simultaneous usage of device atomics and CPU atomics on
the same SMEM buffer is not guaranteed to function without migration,
and UMD expects no migration for SMEM-only buffer objects, so this
provide a way to set device atomics when UMD is certain to use the
buffer only for device atomics.

v2: Add BO helper func in xe_vm_bind_ioctl()(Matt B).
    Use XE_IOCTL_DBG for checks(Matt B).
    Move platform checks with help of adding flags in
    intel_device_info(Matt B).
    Add document for DRM_XE_VM_BIND_FLAG_DEVICE_ATOMICS(Matt B). 
    Create query uAPI for this newly added VM bind flag(Jose, Lionel).

Test-with: 20240412090117.32727-1-nirmoy.das@intel.com
Cc: Balasubramani Vivekanandan <balasubramani.vivekanandan@intel.com>
Cc: Brian Welty <brian.welty@intel.com>
Cc: Fei Yang <fei.yang@intel.com>
Cc: Jose Souza <jose.souza@intel.com>
Cc: Lionel G Landwerlin <lionel.g.landwerlin@intel.com>
Cc: Matt Roper <matthew.d.roper@intel.com>
Cc: Matthew Brost <matthew.brost@intel.com>
Cc: Michal Mrozek <michal.mrozek@intel.com>
Cc: Oak Zeng <oak.zeng@intel.com>
Cc: Thomas Hellstr_m <thomas.hellstrom@linux.intel.com>

Nirmoy Das (7):
  drm/xe: Introduce has_atomic_enable_pte_bit device info
  drm/xe: Consolidate setting PTE_AE into one place
  drm/xe: Add function to check if BO has single placement
  drm/xe: Move vm bind bo validation to a helper function
  drm/xe: Introduce has_device_atomics_on_smem device info
  drm/xe/uapi: Introduce VMA bind flag for device atomics
  drm/xe/uapi: Add a query flag for has_device_atomics_on_smem

 drivers/gpu/drm/xe/xe_bo.c           |  14 ++++
 drivers/gpu/drm/xe/xe_bo.h           |   1 +
 drivers/gpu/drm/xe/xe_device_types.h |   4 ++
 drivers/gpu/drm/xe/xe_pci.c          |   5 ++
 drivers/gpu/drm/xe/xe_pci_types.h    |   2 +
 drivers/gpu/drm/xe/xe_pt.c           |   4 +-
 drivers/gpu/drm/xe/xe_query.c        |   4 +-
 drivers/gpu/drm/xe/xe_vm.c           | 101 +++++++++++++++++----------
 drivers/gpu/drm/xe/xe_vm_types.h     |   2 +
 include/uapi/drm/xe_drm.h            |  20 ++++--
 10 files changed, 113 insertions(+), 44 deletions(-)

-- 
2.42.0


^ permalink raw reply	[flat|nested] 21+ messages in thread

end of thread, other threads:[~2024-04-15  7:52 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-04-12  9:22 [PATCH v2 0/7] Enable device atomics with a VM bind flag Nirmoy Das
2024-04-12  9:22 ` [PATCH v2 1/7] drm/xe: Introduce has_atomic_enable_pte_bit device info Nirmoy Das
2024-04-12  9:22 ` [PATCH v2 2/7] drm/xe: Consolidate setting PTE_AE into one place Nirmoy Das
2024-04-12  9:22 ` [PATCH v2 3/7] drm/xe: Add function to check if BO has single placement Nirmoy Das
2024-04-12  9:22 ` [PATCH v2 4/7] drm/xe: Move vm bind bo validation to a helper function Nirmoy Das
2024-04-12 18:37   ` Matthew Brost
2024-04-12  9:22 ` [PATCH v2 5/7] drm/xe: Introduce has_device_atomics_on_smem device info Nirmoy Das
2024-04-12 13:31   ` Souza, Jose
2024-04-12 15:22     ` Nirmoy Das
2024-04-12  9:22 ` [PATCH v2 6/7] drm/xe/uapi: Introduce VMA bind flag for device atomics Nirmoy Das
2024-04-12  9:22 ` [PATCH v2 7/7] drm/xe/uapi: Add a query flag for has_device_atomics_on_smem Nirmoy Das
2024-04-12 13:37   ` Souza, Jose
2024-04-12 15:16     ` Nirmoy Das
2024-04-12  9:58 ` ✓ CI.Patch_applied: success for Enable device atomics with a VM bind flag (rev2) Patchwork
2024-04-12  9:58 ` ✓ CI.checkpatch: " Patchwork
2024-04-12  9:59 ` ✓ CI.KUnit: " Patchwork
2024-04-12 10:11 ` ✓ CI.Build: " Patchwork
2024-04-12 10:13 ` ✓ CI.Hooks: " Patchwork
2024-04-12 10:15 ` ✓ CI.checksparse: " Patchwork
2024-04-12 10:38 ` ✗ CI.BAT: failure " Patchwork
2024-04-15  7:52 ` ✗ CI.FULL: " Patchwork

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox