.\" This manpage has been automatically generated by docbook2man
.\" from a DocBook document. This tool can be found at:
.\"
.\" Please send any bug reports, improvements, comments, patches,
.\" etc. to Steve Cheng .
.TH "HPSB_GET_TLABEL" "" "06 October 2005" "" ""
.SH NAME
hpsb_get_tlabel \- allocate a transaction label
.SH SYNOPSIS
"SYNOPSIS"
.sp
\fB
.sp
int hpsb_get_tlabel (struct hpsb_packet * \fIpacket\fB, int \fIwait\fB);
\fR
.SH "ARGUMENTS"
.TP
\fB\fIpacket\fB\fR
the packet who's tlabel/tpool we set
.TP
\fB\fIwait\fB\fR
whether to sleep if no tlabel is available
.SH "DESCRIPTION"
.PP
Every asynchronous transaction on the 1394 bus needs a transaction label to
match the response to the request. This label has to be different from any
other transaction label in an outstanding request to the same node to make
matching possible without ambiguity.
.PP
There are 64 different tlabels, so an allocated tlabel has to be freed with
\fBhpsb_free_tlabel\fR after the transaction is complete (unless it's reused again for
the same target node).
.PP
\fIwait\fR cannot be set if \fBin_interrupt\fR
.SH "RETURN VALUE"
.PP
Zero on success, otherwise non-zero. A non-zero return
generally means there are no available tlabels.