• Srinivasan Shanmugam's avatar
    drm/amd/display: Fix potential null pointer dereference in dc_dmub_srv · d2b48f34
    Srinivasan Shanmugam authored
    Fixes potential null pointer dereference warnings in the
    dc_dmub_srv_cmd_list_queue_execute() and dc_dmub_srv_is_hw_pwr_up()
    functions.
    
    In both functions, the 'dc_dmub_srv' variable was being dereferenced
    before it was checked for null. This could lead to a null pointer
    dereference if 'dc_dmub_srv' is null. The fix is to check if
    'dc_dmub_srv' is null before dereferencing it.
    
    Thus moving the null checks for 'dc_dmub_srv' to the beginning of the
    functions to ensure that 'dc_dmub_srv' is not null when it is
    dereferenced.
    
    Found by smatch & thus fixing the below:
    drivers/gpu/drm/amd/amdgpu/../display/dc/dc_dmub_srv.c:133 dc_dmub_srv_cmd_list_queue_execute() warn: variable dereferenced before check 'dc_dmub_srv' (see line 128)
    drivers/gpu/drm/amd/amdgpu/../display/dc/dc_dmub_srv.c:1167 dc_dmub_srv_is_hw_pwr_up() warn: variable dereferenced before check 'dc_dmub_srv' (see line 1164)
    
    Fixes: 028bac58 ("drm/amd/display: decouple dmcub execution to reduce lock granularity")
    Fixes: 65138eb7 ("drm/amd/display: Add DCN35 DMUB")
    Cc: JinZe.Xu <jinze.xu@amd.com>
    Cc: Hersen Wu <hersenxs.wu@amd.com>
    Cc: Josip Pavic <josip.pavic@amd.com>
    Cc: Roman Li <roman.li@amd.com>
    Cc: Qingqing Zhuo <Qingqing.Zhuo@amd.com>
    Cc: Harry Wentland <Harry.Wentland@amd.com>
    Cc: Rodrigo Siqueira <Rodrigo.Siqueira@amd.com>
    Cc: Aurabindo Pillai <aurabindo.pillai@amd.com>
    Cc: Tom Chung <chiahsuan.chung@amd.com>
    Signed-off-by: default avatarSrinivasan Shanmugam <srinivasan.shanmugam@amd.com>
    Reviewed-by: default avatarTom Chung <chiahsuan.chung@amd.com>
    Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
    d2b48f34
dc_dmub_srv.c 50 KB