Lines Matching refs:unlink
911 struct vhci_unlink *unlink; in vhci_urb_dequeue() local
916 unlink = kzalloc(sizeof(struct vhci_unlink), GFP_ATOMIC); in vhci_urb_dequeue()
917 if (!unlink) { in vhci_urb_dequeue()
924 unlink->seqnum = atomic_inc_return(&vhci_hcd->seqnum); in vhci_urb_dequeue()
925 if (unlink->seqnum == 0xffff) in vhci_urb_dequeue()
928 unlink->unlink_seqnum = priv->seqnum; in vhci_urb_dequeue()
932 list_add_tail(&unlink->list, &vdev->unlink_tx); in vhci_urb_dequeue()
949 struct vhci_unlink *unlink, *tmp; in vhci_device_unlink_cleanup() local
955 list_for_each_entry_safe(unlink, tmp, &vdev->unlink_tx, list) { in vhci_device_unlink_cleanup()
956 pr_info("unlink cleanup tx %lu\n", unlink->unlink_seqnum); in vhci_device_unlink_cleanup()
957 list_del(&unlink->list); in vhci_device_unlink_cleanup()
958 kfree(unlink); in vhci_device_unlink_cleanup()
964 unlink = list_first_entry(&vdev->unlink_rx, struct vhci_unlink, in vhci_device_unlink_cleanup()
968 pr_info("unlink cleanup rx %lu\n", unlink->unlink_seqnum); in vhci_device_unlink_cleanup()
970 urb = pickup_urb_and_free_priv(vdev, unlink->unlink_seqnum); in vhci_device_unlink_cleanup()
973 unlink->unlink_seqnum); in vhci_device_unlink_cleanup()
974 list_del(&unlink->list); in vhci_device_unlink_cleanup()
975 kfree(unlink); in vhci_device_unlink_cleanup()
983 list_del(&unlink->list); in vhci_device_unlink_cleanup()
993 kfree(unlink); in vhci_device_unlink_cleanup()