sd(7D)




NAME

     sd - SCSI disk and ATAPI/SCSI CD-ROM device driver


SYNOPSIS

     sd@target,lun:partition


DESCRIPTION

  SPARC
     The sd SCSI and SCSI/ATAPI driver supports  embedded  SCSI-2
     and  CCS-compatible  SCSI disk and CD-ROM drives, ATAPI  2.6
     (SFF-8020i)-compliant  CD-ROM   drives,   SFF-8090-compliant
     SCSI/ATAPI  DVD-ROM  drives,  IOMEGA  SCSI/ATAPI ZIP drives,
     SCSI JAZ drives, and USB mass storage devices.

     To determine the disk drive type, use the SCSI/ATAPI inquiry
     command  and  read the volume label stored on block 0 of the
     drive. (The volume label describes  the  disk  geometry  and
     partitioning  and must be present for the disk to be mounted
     by the system.) A volume label is not  required  for  remov-
     able, rewritable or read-only media.

  x86 Only
     The sd driver supports embedded  SCSI-2  and  CCS-compatible
     SCSI disk and CD-ROM drives, ATAPI 2.6 (SFF-8020i)-compliant
     CD-ROM drives, SFF-8090-compliant SCSI/ATAPI DVD-ROM drives,
     IOMEGA  SCSI/ATAPI  ZIP drives, SCSI JAZ drives and USB mass
     storage devices.

     The x86 BIOS legacy requires a master boot record (MBR)  and
     fdisk  table  in  the  first physical sector of the bootable
     media. If the x86 hard disk contains a Solaris  disk  label,
     it  is  located  in  the second 512-byte sector of the FDISK
     partition.


DEVICE SPECIAL FILES

     Block-files access the disk using normal buffering mechanism
     and  are read-from and written-to without regard to physical
     disk records. A "raw" interface enables direct  transmission
     between the disk and the user's read or write buffer. A sin-
     gle read or write call  usually  results  in  a  single  I/O
     operation;  raw  I/O  is  therefore more efficient when many
     bytes are  transmitted.  Block  files  names  are  found  in
     /dev/dsk; raw file names are found in /dev/rdsk.

     I/O requests to the raw device must be aligned on a 512-byte
     (DEV_BSIZE)  boundary and all I/O request lengths must be in
     multiples of 512 bytes. Requests  that  do  not  meet  these
     requirements  will  trigger  an  EINVAL  error. There are no
     alignment or length restrictions  on  I/O  requests  to  the
     block device.


CD-ROM DRIVE SUPPORT

     A CD-ROM disk is single-sided and contains approximately 640
     megabytes of data or 74 minutes of audio. When the CD-ROM is
     opened, the eject button is disabled to prevent manual remo-
     val  of the disk until the last close() is called. No volume
     label is required for a CD-ROM. The disk geometry and parti-
     tioning  information  are  constant and never change. If the
     CD-ROM contains data recorded in a Solaris-aware file system
     format, it can be mounted using the appropriate Solaris file
     system support.


DVD-ROM DRIVE SUPPORT

      DVD-ROM media can be single  or  double-sided  and  can  be
     recorded  upon  using  a  single  or double layer structure.
     Double-layer  media  provides  parallel  or  opposite  track
     paths.  A  DVD-ROM  can  hold from between 4.5 Gbytes and 17
     Gbytes of data, depending on the layer  structure  used  for
     recording and if the DVD-ROM is single or double-sided.

     When the DVD-ROM is opened, the eject button is disabled  to
     prevent  the manual removal of a disk until the last close()
     is called. No volume label is required for a DVD-ROM. If the
     DVD-ROM  contains data recorded in a Solaris-aware file sys-
     tem format, it can be mounted using the appropriate  Solaris
     file system support.


ZIP/JAZ DRIVE SUPPORT

     ZIP/JAZ media provide varied data capacity points; a  single
     JAZ  drive can store up to 2 GBytes of data, while a ZIP-250
     can store up to 250MBytes of data.  ZIP/JAZ  drives  can  be
     read-from or written-to using the appropriate drive.

     When a ZIP/JAZ drive is opened, the eject button is disabled
     to  prevent  the  manual  removal  of  a disk until the last
     close() is called. No volume label is required for a ZIP/JAZ
     drive.  If  the  ZIP/JAZ  drive  contains data recorded in a
     Solaris-aware file system format, it can  be  mounted  using
     the appropriate Solaris file system support.


