On Tue, 13 Nov 2007 17:57:12 -0500 Tony Battersby <[EMAIL PROTECTED]> wrote:
> Stephen Hemminger wrote: > > I can reproduce the problem under load with only a single port on 2.6.23. > > I haven't been able to reproduce it on 2.6.24-rc2 (latest) but that maybe > > because of either insufficient stress or another bug fix correcting the > > problem. There is an issue with Yukon XL updating the receive status index > > before updating the receive status structure, that is now fixed in 2.6.24. > > The fix is: > > > > commit ab5adecb2d02f3688719dfb5936a82833fcc3955 > > Author: Stephen Hemminger <[EMAIL PROTECTED]> > > Date: Mon Nov 5 15:52:09 2007 -0800 > > > > sky2: status ring race fix > > > > The D-Link PCI-X board (and maybe others) can lie about status > > ring entries. It seems it will update the register for last status > > index before completing the DMA for the ring entry. To avoid reading > > stale data, zap the old entry and check. > > > > Signed-off-by: Stephen Hemminger <[EMAIL PROTECTED]> > > Signed-off-by: Jeff Garzik <[EMAIL PROTECTED]> > The kernel I tested (2.6.24-rc2-git3) has this patch in it already. > Perhaps that is why the problem happens less frequently with that > kernel, but it didn't fix it entirely. > > Do you want the test program I am using? It is a pretty basic > send()/recv() program, ~650 lines of C. > > Tony > Not really, iperf drives the problem fine. -- Stephen Hemminger <[EMAIL PROTECTED]> - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html