Message ID | 1335333314-6814-2-git-send-email-jeffrey.t.kirsher@intel.com |
---|---|
State | Accepted, archived |
Delegated to: | David Miller |
Headers | show |
On Tue, 2012-04-24 at 22:55 -0700, Jeff Kirsher wrote: > From: Prasanna S Panchamukhi <ppanchamukhi@riverbed.com> > > Following logs where seen on Systems with multiple NICs, > while using MSI interrupts as shown below: [...] > This patch fixes this problem by increasing the msleep from 50 to 100. [...] It probably doesn't, in general. The out-of-tree version of the sfc driver used to perform an interrupt test during probe, and after fixing it up repeatedly I eventually had to remove it completely as there are so many ways to get a false negative. Also see the related commit 93e5dfa59b0e26a145a8adce5c9edf50bdaef4c7 ('sfc: Raise self-test timeouts'). Ben.
On 04/25/2012 08:59 AM, Ben Hutchings wrote: > On Tue, 2012-04-24 at 22:55 -0700, Jeff Kirsher wrote: >> From: Prasanna S Panchamukhi<ppanchamukhi@riverbed.com> >> >> Following logs where seen on Systems with multiple NICs, >> while using MSI interrupts as shown below: > [...] >> This patch fixes this problem by increasing the msleep from 50 to 100. > [...] > > It probably doesn't, in general. The out-of-tree version of the sfc > driver used to perform an interrupt test during probe, and after fixing > it up repeatedly I eventually had to remove it completely as there are > so many ways to get a false negative. Also see the related commit > 93e5dfa59b0e26a145a8adce5c9edf50bdaef4c7 ('sfc: Raise self-test > timeouts'). > Thanks Ben for your review. In general Ben's approach looks good fix to avoid false negatives. To give a little bit of background, this issues is seen mostly with Intel 82571 Dual/quad port Gigabit ethernet controller add-on NICs and not seen with other Intel ethernet controller NICs. If Ben suggested approach is the best way to go, I will provide a patch soon. Thanks, Prasanna > Ben. > -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/net/ethernet/intel/e1000e/netdev.c b/drivers/net/ethernet/intel/e1000e/netdev.c index 19ab215..9520a6a 100644 --- a/drivers/net/ethernet/intel/e1000e/netdev.c +++ b/drivers/net/ethernet/intel/e1000e/netdev.c @@ -3799,7 +3799,7 @@ static int e1000_test_msi_interrupt(struct e1000_adapter *adapter) /* fire an unusual interrupt on the test handler */ ew32(ICS, E1000_ICS_RXSEQ); e1e_flush(); - msleep(50); + msleep(100); e1000_irq_disable(adapter);