cvs commit: src/sys/conf files src/sys/dev/usbmisc/ugen ugenbuf.c ugenbuf.h Makefile ugen.c

Matthew Dillon dillon at
Wed Jul 7 20:54:56 PDT 2004

dillon      2004/07/07 20:53:54 PDT

DragonFly src repository

  Modified files:
    sys/conf             files 
    sys/dev/usbmisc/ugen Makefile ugen.c 
  Added files:
    sys/dev/usbmisc/ugen ugenbuf.c ugenbuf.h 
  Julian Elischer posted an interesting proof-of-concept to freebsd-current
  regarding UGEN's use of a 1K stack buffer for bulk IO issues.  The small
  block size resulted in unnecessarily slow performance with certain devices.
  Implement a fix along the lines described.  Create a simple ugen buffer
  allocator abstraction and a one-entry cache to avoid unnecessary malloc/free
  sequences.  Allow the block size to be set with a sysctl and default it
  to 16K.
  Not much uses UGEN.  Camera software, mainly.  The change appears to
  slightly improve s10sh transfer performance from my Canon 10D.
  Revision  Changes    Path
  1.65      +1 -0      src/sys/conf/files
  1.4       +1 -1      src/sys/dev/usbmisc/ugen/Makefile
  1.15      +42 -16    src/sys/dev/usbmisc/ugen/ugen.c

More information about the Commits mailing list