cvs commit: src/sys/dev/em if_em.c

Gleb Smirnoff glebius at
Tue Aug 22 18:53:26 UTC 2006

On Tue, Aug 22, 2006 at 10:35:19AM -0500, Eric Anderson wrote:
E> >E> >P> yongari     2006-08-22 02:32:48 UTC
E> >E> >P> 
E> >E> >P>   FreeBSD src repository
E> >E> >P> 
E> >E> >P>   Modified files:
E> >E> >P>     sys/dev/em           if_em.c 
E> >E> >P>   Log:
E> >E> >P>   It seems that em(4) misses Tx completion interrupts under certain
E> >E> >P>   conditions. The cause of missing Tx completion interrupts comes 
E> >from
E> >E> >P>   Tx interrupt moderation mechanism(delayed interrupts) or chipset 
E> >bug.
E> >E> >P>   If Tx interrupt moderation mechanism is the cause of false 
E> >watchdog
E> >E> >P>   timeout error we should have to fix all device drivers that have 
E> >Tx
E> >E> >P>   interrupt moderation capability. We may need more investigation
E> >E> >P>   for this issue. Anyway, the fix is the same for both cases.
E> >E> >P>   
E> >E> >P>   This should fix occasional watchdog timeout errors seen on a few
E> >E> >P>   systems.
E> >E> >P>   
E> >E> >P>   Reported by:    -net, Patrick M. Hausen < hausen AT punkt DOT de >
E> >E> >P>   Tested by:      Patrick M. Hausen < hausen AT punkt DOT de >
E> >E> >
E> >E> >This look like a workaround, not a fix the root of the problem. Several
E> >E> >people on net said that this problem disappears if debug.mpsafenet=0.
E> >E> >So I think there is a problem in FreeBSD or driver, not in chip.
E> >E> 
E> >E> And it also worked perfectly for a very very long time until 6.x tree. 
E> >E> I went from 5-STABLE to 6-STABLE and started seeing it a lot ( a few 
E> >E> times per day) on a couple servers.
E> >
E> >In 5-STABLE the watchdog events were not logged, but the watchdog was
E> >processed.
E> But my interface never seemed to disappear (I page if the interface goes 
E> down), and I'd still notice a link up/down, correct?

In 5-STABLE the interface up/down events were not logged, either.

Totus tuus, Glebius.

More information about the cvs-src mailing list