Date: Thu, 20 Oct 2005 08:46:44 +0000 (UTC) From: Gleb Smirnoff <glebius@FreeBSD.org> To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/dev/em if_em.c if_em.h if_em_hw.h Message-ID: <200510200846.j9K8kidE069993@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
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
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200510200846.j9K8kidE069993>
