OSDN Git Service

ice: initialize local variable 'tlv'
authorTom Rix <trix@redhat.com>
Mon, 14 Feb 2022 15:40:43 +0000 (07:40 -0800)
committerTony Nguyen <anthony.l.nguyen@intel.com>
Fri, 18 Feb 2022 21:28:39 +0000 (13:28 -0800)
Clang static analysis reports this issues
ice_common.c:5008:21: warning: The left expression of the compound
  assignment is an uninitialized value. The computed value will
  also be garbage
  ldo->phy_type_low |= ((u64)buf << (i * 16));
  ~~~~~~~~~~~~~~~~~ ^

When called from ice_cfg_phy_fec() ldo is the uninitialized local
variable tlv.  So initialize.

Fixes: ea78ce4dab05 ("ice: add link lenient and default override support")
Signed-off-by: Tom Rix <trix@redhat.com>
Tested-by: Gurucharan G <gurucharanx.g@intel.com> (A Contingent worker at Intel)
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
drivers/net/ethernet/intel/ice/ice_common.c

index a6d7d3e..e2af99a 100644 (file)
@@ -3340,7 +3340,7 @@ ice_cfg_phy_fec(struct ice_port_info *pi, struct ice_aqc_set_phy_cfg_data *cfg,
 
        if (fec == ICE_FEC_AUTO && ice_fw_supports_link_override(hw) &&
            !ice_fw_supports_report_dflt_cfg(hw)) {
-               struct ice_link_default_override_tlv tlv;
+               struct ice_link_default_override_tlv tlv = { 0 };
 
                status = ice_get_link_default_override(&tlv, pi);
                if (status)