[PATCH 00/17] Process Isolation Support

Christian König christian.koenig at amd.com
Thu Aug 22 06:36:59 UTC 2024


Reviewed-by: Christian König <christian.koenig at amd.com> for patches #1, 
#3-#5,

Acked-by: Christian König <christian.koenig at amd.com> for patches #6, 
#8-#10, #12, #13, #14, #17.

Some nit picks in patches #2, use of // for comments in patch #11 and 
question on patch #15/#16

Really big bug in patch #7, that needs to be addressed.

Regards,
Christian.

Am 15.08.24 um 02:04 schrieb Alex Deucher:
> This patch set enables process isolation mode which
> serializes access to the graphics block between processes.
> When this mode is active, a cleaner shader is run between
> processes to clear shader LDS (Local Data Store) and GPRs
> (General Purpose Registers).  A sysfs interface is
> also available to manually clear LDS and GPRs if you
> for example want to clear LDS and GPRs when a user logs out.
>
> This includes support for GFX 9.4.3 and 9.4.4.  Support for
> other GPUs is in progress and will be available when ready.
>
> Alex Deucher (2):
>    drm/amdgpu: handle enforce isolation on non-0 gfxhub
>    drm/amdgpu: Emit cleaner shader at end of IB submission
>
> Amber Lin (2):
>    drm/amdkfd: APIs to stop/start KFD scheduling
>    drm/amdkfd: Enable processes isolation on gfx9
>
> Srinivasan Shanmugam (13):
>    drm/amdgpu: Add infrastructure for Cleaner Shader feature
>    drm/amdgpu: Make enforce_isolation setting per GPU
>    drm/amdgpu: Enforce isolation as part of the job
>    drm/amdgpu: Add enforce_isolation sysfs attribute
>    drm/amdgpu: Add sysfs interface for running cleaner shader
>    drm/amdgpu: Add PACKET3_RUN_CLEANER_SHADER for cleaner shader
>      execution
>    drm/amdgpu/gfx9: Implement cleaner shader support for GFX9 hardware
>    drm/amdgpu/gfx9: Implement cleaner shader support for GFX9.4.3
>      hardware
>    drm/amdgpu/gfx9: Add cleaner shader for GFX9.4.3
>    drm/amdgpu/gfx9: Add cleaner shader support for GFX9.4.4 hardware
>    drm/amdgpu: Implement Enforce Isolation Handler for KGD/KFD
>      serialization
>    drm/amdgpu/gfx9: Apply Isolation Enforcement to GFX & Compute rings
>    drm/amdgpu/gfx_v9_4_3: Apply Isolation Enforcement to GFX & Compute
>      rings
>
>   drivers/gpu/drm/amd/amdgpu/amdgpu.h           |   6 +
>   drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c    |  18 +
>   drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.h    |  14 +
>   drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c        |   3 +-
>   drivers/gpu/drm/amd/amdgpu/amdgpu_device.c    |  23 +
>   drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.c       | 437 ++++++++++++++++++
>   drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.h       |  31 ++
>   drivers/gpu/drm/amd/amdgpu/amdgpu_ids.c       |  17 +-
>   drivers/gpu/drm/amd/amdgpu/amdgpu_ids.h       |   3 +-
>   drivers/gpu/drm/amd/amdgpu/amdgpu_job.h       |   3 +
>   drivers/gpu/drm/amd/amdgpu/amdgpu_ring.h      |   1 +
>   drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c        |   6 +
>   drivers/gpu/drm/amd/amdgpu/aqua_vanjaram.c    |   4 +
>   drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c         |  51 +-
>   .../drm/amd/amdgpu/gfx_v9_0_cleaner_shader.h  |  26 ++
>   drivers/gpu/drm/amd/amdgpu/gfx_v9_4_3.c       |  60 ++-
>   .../amd/amdgpu/gfx_v9_4_3_cleaner_shader.asm  | 153 ++++++
>   .../amd/amdgpu/gfx_v9_4_3_cleaner_shader.h    |  64 +++
>   drivers/gpu/drm/amd/amdgpu/soc15d.h           |   4 +
>   drivers/gpu/drm/amd/amdkfd/kfd_device.c       |  39 ++
>   .../drm/amd/amdkfd/kfd_device_queue_manager.c |  58 ++-
>   .../drm/amd/amdkfd/kfd_device_queue_manager.h |   9 +
>   .../drm/amd/amdkfd/kfd_packet_manager_v9.c    |  14 +-
>   .../gpu/drm/amd/amdkfd/kfd_pm4_headers_ai.h   |   5 +-
>   .../amd/amdkfd/kfd_pm4_headers_aldebaran.h    |   2 +-
>   25 files changed, 1028 insertions(+), 23 deletions(-)
>   create mode 100644 drivers/gpu/drm/amd/amdgpu/gfx_v9_0_cleaner_shader.h
>   create mode 100644 drivers/gpu/drm/amd/amdgpu/gfx_v9_4_3_cleaner_shader.asm
>   create mode 100644 drivers/gpu/drm/amd/amdgpu/gfx_v9_4_3_cleaner_shader.h
>



More information about the amd-gfx mailing list