[Intel-wired-lan] [PATCH] intel-ethernet: warn when fatal read failure happens
Neftin, Sasha
sasha.neftin at intel.com
Thu Jan 10 08:18:57 UTC 2019
On 1/9/2019 08:30, Feng Tang wrote:
> Failed in read the HW register is very serious for igb/igc driver,
> as its hw_addr will be set to NULL and cause the adapter be seen as
> "REMOVED".
>
> We saw the error only a few times in the MTBF test for suspend/resume,
> but can hardly get any useful info to debug.
>
> Adding WARN() so that we can get the necessary information about
> where and how it happens, and use it for root causing and fixing
> this "PCIe link lost issue"
>
> This affects igb, igc.
>
> Signed-off-by: Feng Tang <feng.tang at intel.com>
> ---
> drivers/net/ethernet/intel/igb/igb_main.c | 1 +
> drivers/net/ethernet/intel/igc/igc_main.c | 1 +
> 2 files changed, 2 insertions(+)
>
> diff --git a/drivers/net/ethernet/intel/igb/igb_main.c b/drivers/net/ethernet/intel/igb/igb_main.c
> index 87bdf16..eaa3d6d 100644
> --- a/drivers/net/ethernet/intel/igb/igb_main.c
> +++ b/drivers/net/ethernet/intel/igb/igb_main.c
> @@ -753,6 +753,7 @@ u32 igb_rd32(struct e1000_hw *hw, u32 reg)
> struct net_device *netdev = igb->netdev;
> hw->hw_addr = NULL;
> netdev_err(netdev, "PCIe link lost\n");
> + WARN(1, "igb: Failed to read reg 0x%x!", reg);
> }
>
> return value;
> diff --git a/drivers/net/ethernet/intel/igc/igc_main.c b/drivers/net/ethernet/intel/igc/igc_main.c
> index f201830..72e4263 100644
> --- a/drivers/net/ethernet/intel/igc/igc_main.c
> +++ b/drivers/net/ethernet/intel/igc/igc_main.c
> @@ -3496,6 +3496,7 @@ u32 igc_rd32(struct igc_hw *hw, u32 reg)
> hw->hw_addr = NULL;
> netif_device_detach(netdev);
> netdev_err(netdev, "PCIe link lost, device now detached\n");
> + WARN(1, "igc: Failed to read reg 0x%x!", reg);
Looks good. Small suggestion: add end of the line "\n"
WARN(1, "igc: Failed to read reg 0x%x!\n", reg);
> }
>
> return value;
>
Sasha
More information about the Intel-wired-lan
mailing list