]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
bnxt_en: Fix an error handling path in 'bnxt_get_module_eeprom()'
authorChristophe JAILLET <christophe.jaillet@wanadoo.fr>
Tue, 21 Nov 2017 19:46:49 +0000 (20:46 +0100)
committerJack Vogel <jack.vogel@oracle.com>
Fri, 9 Mar 2018 05:02:33 +0000 (21:02 -0800)
Orabug: 2764835527648339

Error code returned by 'bnxt_read_sfp_module_eeprom_info()' is handled a
few lines above when reading the A0 portion of the EEPROM.
The same should be done when reading the A2 portion of the EEPROM.

In order to correctly propagate an error, update 'rc' in this 2nd call as
well, otherwise 0 (success) is returned.

Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Signed-off-by: David S. Miller <davem@davemloft.net>
(cherry picked from commit dea521a2b9f96e905fa2bb2f95e23ec00c2ec436)
Signed-off-by: Brian Maly <brian.maly@oracle.com>
Reviewed-by: Jack Vogel <jack.vogel@oracle.com>
drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c

index 10c07d785295c0dae3c7fb3cb7fcaa2168afe723..08dad14ac10124c8951d9541ad7a810c215588ee 100644 (file)
@@ -2354,8 +2354,8 @@ static int bnxt_get_module_eeprom(struct net_device *dev,
        /* Read A2 portion of the EEPROM */
        if (length) {
                start -= ETH_MODULE_SFF_8436_LEN;
-               bnxt_read_sfp_module_eeprom_info(bp, I2C_DEV_ADDR_A2, 1, start,
-                                                length, data);
+               rc = bnxt_read_sfp_module_eeprom_info(bp, I2C_DEV_ADDR_A2, 1,
+                                                     start, length, data);
        }
        return rc;
 }