[AMD Official Use Only - General]

Prefer drm_err instead of DRM_ERR: 
https://elixir.bootlin.com/linux/latest/source/include/drm/drm_print.h#L468

With or without that fixed, patch is

Reviewed-by: Aurabindo Pillai <[email protected]>

--

Regards,
Jay
________________________________
From: SHANMUGAM, SRINIVASAN <[email protected]>
Sent: Tuesday, January 30, 2024 4:45 AM
To: Siqueira, Rodrigo <[email protected]>; Pillai, Aurabindo 
<[email protected]>
Cc: [email protected] <[email protected]>; Julia Lawall 
<[email protected]>; Hung, Alex <[email protected]>; Deucher, Alexander 
<[email protected]>; Chung, ChiaHsuan (Tom) <[email protected]>
Subject: Re: [PATCH] drm/amd/display: Add NULL check for kzalloc in 
'amdgpu_dm_atomic_commit_tail()'

+ Cc: Tom Chung <[email protected]>

On 1/30/2024 2:11 PM, SHANMUGAM, SRINIVASAN wrote:
> Add a NULL check for the kzalloc call that allocates memory for
> dummy_updates in the amdgpu_dm_atomic_commit_tail function. Previously,
> if kzalloc failed to allocate memory and returned NULL, the code would
> attempt to use the NULL pointer.
>
> The fix is to check if kzalloc returns NULL, and if so, log an error
> message and skip the rest of the current loop iteration with the
> continue statement.  This prevents the code from attempting to use the
> NULL pointer.
>
> Cc: Julia Lawall <[email protected]>
> Cc: Aurabindo Pillai <[email protected]>
> Cc: Rodrigo Siqueira <[email protected]>
> Cc: Alex Hung <[email protected]>
> Cc: Alex Deucher <[email protected]>
> Signed-off-by: Srinivasan Shanmugam <[email protected]>
> ---
>   drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 4 ++++
>   1 file changed, 4 insertions(+)
>
> diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c 
> b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> index 0bf1bc7ced7d..8590c9f1dda6 100644
> --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c
> @@ -9236,6 +9236,10 @@ static void amdgpu_dm_atomic_commit_tail(struct 
> drm_atomic_state *state)
>                 * To fix this, DC should permit updating only stream 
> properties.
>                 */
>                dummy_updates = kzalloc(sizeof(struct dc_surface_update) * 
> MAX_SURFACES, GFP_ATOMIC);
> +             if (!dummy_updates) {
> +                     DRM_ERROR("Failed to allocate memory for 
> dummy_updates.\n");
> +                     continue;
> +             }
>                for (j = 0; j < status->plane_count; j++)
>                        dummy_updates[j].surface = status->plane_states[0];
>

Reply via email to