Date: Sat, 10 Nov 2007 16:23:38 +0000 (UTC) From: Sam Leffler <sam@FreeBSD.org> To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/dev/usb if_axe.c if_axereg.h Message-ID: <200711101623.lAAGNccg068642@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
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@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
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200711101623.lAAGNccg068642>