[PATCH 2/2] drm/amd/display: fix incorrect comparison in DML

Alex Deucher alexdeucher at gmail.com
Tue Jun 21 15:27:27 UTC 2022


Series is:
Acked-by: Alex Deucher <alexander.deucher at amd.com>

On Tue, Jun 21, 2022 at 11:23 AM Aurabindo Pillai
<aurabindo.pillai at amd.com> wrote:
>
> [Why&How]
> GCC 12 catches the following incorrect comparison in the if arm
>
> drivers/gpu/drm/amd/amdgpu/../dal-dev/dc/dml/dcn32/display_mode_vba_32.c: In function ‘dml32_ModeSupportAndSystemConfigurationFull’:
> drivers/gpu/drm/amd/amdgpu/../dal-dev/dc/dml/dcn32/display_mode_vba_32.c:3740:33: error: the comparison will always evaluate as ‘true’ for the address of ‘USRRetrainingSupport’ will never be NULL [-Werror=address]
> 3740 | || &mode_lib->vba.USRRetrainingSupport[i][j])) {
> | ^~
> In file included from ./drivers/gpu/drm/amd/amdgpu/../dal-dev/dc/dml/display_mode_lib.h:32,
> from ./drivers/gpu/drm/amd/amdgpu/../dal-dev/dc/dc.h:45,
> from drivers/gpu/drm/amd/amdgpu/../dal-dev/dc/dml/dcn32/display_mode_vba_32.c:30:
> ./drivers/gpu/drm/amd/amdgpu/../dal-dev/dc/dml/display_mode_vba.h:1175:14: note: ‘USRRetrainingSupport’ declared here
> 1175 | bool USRRetrainingSupport[DC__VOLTAGE_STATES][2];
> |
>
> Fix this by remove preceding & so that value is compared instead of
> address
>
> Fixes: d03037269bf2 ("drm/amd/display: DML changes for DCN32/321")
> Cc: Stable at vger.kernel.org
> Signed-off-by: Aurabindo Pillai <aurabindo.pillai at amd.com>
> ---
>  drivers/gpu/drm/amd/display/dc/dml/dcn32/display_mode_vba_32.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/amd/display/dc/dml/dcn32/display_mode_vba_32.c b/drivers/gpu/drm/amd/display/dc/dml/dcn32/display_mode_vba_32.c
> index c920d71fbd56..510b7a81ee12 100644
> --- a/drivers/gpu/drm/amd/display/dc/dml/dcn32/display_mode_vba_32.c
> +++ b/drivers/gpu/drm/amd/display/dc/dml/dcn32/display_mode_vba_32.c
> @@ -3725,7 +3725,7 @@ void dml32_ModeSupportAndSystemConfigurationFull(struct display_mode_lib *mode_l
>                                 && (!mode_lib->vba.FCLKChangeRequirementFinal || i == v->soc.num_states - 1
>                                 || mode_lib->vba.FCLKChangeSupport[i][j] != dm_fclock_change_unsupported)
>                                 && (!mode_lib->vba.USRRetrainingRequiredFinal
> -                               || &mode_lib->vba.USRRetrainingSupport[i][j])) {
> +                               || mode_lib->vba.USRRetrainingSupport[i][j])) {
>                                 mode_lib->vba.ModeSupport[i][j] = true;
>                         } else {
>                                 mode_lib->vba.ModeSupport[i][j] = false;
> --
> 2.36.1
>


More information about the amd-gfx mailing list