On Fri, Apr 11, 2025 at 12:28 PM Srinivasan Shanmugam <srinivasan.shanmu...@amd.com> wrote: > > This commit introduces the PACKET3_RUN_CLEANER_SHADER_9_0 definition, > which is a command packet utilized to instruct the GPU to execute the > cleaner shader for the GFX9.0 graphics architecture. > > The cleaner shader is a piece of GPU code that is responsible for > clearing or initializing essential GPU resources, such as Local Data > Share (LDS), Vector General Purpose Registers (VGPRs), and Scalar > General Purpose Registers (SGPRs). Properly clearing these resources is > vital for ensuring data isolation and security between different > workloads executed on the GPU. > > When the GPU receives this packet, it fetches and runs the cleaner > shader instructions from the specified location in the packet. Thus by > preventing data leaks and ensuring that previous job states do not > interfere with subsequent workloads. > > Cc: Christian König <christian.koe...@amd.com> > Cc: Alex Deucher <alexander.deuc...@amd.com> > Signed-off-by: Srinivasan Shanmugam <srinivasan.shanmu...@amd.com>
Acked-by: Alex Deucher <alexander.deuc...@amd.com> > --- > drivers/gpu/drm/amd/amdgpu/soc15d.h | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/drivers/gpu/drm/amd/amdgpu/soc15d.h > b/drivers/gpu/drm/amd/amdgpu/soc15d.h > index a5000c171c02..cf93fa477674 100644 > --- a/drivers/gpu/drm/amd/amdgpu/soc15d.h > +++ b/drivers/gpu/drm/amd/amdgpu/soc15d.h > @@ -552,6 +552,11 @@ > # define PACKET3_QUERY_STATUS_DOORBELL_OFFSET(x) ((x) << 2) > # define PACKET3_QUERY_STATUS_ENG_SEL(x) ((x) << 25) > > +#define PACKET3_RUN_CLEANER_SHADER_9_0 0xD7 > +/* 1. header > + * 2. RESERVED [31:0] > + */ > + > #define PACKET3_RUN_CLEANER_SHADER 0xD2 > /* 1. header > * 2. RESERVED [31:0] > -- > 2.34.1 >