cvs commit: src/sys/conf files src/sys/dev/usbmisc/ugen ugenbuf.c ugenbuf.h Makefile ugen.c
Matthew Dillon
dillon at crater.dragonflybsd.org
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
Log:
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
http://www.dragonflybsd.org/cvsweb/src/sys/conf/files.diff?r1=1.64&r2=1.65&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/usbmisc/ugen/Makefile.diff?r1=1.3&r2=1.4&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/dev/usbmisc/ugen/ugen.c.diff?r1=1.14&r2=1.15&f=u
More information about the Commits
mailing list