diff options
author | hselasky <hselasky@FreeBSD.org> | 2014-02-27 12:11:43 +0000 |
---|---|---|
committer | hselasky <hselasky@FreeBSD.org> | 2014-02-27 12:11:43 +0000 |
commit | 3e00ce691ae61b817d24139683a8604bf8e2f1e2 (patch) | |
tree | 4eaa9eafc1da662de5ae57ef83d1ee7b8478327d /sys/dev | |
parent | 252788294bbc3b1d57024d42e76e35fe9424803f (diff) | |
download | FreeBSD-src-3e00ce691ae61b817d24139683a8604bf8e2f1e2.zip FreeBSD-src-3e00ce691ae61b817d24139683a8604bf8e2f1e2.tar.gz |
Clear the knote list before destroying it.
Add seldrain() to wakeup any pollers.
Submitted by: Kohji Okuno <okuno.kohji@jp.panasonic.com>
MFC after: 2 weeks
Diffstat (limited to 'sys/dev')
-rw-r--r-- | sys/dev/usb/usb_dev.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/dev/usb/usb_dev.c b/sys/dev/usb/usb_dev.c index b77fba0..c81b942 100644 --- a/sys/dev/usb/usb_dev.c +++ b/sys/dev/usb/usb_dev.c @@ -622,6 +622,8 @@ usb_fifo_free(struct usb_fifo *f) cv_destroy(&f->cv_io); cv_destroy(&f->cv_drain); + knlist_clear(&f->selinfo.si_note, 0); + seldrain(&f->selinfo); knlist_destroy(&f->selinfo.si_note); free(f, M_USBDEV); |