[PATCH] drm/amd/display: add missing NULL check for DML2
Alex Deucher
alexdeucher at gmail.com
Tue Oct 10 13:25:00 UTC 2023
On Tue, Oct 10, 2023 at 2:07 AM Bob Zhou <bob.zhou at amd.com> wrote:
>
> Recently, the driver introduce DML2 for future ASIC support.
> But, some ASIC's hubbub pointer is null before calling.
> It cause the below null pointer issue, so add null check to fix it.
>
> BUG: kernel NULL pointer dereference, address: 0000000000000000
> RIP: 0010:dc_create_resource_pool+0xc1/0x2c0 [amdgpu] Call Trace:
> <TASK>
> ? show_regs.cold+0x1a/0x1f
> ? __die_body+0x20/0x70
> ? __die+0x2b/0x37
> ? page_fault_oops+0x136/0x2c0
> ? do_user_addr_fault+0x303/0x660
> ? exc_page_fault+0x77/0x170
> ? asm_exc_page_fault+0x27/0x30
> ? dc_create_resource_pool+0xc1/0x2c0 [amdgpu] ? dc_create_resource_pool+0x243/0x2c0 [amdgpu]
> dc_create+0x23f/0x6b0 [amdgpu]
> ? dmi_matches+0xa3/0x200
> amdgpu_dm_init+0x2bd/0x22a0 [amdgpu]
>
> Fixes: a2815ada8616 ("drm/amd/display: Introduce DML2")
>
> Signed-off-by: Bob Zhou <bob.zhou at amd.com>
Acked-by: Alex Deucher <alexander.deucher at amd.com>
> ---
> drivers/gpu/drm/amd/display/dc/core/dc_resource.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/amd/display/dc/core/dc_resource.c b/drivers/gpu/drm/amd/display/dc/core/dc_resource.c
> index 25562b262555..d20e01226353 100644
> --- a/drivers/gpu/drm/amd/display/dc/core/dc_resource.c
> +++ b/drivers/gpu/drm/amd/display/dc/core/dc_resource.c
> @@ -321,7 +321,7 @@ struct resource_pool *dc_create_resource_pool(struct dc *dc,
> res_pool->ref_clocks.xtalin_clock_inKhz;
> res_pool->ref_clocks.dchub_ref_clock_inKhz =
> res_pool->ref_clocks.xtalin_clock_inKhz;
> - if ((res_pool->hubbub->funcs->get_dchub_ref_freq))
> + if (res_pool->hubbub && res_pool->hubbub->funcs->get_dchub_ref_freq)
> res_pool->hubbub->funcs->get_dchub_ref_freq(res_pool->hubbub,
> res_pool->ref_clocks.dccg_ref_clock_inKhz,
> &res_pool->ref_clocks.dchub_ref_clock_inKhz);
> --
> 2.34.1
>
More information about the amd-gfx
mailing list