For the rationale see the earlier RFC by Faith: https://lists.freedesktop.org/archives/amd-gfx/2024-August/112273.html This mainly makes two changes: 1. Uses a submission flag rather than a context creation flag. 2. Uses DMA_RESV_USAGE_BOOKKEEP to avoid adding implicit fences still. Note that this doesn't disable implicit sync wrt VM ops (map/unmap), I know we have series for that going around, but I believe doing just submissions here is less involved and doesn't really complicate doing VM ops later. As of now this has received a limited set of testing, no full CTS runs etc yet. For Userspace see: libdrm: https://gitlab.freedesktop.org/bnieuwenhuizen/drm/-/commits/basic-explicit-sync mesa: https://gitlab.freedesktop.org/bnieuwenhuizen/mesa/-/commits/basic-explicit-sync (Still missing a bunch of the version bumps & version checks, would like to postpone that till we know the actual version) Bas Nieuwenhuizen (6): amdgpu: Add usage argument to amdgpu_sync_resv. amdgpu: Ignore BOOKKEEP fences for submissions. drm/amdgpu: Check cs flags. drm/amdgpu: Add UAPI for disabling implicit sync per submission. drm/amdgpu: Implement disabling implicit sync per submission. drm/amdgpu: Bump the driver version for the new flag. .../gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c | 1 + drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c | 21 ++++++++++++++++--- drivers/gpu/drm/amd/amdgpu/amdgpu_cs.h | 1 + drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | 3 ++- drivers/gpu/drm/amd/amdgpu/amdgpu_object.c | 3 ++- drivers/gpu/drm/amd/amdgpu/amdgpu_sync.c | 7 +++---- drivers/gpu/drm/amd/amdgpu/amdgpu_sync.h | 4 ++-- drivers/gpu/drm/amd/amdgpu/amdgpu_vm_sdma.c | 3 ++- include/uapi/drm/amdgpu_drm.h | 6 ++++++ 9 files changed, 37 insertions(+), 12 deletions(-) -- 2.45.2