Subject: Re: [net-next 03/12] e1000e: add check on e1e_wphy() return value

From: Joe Perches <[email-masked]>
Date: Thu, 10 Aug 2017 10:56:52 -0700

On Wed, 2017-08-09 at 14:47 -0700, Jeff Kirsher wrote:
> From: Gustavo A R Silva <[email-masked]>
> 
> Check return value from call to e1e_wphy(). This value is being
> checked during previous calls to function e1e_wphy() and it seems
> a check was missing here.

The use of "it seems" here is less than compelling.

Perhaps the write of 0x3140 to MII_BMCR takes too long for
the return value used.

Many other uses of e1e_wphy.*MII_BMCR are also not checked.

For instance: the e100e/ethtool uses.

> diff --git a/drivers/net/ethernet/intel/e1000e/ich8lan.c b/drivers/net/ethernet/intel/e1000e/ich8lan.c
[]
> @@ -2437,6 +2437,8 @@ static s32 e1000_hv_phy_workarounds_ich8lan(struct e1000_hw *hw)
>  		if (hw->phy.revision < 2) {
>  			e1000e_phy_sw_reset(hw);
>  			ret_val = e1e_wphy(hw, MII_BMCR, 0x3140);
> +			if (ret_val)
> +				return ret_val;
>  		}
>  	}
>