cvs commit: src/sys/dev/em if_em.c if_em.h if_em_hw.h
Gleb Smirnoff
glebius at FreeBSD.org
Thu Oct 20 01:46:46 PDT 2005
glebius 2005-10-20 08:46:44 UTC
FreeBSD src repository
Modified files:
sys/dev/em if_em.c if_em.h if_em_hw.h
Log:
Revamp interrupt handling in em(4) driver:
o Do not mask the RX overrun interrupt.
o Rewrite em_intr():
- Axe EM_MAX_INTR.
- Cycle acknowledging interrupts and processing
packets until zero interrupt cause register is
read.
- If RX overrun comes in log this fact. [ NetBSD also
resets adapter in this case, but my tests showed that
this is not needed and only pessimizes behavior under
heavy load. ]
- Since almost all functions is rewritten, style the
remaining lines.
This fixes em(4) interfaces wedging under high load.
In collaboration with: wpaul, cognet
Obtained from: NetBSD
Revision Changes Path
1.80 +37 -31 src/sys/dev/em/if_em.c
1.34 +1 -8 src/sys/dev/em/if_em.h
1.16 +1 -0 src/sys/dev/em/if_em_hw.h
More information about the cvs-src
mailing list