diff options
author | Martin Pieuchot <mpi@cvs.openbsd.org> | 2015-01-18 11:54:03 +0000 |
---|---|---|
committer | Martin Pieuchot <mpi@cvs.openbsd.org> | 2015-01-18 11:54:03 +0000 |
commit | c22a06cc1fea81316c9d44cb2f9a4a45ba940594 (patch) | |
tree | a43fc052b12295dcdd9ad95520a91d3181abfb1d /sys/dev/usb/xhcivar.h | |
parent | 9466c593708b6d7d7a54f5ed531ae7e8dcb7d76a (diff) |
Since we are no longer resetting rings when a Babble or Stall condition
is detected, simply keep track of the faulty xfer instead of completing
all the pending ones.
Fix a race condition where we could end up aborting a freshly enqueued
xfer when two different threads are submitting control transfers (i.e.
usbdevs(8) and a kernel driver).
Diffstat (limited to 'sys/dev/usb/xhcivar.h')
-rw-r--r-- | sys/dev/usb/xhcivar.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/dev/usb/xhcivar.h b/sys/dev/usb/xhcivar.h index fad436ead25..e2a1f56fda3 100644 --- a/sys/dev/usb/xhcivar.h +++ b/sys/dev/usb/xhcivar.h @@ -1,4 +1,4 @@ -/* $OpenBSD: xhcivar.h,v 1.6 2014/12/15 17:10:44 mpi Exp $ */ +/* $OpenBSD: xhcivar.h,v 1.7 2015/01/18 11:54:02 mpi Exp $ */ /* * Copyright (c) 2014 Martin Pieuchot @@ -35,7 +35,7 @@ struct usbd_dma_info { struct xhci_xfer { struct usbd_xfer xfer; - int index; /* Index of the first TRB */ + int index; /* Index of the last TRB */ size_t ntrb; /* Number of associated TRBs */ }; |