/* A new qset is created if one does not already exist.  */
struct whc_qset* get_qset(struct whc *whc, struct urb *urb, gfp_t mem_flags)
/* A new qset is created if one does not already exist.  */
struct whc_qset* get_qset(struct whc *whc, struct urb *urb, gfp_t mem_flags)
{
	struct whc_qset *qset;
	qset = urb->ep->hcpriv;
	if (qset == NULL) {
		qset = qset_alloc(whc, mem_flags);
		if (qset == NULL)
			return NULL;
		qset->ep = urb->ep;
		urb->ep->hcpriv = qset;
		qset_fill_qh(whc, qset, urb);
	}
	return qset;
}