USB DEVICE SUPPORT

     All USB storage devices  are  treated  as  removable  media,
     unless  exempted  (refer to scsa2usb(7D)). This means rmfor-
     mat(1) can be used, a FAT file system  can  be  mounted  and
     used, and they can be accessed by volume manager.


DEVICE STATISTICS SUPPORT

     Each device maintains I/O statistics for the device and  for
     partitions    allocated    for   that   device.   For   each
     device/partition,  the  driver  accumulates  reads,  writes,
     bytes  read,  and  bytes  written. The driver also initiates
     hi-resolution time stamps at queue entry and exit points  to
     enable   monitoring   of   residence   time  and  cumulative
     residence-length product for each queue.

     Not all device  drivers  make  per-partition  IO  statistics
     available   for  reporting.  sd  and  ssd(7D)  per-partition
     statistics are enabled by default but may disabled in  their
     configuration files.


IOCTLS

      Refer to dkio(7I), and cdio(7I)

  ERRORS
          EACCES
                Permission denied

          EBUSY The partition was opened exclusively  by  another
                thread

          EFAULT
                The argument features a bad address

          EINVAL
                Invalid argument

          ENOTTY
                The device does not support the  requested  ioctl
                function

          ENXIO During opening, the device did not exist.  During
                close, the drive unlock failed

          EROFS The device is read-only

          EAGAIN
                Resource temporarily unavailable

          EINTR A signal was caught during the execution  of  the
                ioctl()  function

          ENOMEM
                Insufficient memory

          EPERM Insufficient access permission

          EIO   An I/O error occurred. Refer to notes for details
                on copy-protected DVD-ROM media.


CONFIGURATION

     The sd driver can be configured by  defining  properties  in
     the  sd.conf file. The sd driver supports the following pro-
     perties:

     enable-partition-kstats
           The default value is  1,  which  causes  partition  IO
           statistics to be maintained. Set this value to zero to
           prevent the driver from  recording  partition  statis-
           tics.  This  slightly reduces the CPU overhead for IO,
           mimimizes the amount  of  sar(1)  data  collected  and
           makes  these  statistics  unavailable for reporting by
           iostat(1M) even though the -p/-P option is  specified.
           Regardless  of  this  setting,  disk IO statistics are
           always maintained.

     qfull-retries
           The supplied value  is  passed  as  the  qfull-retries
           capability    value    of    the   HBA   driver.   See
           scsi_ifsetcap(9F) for details.

     qfull-retry-interval
           The supplied value is passed as the qfull-retry inter-
           val   capability   value   of   the  HBA  driver.  See
           scsi_ifsetcap(9F) for details.

     allow-bus-device-reset
           The default value is  1,  which  allows  resetting  to
           occur.  Set  this  value to 0 (zero) to prevent the sd
           driver from calling scsi_reset(9F) with a second argu-
           ment of RESET_TARGET when in error-recovery mode. This
           scsi_reset(9F) call may prompt the HBA driver to  send
           a  SCSI  Bus  Device Reset message. The scsi_reset(9F)
           call with a second argument of RESET_TARGET may result
           from  an explicit request via the USCSICMD ioctl. Some
           high-availability multi-initiator systems may wish  to
           prohibit the Bus Device Reset message; to do this, set
           the allow-bus-device-reset property to 0.


FILES

     /kernel/drv/sd.conf
           driver configuration file

     /dev/dsk/cntndnsn
           block files

     /dev/rdsk/cntndnsn
           raw files

     Where:

     cn    controller n

     tn    SCSI target id n (0-6)

     dn    SCSI LUN n (0-7 normally; some HBAs support LUNs to 15
           or 32. See the specific manpage for details)

     sn    partition n (0-7)

  x86 Only
          /dev/rdsk/cntndnpn
                raw files

     Where:

          pn    Where n=0 the  node  corresponds  to  the  entire
                disk.


