Go to main content

man pages section 9: DDI and DKI Driver Entry Points

Exit Print View

Updated: Thursday, June 13, 2019
 
 

tran_tgt_probe(9E)

Name

tran_tgt_probe - request to probe SCSI bus for a particular target

Synopsis

#include <sys/scsi/scsi.h> 

int prefixtran_tgt_probe(struct scsi_device *sd, int (*waitfunc,
     void)););

Interface Level

Solaris architecture specific (Solaris DDI).

Parameters

sd

Pointer to a scsi_device(9S) structure.

waitfunc

Pointer to either NULL_FUNC or SLEEP_FUNC.

Description

The tran_tgt_probe() vector in the scsi_hba_tran(9S) structure may be initialized during the HBA driver's attach(9E) to point to a function to be called by scsi_probe(9F) when called by a target driver during probe(9E) and attach(9E) to probe for a particular SCSI target on the bus. In the absence of an HBA-specific tran_tgt_probe() function, the default scsi_probe(9F) behavior is supplied by the function scsi_hba_probe(9F).

The possible choices the HBA driver may make are:

  • Initialize the tran_tgt_probe vector to point to scsi_hba_probe(9F), which results in the same behavior.

  • Initialize the tran_tgt_probe vector to point to a private function in the HBA, which may call scsi_hba_probe(9F) before or after any necessary processing, as long as all the defined scsi_probe(9F) semantics are preserved.

waitfunc indicates what tran_tgt_probe() should do when resources are not available:

NULL_FUNC

Do not wait for resources. See scsi_probe(9F) for defined return values if no resources are available.

SLEEP_FUNC

Wait indefinitely for resources.

See Also

attach(9E), probe(9E), tran_tgt_free(9E), tran_tgt_init(9E), scsi_hba_probe(9F), scsi_probe(9F), scsi_device(9S), scsi_hba_tran(9S)

Writing Device Drivers in Oracle Solaris 11.4