.\" 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 "MC32_SEND_PACKET" "9" "09 October 2005" "" "" .SH NAME mc32_send_packet \- queue a frame for transmit .SH SYNOPSIS "SYNOPSIS" .sp \fB .sp int mc32_send_packet (struct sk_buff * \fIskb\fB, struct net_device * \fIdev\fB); \fR .SH "ARGUMENTS" .TP \fB\fIskb\fB\fR buffer to transmit .TP \fB\fIdev\fB\fR 3c527 to send it out of .SH "DESCRIPTION" .PP Transmit a buffer. This normally means throwing the buffer onto the transmit queue as the queue is quite large. If the queue is full then we set tx_busy and return. Once the interrupt handler gets messages telling it to reclaim transmit queue entries, we will clear tx_busy and the kernel will start calling this again. .PP We do not disable interrupts or acquire any locks; this can run concurrently with \fBmc32_tx_ring\fR, and the function itself is serialised at a higher layer. However, similarly for the card itself, we must ensure that we update tx_ring_head only after we've established a valid packet on the tx ring (and before we let the card ``see'' it, to prevent it racing with the irq handler).