diff options
author | Hans de Goede <hdegoede@redhat.com> | 2012-03-02 21:27:20 +0100 |
---|---|---|
committer | Gerd Hoffmann <kraxel@redhat.com> | 2012-03-07 12:28:04 +0100 |
commit | d61000a8b1d99c5155440b727ea32f12a4988120 (patch) | |
tree | 2ed6a95d37f099e1644cec2a0403ba1b0271de1e /usb-linux.c | |
parent | 4d819a9bde7f52e7421d4128dc69c296c9fd017a (diff) | |
download | qemu-d61000a8b1d99c5155440b727ea32f12a4988120.zip |
usb: add USB_RET_IOERROR
We already have USB_RET_NAK, but that means that a device does not want
to send/receive right now. But with host / network redirection we can
actually have a transaction fail due to some io error, rather then ie
the device just not having any data atm.
This patch adds a new error code named USB_RET_IOERROR for this, and uses
it were appropriate.
Notes:
-Currently all usb-controllers handle this the same as NODEV, but that
may change in the future, OHCI could indicate a CRC error instead for example.
-This patch does not touch hw/usb-musb.c, that is because the code in there
handles STALL and NAK specially and has a if status < 0 generic catch all
for all other errors
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
Diffstat (limited to 'usb-linux.c')
-rw-r--r-- | usb-linux.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/usb-linux.c b/usb-linux.c index 38df9e613e..050ea7a87d 100644 --- a/usb-linux.c +++ b/usb-linux.c @@ -369,7 +369,7 @@ static void async_complete(void *opaque) break; default: - p->result = USB_RET_NAK; + p->result = USB_RET_IOERROR; break; } @@ -729,7 +729,7 @@ static int urb_status_to_usb_ret(int status) case -EOVERFLOW: return USB_RET_BABBLE; default: - return USB_RET_NAK; + return USB_RET_IOERROR; } } |