Lines Matching refs:urb

12 /* get URB from transmitted urb queue. caller must hold vdev->priv_lock */
13 struct urb *pickup_urb_and_free_priv(struct vhci_device *vdev, __u32 seqnum)
16 struct urb *urb = NULL;
23 urb = priv->urb;
24 status = urb->status;
26 usbip_dbg_vhci_rx("find urb seqnum %u\n", seqnum);
32 dev_dbg(&urb->dev->dev,
33 "urb seq# %u was unlinked %ssynchronously\n",
40 dev_dbg(&urb->dev->dev,
41 "urb seq# %u may be in a error, status %d\n",
47 urb->hcpriv = NULL;
52 return urb;
61 struct urb *urb;
65 urb = pickup_urb_and_free_priv(vdev, pdu->base.seqnum);
68 if (!urb) {
69 pr_err("cannot find a urb of seqnum %u max seqnum %d\n",
76 /* unpack the pdu to a urb */
77 usbip_pack_pdu(pdu, urb, USBIP_RET_SUBMIT, 0);
80 if (usbip_recv_xbuff(ud, urb) < 0) {
81 urb->status = -EPROTO;
86 if (usbip_recv_iso(ud, urb) < 0) {
87 urb->status = -EPROTO;
92 usbip_pad_iso(ud, urb);
96 usbip_dump_urb(urb);
98 if (urb->num_sgs)
99 urb->transfer_flags &= ~URB_DMA_MAP_SG;
101 usbip_dbg_vhci_rx("now giveback urb %u\n", pdu->base.seqnum);
104 usb_hcd_unlink_urb_from_ep(vhci_hcd_to_hcd(vhci_hcd), urb);
107 usb_hcd_giveback_urb(vhci_hcd_to_hcd(vhci_hcd), urb, urb->status);
143 struct urb *urb;
156 urb = pickup_urb_and_free_priv(vdev, unlink->unlink_seqnum);
159 if (!urb) {
165 pr_info("the urb (seqnum %d) was already given back\n",
168 usbip_dbg_vhci_rx("now giveback urb %d\n", pdu->base.seqnum);
171 urb->status = pdu->u.ret_unlink.status;
172 pr_info("urb->status %d\n", urb->status);
175 usb_hcd_unlink_urb_from_ep(vhci_hcd_to_hcd(vhci_hcd), urb);
178 usb_hcd_giveback_urb(vhci_hcd_to_hcd(vhci_hcd), urb, urb->status);