Hallo, dies ist ein Test.
PWD: /www/data-lst1/unixsoft/unixsoft/kaempfer/.public_html
Running in File Mode
Relative path: ./../../.././../../../usr/man/man9f/scsi_transport.9f
Real path: /usr/share/man/man9f/scsi_transport.9f
Zurück
'\" te .\" Copyright (c) 2006, Oracle and/or its affiliates. All rights reserved. .TH scsi_transport 9F "16 Jan 2006" "Oracle Solaris 11.4" "Kernel Functions" .SH NAME scsi_transport \- request by a SCSI target driver to start a command .SH SYNOPSIS .LP .nf #include <sys/scsi/scsi.h> \fBint\fR \fBscsi_transport\fR(\fBstruct scsi_pkt *\fR\fIpkt\fR); .fi .SH INTERFACE LEVEL .sp .LP Solaris DDI specific (Solaris DDI). .SH PARAMETERS .sp .ne 2 .mk .na \fB\fIpkt\fR\fR .ad .RS 7n .rt Pointer to a \fBscsi_pkt\fR(9S) structure. .RE .SH DESCRIPTION .sp .LP Target drivers use \fBscsi_transport()\fR to request the host adapter driver to transport a command to the \fBSCSI \fRtarget device specified by \fIpkt\fR. The target driver must obtain resources for the packet using \fBscsi_init_pkt\fR(9F) prior to calling this function. The packet may be initialized using one of the \fBmakecom\fR(9F) functions. \fBscsi_transport()\fR does not wait for the \fBSCSI\fR command to complete. See \fBscsi_poll\fR(9F) for a description of polled \fBSCSI\fR commands. Upon completion of the \fBSCSI\fR command the host adapter calls the completion routine provided by the target driver in the \fBpkt_comp\fR member of the \fBscsi_pkt\fR pointed to by \fIpkt\fR. .SH RETURN VALUES .sp .LP The \fBscsi_transport()\fR function returns: .sp .ne 2 .mk .na \fB\fBTRAN_ACCEPT\fR\fR .ad .RS 20n .rt The packet was accepted by the transport layer. .RE .sp .ne 2 .mk .na \fB\fBTRAN_BUSY\fR\fR .ad .RS 20n .rt The packet could not be accepted because there was already a packet in progress for this target/lun, the host adapter queue was full, or the target device queue was full. .RE .sp .ne 2 .mk .na \fB\fBTRAN_BADPKT\fR\fR .ad .RS 20n .rt The \fBDMA\fR count in the packet exceeded the \fBDMA\fR engine's maximum \fBDMA\fR size. .RE .sp .ne 2 .mk .na \fB\fBTRAN_FATAL_ERROR\fR\fR .ad .RS 20n .rt A fatal error has occurred in the transport layer. .RE .SH CONTEXT .sp .LP The \fBscsi_transport()\fR function can be called from user, interrupt, or kernel context. .SH EXAMPLES .LP \fBExample 1\fR Using \fBscsi_transport()\fR .sp .in +2 .nf if ((status = scsi_transport(rqpkt)) != TRAN_ACCEPT) { scsi_log(devp, sd_label, CE_WARN, "transport of request sense pkt fails (0x%x)\en", status); } .fi .in -2 .sp .SH SEE ALSO .sp .LP \fBtran_start\fR(9E), \fBmakecom\fR(9F), \fBscsi_init_pkt\fR(9F), \fBscsi_pktalloc\fR(9F), \fBscsi_poll\fR(9F), \fBscsi_pkt\fR(9S) .sp .LP \fIWriting Device Drivers in Oracle Solaris 11.4\fR