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