summaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/intel/e1000/e1000_hw.c
diff options
context:
space:
mode:
authorJean Sacren <sakiwit@gmail.com>2015-09-19 13:08:47 +0200
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>2015-12-13 08:11:16 +0100
commitc619581a7903fadccb900d1d497d2366fdf7da9d (patch)
tree5f7f1646423de34b62164475dfb03ed78fa6d3fe /drivers/net/ethernet/intel/e1000/e1000_hw.c
parente1000: fix kernel-doc argument being missing (diff)
downloadlinux-c619581a7903fadccb900d1d497d2366fdf7da9d.tar.xz
linux-c619581a7903fadccb900d1d497d2366fdf7da9d.zip
e1000: get rid of duplicate exit path
By using goto statement, we can achieve sharing the same exit path so that code duplication could be minimized. Signed-off-by: Jean Sacren <sakiwit@gmail.com> Tested-by: Aaron Brown <aaron.f.brown@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Diffstat (limited to 'drivers/net/ethernet/intel/e1000/e1000_hw.c')
-rw-r--r--drivers/net/ethernet/intel/e1000/e1000_hw.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/drivers/net/ethernet/intel/e1000/e1000_hw.c b/drivers/net/ethernet/intel/e1000/e1000_hw.c
index dbae55e926e7..9c06456759e9 100644
--- a/drivers/net/ethernet/intel/e1000/e1000_hw.c
+++ b/drivers/net/ethernet/intel/e1000/e1000_hw.c
@@ -2822,14 +2822,13 @@ s32 e1000_read_phy_reg(struct e1000_hw *hw, u32 reg_addr, u16 *phy_data)
(reg_addr > MAX_PHY_MULTI_PAGE_REG)) {
ret_val = e1000_write_phy_reg_ex(hw, IGP01E1000_PHY_PAGE_SELECT,
(u16) reg_addr);
- if (ret_val) {
- spin_unlock_irqrestore(&e1000_phy_lock, flags);
- return ret_val;
- }
+ if (ret_val)
+ goto out;
}
ret_val = e1000_read_phy_reg_ex(hw, MAX_PHY_REG_ADDRESS & reg_addr,
phy_data);
+out:
spin_unlock_irqrestore(&e1000_phy_lock, flags);
return ret_val;