Go to main content

man pages section 9: DDI and DKI Kernel Functions

Exit Print View

Updated: Thursday, June 13, 2019
 
 

scsi_poll(9F)

Name

scsi_poll - run a polled SCSI command on behalf of a target driver

Synopsis

#include <sys/scsi/scsi.h>

int scsi_poll(struct scsi_pkt *pkt);

Interface Level

Solaris DDI specific (Solaris DDI).

Parameters

pkt

Pointer to the scsi_pkt(9S) structure.

Description

The scsi_poll() function requests the host adapter driver to run a polled command. Unlike scsi_transport(9F) which runs commands asynchronously, scsi_poll() runs commands to completion before returning. If the pkt_time member of pkt is 0, the value of pkt_time is defaulted to SCSI_POLL_TIMEOUT to prevent an indefinite hang of the system.

Return Values

The scsi_poll() function returns:

0

command completed successfully.

–1

command failed.

Context

The scsi_poll() function can be called from user, interrupt, or kernel context. This function should not be called when the caller is executing timeout(9F) in the context of a thread.

See Also

makecom(9F), scsi_transport(9F), scsi_pkt(9S)

Writing Device Drivers in Oracle Solaris 11.4

Warnings

Since scsi_poll() runs commands to completion before returning, it may require more time than is desirable when called from interrupt context. Therefore, calling scsi_poll from interrupt context is not recommended.