diff options
author | joe <joe@FreeBSD.org> | 2002-05-02 22:47:37 +0000 |
---|---|---|
committer | joe <joe@FreeBSD.org> | 2002-05-02 22:47:37 +0000 |
commit | b44cd51e3e381abf26b5d7b61da3ce99672620a3 (patch) | |
tree | 5553652b8c72ae8262d4e9e3f9b6b1d68bf37d75 /sys | |
parent | ab041d4f7cfd81b60d44278773703f4cbb42c6fd (diff) | |
download | FreeBSD-src-b44cd51e3e381abf26b5d7b61da3ce99672620a3.zip FreeBSD-src-b44cd51e3e381abf26b5d7b61da3ce99672620a3.tar.gz |
MFNetBSD:
revision 1.94
date: 2001/12/30 20:26:59; author: augustss; state: Exp; lines: +5 -2
Make sure we don't have any pending softintrs when entering polling mode.
Thanks to Darrin for finding and fixing this problem when using USB
keyboards in DDB.
Diffstat (limited to 'sys')
-rw-r--r-- | sys/dev/usb/usbdi.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/sys/dev/usb/usbdi.c b/sys/dev/usb/usbdi.c index ce17751..ca39ea3 100644 --- a/sys/dev/usb/usbdi.c +++ b/sys/dev/usb/usbdi.c @@ -1,4 +1,4 @@ -/* $NetBSD: usbdi.c,v 1.93 2001/12/24 21:36:15 augustss Exp $ */ +/* $NetBSD: usbdi.c,v 1.94 2001/12/30 20:26:59 augustss Exp $ */ /* $FreeBSD$ */ /* @@ -1086,6 +1086,9 @@ usbd_set_polling(usbd_device_handle dev, int on) dev->bus->use_polling++; else dev->bus->use_polling--; + /* When polling we need to make sure there is nothing pending to do. */ + if (dev->bus->use_polling) + dev->bus->methods->soft_intr(dev->bus); } |