/* * stub_priv preserves private data of each urb. * It is allocated as stub_priv_cache and assigned to urb->context. * * stub_priv is always linked to any one of 3 lists; * priv_init: linked to this until the comletion of a urb. * priv_tx : linked to this after the completion of a urb. * priv_free: linked to this after the sending of the result. * * Any of these list operations should be locked by priv_lock.
*/
spinlock_t priv_lock; struct list_head priv_init; struct list_head priv_tx; struct list_head priv_free;
/* see comments for unlinking in stub_rx.c */ struct list_head unlink_tx; struct list_head unlink_free;
wait_queue_head_t tx_waitq;
};
/* private data into urb->priv */ struct stub_priv { unsignedlong seqnum; struct list_head list; struct stub_device *sdev; struct urb **urbs; struct scatterlist *sgl; int num_urbs; int completed_urbs; int urb_status;
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.