.\" 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 "RX_OSM_HANDLER" "9" "09 October 2005" "" ""
.SH NAME
rx_osm_handler \- To perform some OS related operations on SKB.
.SH SYNOPSIS
"SYNOPSIS"
.sp
\fB
.sp
int rx_osm_handler (nic_t * \fIsp\fB, u16 \fIlen\fB, RxD_t * \fIrxdp\fB, int \fIring_no\fB);
\fR
.SH "ARGUMENTS"
.TP
\fB\fIsp\fB\fR
private member of the device structure,pointer to s2io_nic structure.
.TP
\fB\fIlen\fB\fR
length of the packet
.TP
\fB\fIrxdp\fB\fR
-- undescribed --
.TP
\fB\fIring_no\fB\fR
the ring from which this RxD was extracted.
.SH "DESCRIPTION"
.PP
This function is called by the Tx interrupt serivce routine to perform
some OS related operations on the SKB before passing it to the upper
layers. It mainly checks if the checksum is OK, if so adds it to the
SKBs cksum variable, increments the Rx packet count and passes the SKB
to the upper layer. If the checksum is wrong, it increments the Rx
packet error count, frees the SKB and returns error.
.SH "RETURN VALUE"
.PP
SUCCESS on success and -1 on failure.