E.2. sd driver

E.2.1. sd compile options

MAX_RETRIES     {5}
SD_TIMEOUT      {30 seconds}
SD_MOD_TIMEOUT  {75 seconds}

E.2.2. sd ioctls and user interface

The relevant files to see:

include/linux/hdreg.h
include/linux/genhd.h
include/linux/fs.h

A list of ioctl()s follow:

HDIO_GETGEO_BIG
HDIO_GETGEO     [retrieve disk geometry]
BLKGETSIZE      [number of sectors in device]
BLKROSET        [set read only flag]
BLKROGET        [get read only flag]
BLKRASET        [set read ahead value]
BLKRAGET        [get read ahead value]
BLKFLSBUF       [instructs SCSI subsystem to flush buffers]
BLKSSZGET       [get device block size]
BLKPG           [partition table manipulation]
BLKELVGET       [get elevator parameters]
BLKELVSET       [set elevator parameters]
BLKRRPART       [reread the partition table]

open()    (all flags ignored)
close()
ioctl()   (see list above)