[Intel-wired-lan] [net-queue PATCH] e1000e: Workaround for VMware emulated 82574 setting of LSC

Neftin, Sasha sasha.neftin at intel.com
Thu Jan 18 07:05:01 UTC 2018


On 1/17/2018 23:49, Alexander Duyck wrote:
> This patch is meant to address the fact that after the patch for addressing
> receive overrun interrupt bursts VMware emulated versions of the 82574 were
> no longer able to bring up link. I believe this is due to the fact that the
> emulation was based more on the driver implementation then on the actual
> hardware behavior.
>
> In order to resolve this we will need to modify the fix so that we only
> force the LSC checks when the receiver overrun bit is set in the ICR
> register. By doing this we can maintain the legacy behavior needed to keep
> the emulated interfaces going while also addressing the issues with the RXO
> interrupt cause seen with the physical hardware.
>
> Fixes: 4aea7a5c5e94 ("e1000e: Avoid receiver overrun interrupt bursts")
> Signed-off-by: Alexander Duyck <alexander.h.duyck at intel.com>
> ---
>   drivers/net/ethernet/intel/e1000e/netdev.c |   11 +++++++++--
>   1 file changed, 9 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/net/ethernet/intel/e1000e/netdev.c b/drivers/net/ethernet/intel/e1000e/netdev.c
> index 1298b69..74d5352 100644
> --- a/drivers/net/ethernet/intel/e1000e/netdev.c
> +++ b/drivers/net/ethernet/intel/e1000e/netdev.c
> @@ -1927,8 +1927,15 @@ static irqreturn_t e1000_msix_other(int __always_unused irq, void *data)
>   			adapter->total_rx_packets = 0;
>   			__napi_schedule(&adapter->napi);
>   		}
> -	}
> -	if (icr & E1000_ICR_LSC) {
> +		if (icr & E1000_ICR_LSC)
> +			goto update_link;
> +	} else {
> +		/* We assume if the RXO bit is not set that this is a
> +		 * link status change event. This is needed due to emulated
> +		 * versions of the device that may not correctly populate
> +		 * the LSC bit.
> +		 */
> +update_link:
>   		ew32(ICR, E1000_ICR_LSC);
>   		hw->mac.get_link_status = true;
>   		/* guard against interrupt when we're going down */
>
> _______________________________________________
> Intel-wired-lan mailing list
> Intel-wired-lan at osuosl.org
> https://lists.osuosl.org/mailman/listinfo/intel-wired-lan

Acked-by: Sasha Neftin <sasha.neftin at intel.com>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osuosl.org/pipermail/intel-wired-lan/attachments/20180118/8f8dc225/attachment-0001.html>


More information about the Intel-wired-lan mailing list