Re: [PATCH 2/3] xhci: Handle canceled URBs when HC dies.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Am Donnerstag, 17. September 2009 01:42:36 schrieb Sarah Sharp:
> @@ -794,6 +795,17 @@ int xhci_urb_dequeue(struct usb_hcd *hcd, struct urb
> *urb, int status) ret = usb_hcd_check_unlink_urb(hcd, urb, status);
>         if (ret || !urb->hcpriv)
>                 goto done;
> +       temp = xhci_readl(xhci, &xhci->op_regs->status);
> +       if (temp == 0xffffffff) {
> +               xhci_dbg(xhci, "HW died, freeing TD.\n");
> +               td = (struct xhci_td *) urb->hcpriv;
> +
> +               usb_hcd_unlink_urb_from_ep(hcd, urb);
> +               spin_unlock_irqrestore(&xhci->lock, flags);
> +               usb_hcd_giveback_urb(xhci_to_hcd(xhci), urb, 0);

This should be -ESHUTDOWN, not 0.

	Regards
		Oliver

ÿôèº{.nÇ+?·?®?­?+%?Ëÿ±éݶ¥?wÿº{.nÇ+?·¥?{±þëþ)í?æèw*jg¬±¨¶????Ý¢jÿ¾«þG«?éÿ¢¸¢·¦j:+v?¨?wèjØm¶?ÿþø¯ù®w¥þ?àþf£¢·h??â?úÿ?Ù¥


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux