diff options
author | Martin Pieuchot <mpi@cvs.openbsd.org> | 2014-05-08 14:00:53 +0000 |
---|---|---|
committer | Martin Pieuchot <mpi@cvs.openbsd.org> | 2014-05-08 14:00:53 +0000 |
commit | ffa1eed33f1a9dccb3dfa2d8682f0dfbc47d200e (patch) | |
tree | f4ce2713582cdbd1270ba120ba5c392d4680d3df /sys/dev/usb/uhci.c | |
parent | 18488c107d9e55210af914a4794cceb8515d90ff (diff) |
Plug one more xfer leak.
Now that aborting interrupt pipes does not prevent us from freeing
the associated xfer, make sure to flag this xfer as "done" even if
there's no need to abort it in hardware.
Diffstat (limited to 'sys/dev/usb/uhci.c')
-rw-r--r-- | sys/dev/usb/uhci.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/sys/dev/usb/uhci.c b/sys/dev/usb/uhci.c index 7fe63f9c6c1..b720b39eb74 100644 --- a/sys/dev/usb/uhci.c +++ b/sys/dev/usb/uhci.c @@ -1,4 +1,4 @@ -/* $OpenBSD: uhci.c,v 1.114 2014/05/04 14:42:36 mpi Exp $ */ +/* $OpenBSD: uhci.c,v 1.115 2014/05/08 14:00:52 mpi Exp $ */ /* $NetBSD: uhci.c,v 1.172 2003/02/23 04:19:26 simonb Exp $ */ /* $FreeBSD: src/sys/dev/usb/uhci.c,v 1.33 1999/11/17 22:33:41 n_hibma Exp $ */ @@ -1785,6 +1785,9 @@ uhci_abort_xfer(struct usbd_xfer *xfer, usbd_status status) xfer->status = status; /* make software ignore it */ timeout_del(&xfer->timeout_handle); usb_rem_task(xfer->device, &xfer->abort_task); +#ifdef DIAGNOSTIC + ux->isdone = 1; +#endif usb_transfer_complete(xfer); splx(s); return; |