Intro(9S)
NAME
Intro, intro − introduction to kernel data structures
DESCRIPTION
Section 9S describes the data structures used by drivers to share information between the driver and the kernel.
In this section, reference pages contain the following headings:
• NAME summarizes the structure’s purpose.
• SYNOPSIS lists the include file that defines the structure.
• INTERFACE LEVEL describes any architecture dependencies.
• DESCRIPTION provides general information about the structure.
• STRUCTURE MEMBERS lists all accessible structure members.
• SEE ALSO gives sources for further information.
Every driver MUST include <sys/ddi.h> and <sys/sunddi.h>, in that order, and last.
The following table summarizes the STREAMS structures described in this section.
StructureType copyreqDDI/DKI
copyrespDDI/DKI
databDDI/DKI
fmodswSolaris DDI
free_rtnDDI/DKI
iocblkDDI/DKI
module_infoDDI/DKI
msgbDDI/DKI
qbandDDI/DKI
qinitDDI/DKI
queclassSolaris DDI
queueDDI/DKI
streamtabDDI/DKI
stroptionsDDI/DKI
The following table summarizes structures that are not specific to STREAMS I/O.
StructureType bufDDI/DKI
cb_opsSolaris DDI
ddi_dma_cookieSolaris DDI
ddi_dma_lim_sparcSolaris SPARC DDI
ddi_dma_lim_x86Solaris x86 DDI
ddi_dma_reqSolaris DDI
ddi_dmae_reqSolaris x86 DDI
ddi_mapdev_ctlSolaris DDI
dev_opsSolaris DDI
iovecDDI/DKI
kstatSolaris DDI
kstat_intrSolaris DDI
kstat_ioSolaris DDI
kstat_namedSolaris DDI
mapDDI/DKI
modldrvSolaris DDI
modlinkageSolaris DDI
modlstrmodSolaris DDI
scsi_addressSolaris DDI
scsi_arq_statusSolaris DDI
scsi_deviceSolaris DDI
scsi_extended_senseSolaris DDI
scsi_hba_tranSolaris DDI
scsi_inquirySolaris DDI
scsi_pktSolaris DDI
scsi_statusSolaris DDI
uioDDI/DKI
NOTES
Do not declare arrays of structures as the size of the structures may change between releases. Rely only on the structure members listed in this chapter and not on unlisted members or the position of a member in a structure.
LIST OF STRUCTURES
NameAppears on PageDescription
bufbuf(9S)block I/O data transfer structure
cb_opscb_ops(9S)character/block entry points
structure
copyreqcopyreq(9S)STREAMS data structure for the
M_COPYIN and the M_COPYOUT
message types.
copyrespcopyresp(9S)STREAMS data structure for the
M_IOCDATA message type
databdatab(9S)STREAMS message data structure
ddi_dma_cookieddi_dma_cookie(9S)DMA address cookie
ddi_dma_limddi_dma_lim_sparc(9S)SPARC DMA limits structure
ddi_dma_lim_sparcddi_dma_lim_sparc(9S) SPARC DMA limits structure
ddi_dma_lim_x86ddi_dma_lim_x86(9S)x86 DMA limits structure
ddi_dma_reqddi_dma_req(9S)DMA Request structure
ddi_dmae_reqddi_dmae_req(9S)DMA engine request structure
ddi_mapdev_ctlddi_mapdev_ctl(9S)device mapping-control structure
dev_opsdev_ops(9S)device operations structure
fmodswfmodsw(9S)STREAMS module declaration
structure
free_rtnfree_rtn(9S)structure that specifies a driver’s
message freeing routine
iocblkiocblk(9S)STREAMS data structure for the
M_IOCTL message type
ioveciovec(9S)data storage structure for I/O
using uio
kstatkstat(9S)kernel statistics structure
kstat_intrkstat_intr(9S)structure for interrupt kstats
kstat_iokstat_io(9S)structure for I/O kstats
kstat_namedkstat_named(9S)structure for named kstats
modldrvmodldrv(9S)linkage structure for loadable
drivers
modlinkagemodlinkage(9S)module linkage structure
modlstrmodmodlstrmod(9S)linkage structure for loadable
STREAMS modules
module_infomodule_info(9S)STREAMS driver identification and
limit value structure
msgbmsgb(9S)STREAMS message block structure
qbandqband(9S)STREAMS queue flow control
information structure
qinitqinit(9S)STREAMS queue processing procedures
structure
queclassqueclass(9S)a STREAMS macro that returns the
queue message class definitions for
a given message block
queuequeue(9S)STREAMS queue structure
scsi_addressscsi_address(9S)SCSI address structure
scsi_arq_statusscsi_arq_status(9S)SCSI auto request sense structure
scsi_devicescsi_device(9S)SCSI device structure
scsi_extended_sensescsi_extended_sense(9S) SCSI extended sense structure
scsi_hba_transcsi_hba_tran(9S)SCSI Host Bus Adapter (HBA) driver
transport vector structure
scsi_inquiryscsi_inquiry(9S)SCSI device structure
scsi_pktscsi_pkt(9S)SCSI packet structure
scsi_statusscsi_status(9S)SCSI status structure
streamtabstreamtab(9S)STREAMS entity declaration
structure
stroptionsstroptions(9S)options structure for M_SETOPTS
message
uiouio(9S)scatter/gather I/O request
structure
SunOS 5.4 — Last change: 28 Jan 1994