cvs commit: src/sys/dev/usb if_axe.c if_axereg.h

Sam Leffler sam at FreeBSD.org
Sat Nov 10 08:23:39 PST 2007


sam         2007-11-10 16:23:38 UTC

  FreeBSD src repository

  Modified files:
    sys/dev/usb          if_axe.c if_axereg.h 
  Log:
  Add private tx/rx buffer management to support large frame sizes
  and update the rx code to handle multiple frames in a single usb
  transfer.  AX772 parts (at least) exhibit many input errors when
  operated with a 2K rx buffer and no errors w/ a 4K rx buffer (it's
  unclear what the cause of the errors is for 2K so this may just be
  covering up the real issue).  Larger rx buffer sizes show no
  significant performance improvement for AX772.  Bypassing the common
  buffer management routines also eliminates an extra context switch
  on every packet which noticeably improves performance (TCP netperf
  rx goes from 45 Mb/s to 85 MB/s).
  
  Submitted by:   "J.R. Oldroyd" <fbsd at opal.com>
  Reviewed by:    imp
  Obtained from:  openbsd (partly)
  MFC after:      3 weeks
  
  Revision  Changes    Path
  1.56      +187 -102  src/sys/dev/usb/if_axe.c
  1.17      +37 -8     src/sys/dev/usb/if_axereg.h


More information about the cvs-src mailing list