diff options
author | joe <joe@FreeBSD.org> | 2002-04-07 14:25:02 +0000 |
---|---|---|
committer | joe <joe@FreeBSD.org> | 2002-04-07 14:25:02 +0000 |
commit | 15941fbd97b74997e142c500d2f0523a5db58397 (patch) | |
tree | 9b9d27ac72aa00bd1e6159b1d12273e9849173a1 /sys/dev | |
parent | 7938502a0b0d2ed1c5ab5e02b7537cbcb5e6f2f9 (diff) | |
download | FreeBSD-src-15941fbd97b74997e142c500d2f0523a5db58397.zip FreeBSD-src-15941fbd97b74997e142c500d2f0523a5db58397.tar.gz |
MFNetBSD: ohci.c (1.100), ohcivar.h (1.25)
ohci.c
revision 1.100
date: 2001/01/28 16:18:09; author: augustss; state: Exp; lines: +7 -2
Put a rate limiter on the scheduling overrun message.
ohcivar.h:
revision 1.25
date: 2001/01/28 19:01:20; author: augustss; state: Exp; lines: +4 -1
Commit second half of rate limit change.
Diffstat (limited to 'sys/dev')
-rw-r--r-- | sys/dev/usb/ohci.c | 9 | ||||
-rw-r--r-- | sys/dev/usb/ohcivar.h | 5 |
2 files changed, 11 insertions, 3 deletions
diff --git a/sys/dev/usb/ohci.c b/sys/dev/usb/ohci.c index c42d8e1..c8b8c4c 100644 --- a/sys/dev/usb/ohci.c +++ b/sys/dev/usb/ohci.c @@ -1,4 +1,4 @@ -/* $NetBSD: ohci.c,v 1.99 2001/01/21 02:39:52 augustss Exp $ */ +/* $NetBSD: ohci.c,v 1.100 2001/01/28 16:18:09 augustss Exp $ */ /* $FreeBSD$ */ /* @@ -1078,7 +1078,12 @@ ohci_intr1(ohci_softc_t *sc) (u_int)eintrs)); if (eintrs & OHCI_SO) { - printf("%s: scheduling overrun\n",USBDEVNAME(sc->sc_bus.bdev)); + sc->sc_overrun_cnt++; + if (usbd_ratecheck(&sc->sc_overrun_ntc)) { + printf("%s: %u scheduling overruns\n", + USBDEVNAME(sc->sc_bus.bdev), sc->sc_overrun_cnt); + sc->sc_overrun_cnt = 0; + } /* XXX do what */ eintrs &= ~OHCI_SO; } diff --git a/sys/dev/usb/ohcivar.h b/sys/dev/usb/ohcivar.h index af43c47..99d0997 100644 --- a/sys/dev/usb/ohcivar.h +++ b/sys/dev/usb/ohcivar.h @@ -1,4 +1,4 @@ -/* $NetBSD: ohcivar.h,v 1.22 2000/04/25 09:20:55 augustss Exp $ */ +/* $NetBSD: ohcivar.h,v 1.25 2001/01/28 19:01:20 augustss Exp $ */ /* $FreeBSD$ */ /* @@ -131,6 +131,9 @@ typedef struct ohci_softc { void *sc_shutdownhook; /* cookie from shutdown hook */ #endif + u_int sc_overrun_cnt; + struct timeval sc_overrun_ntc; + usb_callout_t sc_tmo_rhsc; device_ptr_t sc_child; |