scsi_transport(9f) 맨 페이지 - 윈디하나의 솔라나라

개요

섹션
맨 페이지 이름
검색(S)

scsi_transport(9f)

scsi_transport(9F)             Kernel Functions             scsi_transport(9F)



NAME
       scsi_transport - request by a SCSI target driver to start a command

SYNOPSIS
       #include <sys/scsi/scsi.h>

       int scsi_transport(struct scsi_pkt *pkt);

INTERFACE LEVEL
       Solaris DDI specific (Solaris DDI).

PARAMETERS
       pkt    Pointer to a scsi_pkt(9S) structure.


DESCRIPTION
       Target  drivers use scsi_transport() to request the host adapter driver
       to transport a command to the SCSI target device specified by pkt.  The
       target   driver   must   obtain   resources   for   the   packet  using
       scsi_init_pkt(9F) prior to calling this function.  The  packet  may  be
       initialized  using  one  of the makecom(9F) functions. scsi_transport()
       does not wait for the SCSI command to complete. See scsi_poll(9F) for a
       description  of  polled SCSI commands. Upon completion of the SCSI com‐
       mand the host adapter calls the completion routine provided by the tar‐
       get driver in the pkt_comp member of the scsi_pkt pointed to by pkt.

RETURN VALUES
       The scsi_transport() function returns:

       TRAN_ACCEPT         The packet was accepted by the transport layer.


       TRAN_BUSY           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.


       TRAN_BADPKT         The DMA  count  in  the  packet  exceeded  the  DMA
                           engine's maximum DMA size.


       TRAN_FATAL_ERROR    A fatal error has occurred in the transport layer.


CONTEXT
       The  scsi_transport()  function  can be called from user, interrupt, or
       kernel context.

EXAMPLES
       Example 1 Using scsi_transport()


         if ((status = scsi_transport(rqpkt)) != TRAN_ACCEPT) {
               scsi_log(devp, sd_label, CE_WARN,
                   "transport of request sense pkt fails (0x%x)\n", status);
         }


SEE ALSO
       tran_start(9E),  makecom(9F),   scsi_init_pkt(9F),   scsi_pktalloc(9F),
       scsi_poll(9F), scsi_pkt(9S)


       Writing Device Drivers in Oracle Solaris 11.4



Oracle Solaris 11.4               16 Jan 2006               scsi_transport(9F)
맨 페이지 내용의 저작권은 맨 페이지 작성자에게 있습니다.
RSS ATOM XHTML 5 CSS3