From: Stefan Assmann Date: Thu, 10 Jul 2014 10:29:39 +0000 (-0700) Subject: igb: do a reset on SR-IOV re-init if device is down X-Git-Tag: v3.10.51~68 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=125a0039d6eaee7b9e65be765f704d9278e7ccff;p=platform%2Fkernel%2Flinux-3.10.git igb: do a reset on SR-IOV re-init if device is down commit 76252723e88681628a3dbb9c09c963e095476f73 upstream. To properly re-initialize SR-IOV it is necessary to reset the device even if it is already down. Not doing this may result in Tx unit hangs. Signed-off-by: Stefan Assmann Tested-by: Aaron Brown Signed-off-by: Jeff Kirsher Signed-off-by: David S. Miller Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/net/ethernet/intel/igb/igb_main.c b/drivers/net/ethernet/intel/igb/igb_main.c index 64cbe0d..4d3c812 100644 --- a/drivers/net/ethernet/intel/igb/igb_main.c +++ b/drivers/net/ethernet/intel/igb/igb_main.c @@ -7229,6 +7229,8 @@ static int igb_sriov_reinit(struct pci_dev *dev) if (netif_running(netdev)) igb_close(netdev); + else + igb_reset(adapter); igb_clear_interrupt_scheme(adapter);