diff options
Diffstat (limited to 'drivers/usb/core/message.c')
| -rw-r--r-- | drivers/usb/core/message.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/usb/core/message.c b/drivers/usb/core/message.c index 88d1b376f67c..c47c8052b486 100644 --- a/drivers/usb/core/message.c +++ b/drivers/usb/core/message.c | |||
| @@ -48,7 +48,6 @@ static int usb_start_wait_urb(struct urb *urb, int timeout, int* actual_length) | |||
| 48 | 48 | ||
| 49 | init_completion(&done); | 49 | init_completion(&done); |
| 50 | urb->context = &done; | 50 | urb->context = &done; |
| 51 | urb->transfer_flags |= URB_ASYNC_UNLINK; | ||
| 52 | urb->actual_length = 0; | 51 | urb->actual_length = 0; |
| 53 | status = usb_submit_urb(urb, GFP_NOIO); | 52 | status = usb_submit_urb(urb, GFP_NOIO); |
| 54 | 53 | ||
| @@ -266,7 +265,9 @@ static void sg_complete (struct urb *urb, struct pt_regs *regs) | |||
| 266 | continue; | 265 | continue; |
| 267 | if (found) { | 266 | if (found) { |
| 268 | status = usb_unlink_urb (io->urbs [i]); | 267 | status = usb_unlink_urb (io->urbs [i]); |
| 269 | if (status != -EINPROGRESS && status != -EBUSY) | 268 | if (status != -EINPROGRESS |
| 269 | && status != -ENODEV | ||
| 270 | && status != -EBUSY) | ||
| 270 | dev_err (&io->dev->dev, | 271 | dev_err (&io->dev->dev, |
| 271 | "%s, unlink --> %d\n", | 272 | "%s, unlink --> %d\n", |
| 272 | __FUNCTION__, status); | 273 | __FUNCTION__, status); |
| @@ -357,8 +358,7 @@ int usb_sg_init ( | |||
| 357 | if (!io->urbs) | 358 | if (!io->urbs) |
| 358 | goto nomem; | 359 | goto nomem; |
| 359 | 360 | ||
| 360 | urb_flags = URB_ASYNC_UNLINK | URB_NO_TRANSFER_DMA_MAP | 361 | urb_flags = URB_NO_TRANSFER_DMA_MAP | URB_NO_INTERRUPT; |
| 361 | | URB_NO_INTERRUPT; | ||
| 362 | if (usb_pipein (pipe)) | 362 | if (usb_pipein (pipe)) |
| 363 | urb_flags |= URB_SHORT_NOT_OK; | 363 | urb_flags |= URB_SHORT_NOT_OK; |
| 364 | 364 | ||
