[PATCH] drm/amdgpu/fence: Remove redundant 0 value initialization

Liao Yuanhong posted 1 patch 1 month, 2 weeks ago
drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c | 1 -
1 file changed, 1 deletion(-)
[PATCH] drm/amdgpu/fence: Remove redundant 0 value initialization
Posted by Liao Yuanhong 1 month, 2 weeks ago
The amdgpu_fence struct is already zeroed by kzalloc(). It's redundant to
initialize am_fence->context to 0.

Signed-off-by: Liao Yuanhong <liaoyuanhong@vivo.com>
---
 drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c
index bcb74286a78a..fd8cca241da6 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c
@@ -120,7 +120,6 @@ int amdgpu_fence_emit(struct amdgpu_ring *ring, struct dma_fence **f,
 		am_fence = kzalloc(sizeof(*am_fence), GFP_KERNEL);
 		if (!am_fence)
 			return -ENOMEM;
-		am_fence->context = 0;
 	} else {
 		am_fence = af;
 	}
-- 
2.34.1
Re: [PATCH] drm/amdgpu/fence: Remove redundant 0 value initialization
Posted by Markus Elfring 1 month, 2 weeks ago
> The amdgpu_fence struct is already zeroed by kzalloc(). It's redundant to
> initialize am_fence->context to 0.

See also once more:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/process/submitting-patches.rst?h=v6.17-rc2#n94

Regards,
Markus
Re: [PATCH] drm/amdgpu/fence: Remove redundant 0 value initialization
Posted by Christian König 1 month, 2 weeks ago
On 19.08.25 10:25, Liao Yuanhong wrote:
> The amdgpu_fence struct is already zeroed by kzalloc(). It's redundant to
> initialize am_fence->context to 0.
> 
> Signed-off-by: Liao Yuanhong <liaoyuanhong@vivo.com>

Reviewed-by: Christian König <christian.koenig@amd.com>

If you want a challenge what we would really use is a scan of all the structures defined in drivers/gpu/drm/amd/amdgpu/*.[ch] for unused fields.

The UAPI and BIOS/HW header files are full of padding fields, but there shouldn't be any in the driver core defines and we sometimes forget to remove fields from structures when they are not used any more.

Regards,
Christian.

> ---
>  drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c | 1 -
>  1 file changed, 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c
> index bcb74286a78a..fd8cca241da6 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c
> @@ -120,7 +120,6 @@ int amdgpu_fence_emit(struct amdgpu_ring *ring, struct dma_fence **f,
>  		am_fence = kzalloc(sizeof(*am_fence), GFP_KERNEL);
>  		if (!am_fence)
>  			return -ENOMEM;
> -		am_fence->context = 0;
>  	} else {
>  		am_fence = af;
>  	}

Re: [PATCH] drm/amdgpu/fence: Remove redundant 0 value initialization
Posted by Alex Deucher 1 month, 2 weeks ago
Applied.  Thanks!

Alex

On Tue, Aug 19, 2025 at 4:41 AM Christian König
<christian.koenig@amd.com> wrote:
>
> On 19.08.25 10:25, Liao Yuanhong wrote:
> > The amdgpu_fence struct is already zeroed by kzalloc(). It's redundant to
> > initialize am_fence->context to 0.
> >
> > Signed-off-by: Liao Yuanhong <liaoyuanhong@vivo.com>
>
> Reviewed-by: Christian König <christian.koenig@amd.com>
>
> If you want a challenge what we would really use is a scan of all the structures defined in drivers/gpu/drm/amd/amdgpu/*.[ch] for unused fields.
>
> The UAPI and BIOS/HW header files are full of padding fields, but there shouldn't be any in the driver core defines and we sometimes forget to remove fields from structures when they are not used any more.
>
> Regards,
> Christian.
>
> > ---
> >  drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c | 1 -
> >  1 file changed, 1 deletion(-)
> >
> > diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c
> > index bcb74286a78a..fd8cca241da6 100644
> > --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c
> > +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c
> > @@ -120,7 +120,6 @@ int amdgpu_fence_emit(struct amdgpu_ring *ring, struct dma_fence **f,
> >               am_fence = kzalloc(sizeof(*am_fence), GFP_KERNEL);
> >               if (!am_fence)
> >                       return -ENOMEM;
> > -             am_fence->context = 0;
> >       } else {
> >               am_fence = af;
> >       }
>
Re: [PATCH] drm/amdgpu/fence: Remove redundant 0 value initialization
Posted by Liao Yuanhong 1 month, 2 weeks ago
On 8/19/2025 4:41 PM, Christian König wrote:
> On 19.08.25 10:25, Liao Yuanhong wrote:
>> The amdgpu_fence struct is already zeroed by kzalloc(). It's redundant to
>> initialize am_fence->context to 0.
>>
>> Signed-off-by: Liao Yuanhong <liaoyuanhong@vivo.com>
> Reviewed-by: Christian König <christian.koenig@amd.com>
>
> If you want a challenge what we would really use is a scan of all the structures defined in drivers/gpu/drm/amd/amdgpu/*.[ch] for unused fields.
>
> The UAPI and BIOS/HW header files are full of padding fields, but there shouldn't be any in the driver core defines and we sometimes forget to remove fields from structures when they are not used any more.
>
> Regards,
> Christian.


Thank you for your suggestion! I will try to find it.


Regards,

Liao

>> ---
>>   drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c | 1 -
>>   1 file changed, 1 deletion(-)
>>
>> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c
>> index bcb74286a78a..fd8cca241da6 100644
>> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c
>> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c
>> @@ -120,7 +120,6 @@ int amdgpu_fence_emit(struct amdgpu_ring *ring, struct dma_fence **f,
>>   		am_fence = kzalloc(sizeof(*am_fence), GFP_KERNEL);
>>   		if (!am_fence)
>>   			return -ENOMEM;
>> -		am_fence->context = 0;
>>   	} else {
>>   		am_fence = af;
>>   	}