/* Append an urb_link (or a whole list of urb_links) to the tail of another list of urb_links.  */
void urb_append(urb_link *hd, struct urb *urb)
/* Append an urb_link (or a whole list of urb_links) to the tail of another list of urb_links.  */
void urb_append(urb_link *hd, struct urb *urb)
{
	if (hd && urb) {
		urb_link *new = &urb->link;
		urb_link *pul = hd->prev;
		new->prev->next = hd;
		hd->prev = new->prev;
		new->prev = pul;
		pul->next = new;
	}
}