igc: Fix overwrites return value
authorSasha Neftin <sasha.neftin@intel.com>
Wed, 24 Mar 2021 08:05:31 +0000 (10:05 +0200)
committerTony Nguyen <anthony.l.nguyen@intel.com>
Fri, 16 Apr 2021 20:15:45 +0000 (13:15 -0700)
drivers/net/ethernet/intel/igc/igc_i225.c:235 igc_write_nvm_srwr()
warn: loop overwrites return value 'ret_val'

Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Sasha Neftin <sasha.neftin@intel.com>
Tested-by: Dvora Fuxbrumer <dvorax.fuxbrumer@linux.intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
drivers/net/ethernet/intel/igc/igc_i225.c

index cc83bb5c15e8f92e16a5039c2a87bd31ada30772..b2ef9fde97b38a7def197b6b844b5e6909c54d96 100644 (file)
@@ -229,10 +229,11 @@ static s32 igc_write_nvm_srwr(struct igc_hw *hw, u16 offset, u16 words,
        if (offset >= nvm->word_size || (words > (nvm->word_size - offset)) ||
            words == 0) {
                hw_dbg("nvm parameter(s) out of bounds\n");
-               goto out;
+               return ret_val;
        }
 
        for (i = 0; i < words; i++) {
+               ret_val = -IGC_ERR_NVM;
                eewr = ((offset + i) << IGC_NVM_RW_ADDR_SHIFT) |
                        (data[i] << IGC_NVM_RW_REG_DATA) |
                        IGC_NVM_RW_REG_START;
@@ -254,7 +255,6 @@ static s32 igc_write_nvm_srwr(struct igc_hw *hw, u16 offset, u16 words,
                }
        }
 
-out:
        return ret_val;
 }