Re: [PATCH] drm/i915/display: fix uninitialized variable

From: Souza, Jose
Date: Fri Aug 28 2020 - 21:11:30 EST


Just merged the first patch that fixed this issue, thanks anyways.

2034c2129bc4a91d471815d4dc7a2a69eaa5338d - drm/i915/display: Ensure that ret is always initialized in icl_combo_phy_verify_state


On Tue, 2020-08-25 at 16:20 -0700, trix@xxxxxxxxxx wrote:
> From: Tom Rix <
> trix@xxxxxxxxxx
> >
>
> clang static analysis flags this error
>
> intel_combo_phy.c:268:7: warning: The left expression of the
> compound assignment is an uninitialized value.
> The computed value will also be garbage
> ret &= check_phy_reg(...
> ~~~ ^
>
> ret has no initial values, in icl_combo_phy_verify_state() ret is
> set by the next statment and then updated by similar &= logic.
>
> Because the check_phy_req() are only register reads, reorder the
> statements.
>
> Fixes: 239bef676d8e ("drm/i915/display: Implement new combo phy initialization step")
> Signed-off-by: Tom Rix <
> trix@xxxxxxxxxx
> >
> ---
> drivers/gpu/drm/i915/display/intel_combo_phy.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_combo_phy.c b/drivers/gpu/drm/i915/display/intel_combo_phy.c
> index 6968de4f3477..7622ef66c987 100644
> --- a/drivers/gpu/drm/i915/display/intel_combo_phy.c
> +++ b/drivers/gpu/drm/i915/display/intel_combo_phy.c
> @@ -264,6 +264,8 @@ static bool icl_combo_phy_verify_state(struct drm_i915_private *dev_priv,
> if (!icl_combo_phy_enabled(dev_priv, phy))
> return false;
>
> + ret = cnl_verify_procmon_ref_values(dev_priv, phy);
> +
> if (INTEL_GEN(dev_priv) >= 12) {
> ret &= check_phy_reg(dev_priv, phy, ICL_PORT_TX_DW8_LN0(phy),
> ICL_PORT_TX_DW8_ODCC_CLK_SEL |
> @@ -276,8 +278,6 @@ static bool icl_combo_phy_verify_state(struct drm_i915_private *dev_priv,
> DCC_MODE_SELECT_CONTINUOSLY);
> }
>
> - ret = cnl_verify_procmon_ref_values(dev_priv, phy);
> -
> if (phy_is_master(dev_priv, phy)) {
> ret &= check_phy_reg(dev_priv, phy, ICL_PORT_COMP_DW8(phy),
> IREFGEN, IREFGEN);
>