O. Hartmann wrote:
Scott Long wrote:

All,

Attached is my first cut at addressing the problems described in this thread. As I discussed earlier, the VM syncer thread is likely starving the USB interrupt thread. This causes the shared usb+network interrupt to remain masked, preventing network interrupts from being delivered,
and thus triggering watchdog timeouts.

This patch only addresses the USB driver. If your network card is sharing an interrupt with something other than (or additional to) USB,
this might not work for you.  Also, this patch is just a very rough
proof-of-concept and is not meant for production use.  But I'd like to
get feedback now before I spend more time on this.  If this works then
I'll clean it up and make it suitable for the release, and I'll look at
some of the other drivers like ichsmb.

If this is to be fixed for 6.2, I need lots of feedback ASAP.  So please
do not be shy =-)  The patch is at:

http://people.freebsd.org/~scottl/usb_fastintr.diff

Scott

_______________________________________________
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

patch does not work on my box:

cc -c -O2 -frename-registers -pipe -fno-strict-aliasing -march=athlon64 -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -fformat-extensions -std=c99 -nostdinc -I- -I. -I/usr/src/sys -I/usr/src/sys/contrib/altq -I/usr/src/sys/contrib/ipfilter -I/usr/src/sys/contrib/pf -I/usr/src/sys/contrib/dev/ath -I/usr/src/sys/contrib/dev/ath/freebsd -I/usr/src/sys/contrib/ngatm -I/usr/src/sys/dev/twa -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h -fno-common -finline-limit=8000 --param inline-unit-growth=100 --param large-function-growth=1000 -mcmodel=kernel -mno-red-zone -mfpmath=387 -mno-sse -mno-sse2 -mno-mmx -mno-3dnow -msoft-float -fno-asynchronous-unwind-tables -ffreestanding -Werror /usr/src/sys/dev/usb/usb.c
/usr/src/sys/dev/usb/usb.c: In function `usb_attach':
/usr/src/sys/dev/usb/usb.c:282: error: `usb_intr_task' undeclared (first use in this function) /usr/src/sys/dev/usb/usb.c:282: error: (Each undeclared identifier is reported only once
/usr/src/sys/dev/usb/usb.c:282: error: for each function it appears in.)
/usr/src/sys/dev/usb/usb.c: At top level:
/usr/src/sys/dev/usb/usb.c:863: warning: 'usb_intr_task' defined but not used
*** Error code 1

Stop in /usr/obj/usr/src/sys/THOR.
*** Error code 1

Stop in /usr/src.
*** Error code 1

Stop in /usr/src.


I accidentally posted a patch against HEAD, not RELENG_6. I'll correct that shortly.

Scott
_______________________________________________
freebsd-stable@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to