SEE ALSO

     sar(1), cfgadm_scsi(1M), fdisk(1M), format(1M),  iostat(1M),
     close(2),    ioctl(2),    lseek(2),    read(2),    write(2),
     driver.conf(4),   scsi(4),   filesystem(5),    scsa2usb(7D),
     ssd(7D),    hsfs(7FS),   pcfs(7FS),   udfs(7FS),   cdio(7I),
     dkio(7I), scsi_ifsetcap(9F), scsi_reset(9F)

     ANSI Small Computer System Interface-2 (SCSI-2)

     ATA Packet Interface for CD-ROMs, SFF-8020i

     Mt.Fuji Commands for CD and DVD, SFF8090v3

     http://www.sun.com/io


DIAGNOSTICS

     Error for Command:'<command name>'
     Error Level: Fatal
     Requested Block: <n>
     Error  Block: <m>
     Vendor:'<vendorname>'
     Serial Number:'<serial number>'
     Sense Key:<sense key name>

     ASC: 0x<a> (<ASC name>), ASCQ: 0x<b>, FRU: 0x<c>
           The command indicated by <command  name>  failed.  The
           Requested  Block  is  the  block  where  the  transfer
           started and the Error Block is the block  that  caused
           the  error.  Sense  Key,  ASC, and ASCQ information is
           returned by the target in response to a request  sense
           command.

     Caddy not inserted in drive
           The drive is not  ready  because  no  caddy  has  been
           inserted.

     Check Condition on REQUEST SENSE
           A REQUEST SENSE command completed with a check  condi-
           tion. The original command will be retried a number of
           times.

     Label says <m> blocks Drive says <n> blocks
           There is a discrepancy between the label and what  the
           drive returned on the READ CAPACITY command.

     Not enough sense information
           The request sense data was less than expected.

     Request Sense couldn't get sense data
           The REQUEST SENSE command did not transfer any data.

     Reservation Conflict
           The drive was reserved by another initiator.

     SCSI transport failed: reason 'xxxx': {retrying|giving up}
           The host adapter has failed to transport a command  to
           the  target  for  the  reason  stated. The driver will
           either retry the command or, ultimately, give up.

     Unhandled Sense Key<n>
           The REQUEST SENSE data included an invalid sense.

     Unit not ready. Additional sense code 0x<n>
           The drive is not ready.

     Can't do switch back to mode 1
           A failure to switch back to read mode 1.

     Corrupt label - bad geometry
           The disk label is corrupted.

     Corrupt label - label checksum failed
            The disk label is corrupted.

     Corrupt label - wrong magic number
           The disk label is corrupted.

     Device busy too long
           The drive returned busy during a number of retries.

     Disk not responding to selection
           The drive is powered down or died

     Failed to handle UA
           A retry on a Unit Attention condition failed.

     I/O to invalid geometry
           The geometry of the drive could not be established.

     Incomplete read/write - retrying/giving up
           There was a residue after the command  completed  nor-
           mally.

     No bp for direct access device format geometry
           A bp with consistent memory could not be allocated.

     No bp for disk label
           A bp with consistent memory could not be allocated.

     No bp for fdisk
           A bp with consistent memory could not be allocated.

     No bp for rigid disk geometry
           A bp with consistent memory could not be allocated.

     No mem for property
           Free memory pool exhausted.

     No memory for direct access device format geometry
           Free memory pool exhausted.

     No memory for disk label
           Free memory pool exhausted.

     No memory for rigid disk geometry
           The disk label is corrupted.

     No resources for dumping
           A packet could not be allocated during dumping.

     Offline
           Drive went offline; probably powered down.

     Requeue of command fails
           Driver attempted to retry a command and experienced  a
           transport error.

     sdrestart transport failed()
           Driver attempted to retry a command and experienced  a
           transport error.

     Transfer length not modulo
           Illegal request size.

     Transport of request sense fails()
           Driver attempted to submit a request sense command and
           failed.

     Transport rejected()
           Host adapter driver was unable to accept a command.

     Unable to read label
           Failure to read disk label.

     Unit does not respond to selection
           Drive went offline; probably powered down.


NOTES

     DVD-ROM media containing DVD-Video data may follow/adhere to
     the  requirements  of content scrambling system or copy pro-
     tection scheme. Reading of copy-protected sector will  cause
     I/O error. Users are advised to use the appropriate playback
     software to view video contents on DVD-ROM media  containing
     DVD-Video data.


Man(1) output converted with man2html