e1000e: Add code to check return values on NVM accesses
authorDavid Ertman <david.m.ertman@intel.com>
Wed, 9 Jul 2014 16:07:42 +0000 (16:07 +0000)
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>
Sat, 26 Jul 2014 03:51:00 +0000 (20:51 -0700)
Adding code to check and respond to previously ignored return values
from NVM access functions.

Issue discovered through static analysis.

Signed-off-by: Dave Ertman <david.m.ertman@intel.com>
Tested-by: Aaron Brown <aaron.f.brown@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
drivers/net/ethernet/intel/e1000e/manage.c
drivers/net/ethernet/intel/e1000e/netdev.c
drivers/net/ethernet/intel/e1000e/nvm.c

index cb37ff1..5885603 100644 (file)
@@ -327,9 +327,12 @@ bool e1000e_enable_mng_pass_thru(struct e1000_hw *hw)
        } else if ((hw->mac.type == e1000_82574) ||
                   (hw->mac.type == e1000_82583)) {
                u16 data;
+               s32 ret_val;
 
                factps = er32(FACTPS);
-               e1000_read_nvm(hw, NVM_INIT_CONTROL2_REG, 1, &data);
+               ret_val = e1000_read_nvm(hw, NVM_INIT_CONTROL2_REG, 1, &data);
+               if (ret_val)
+                       return false;
 
                if (!(factps & E1000_FACTPS_MNGCG) &&
                    ((data & E1000_NVM_INIT_CTRL2_MNGM) ==