This commit is contained in:
gferg 2001-04-16 14:57:29 +00:00
parent 8e9c7797c1
commit 4006230734
2 changed files with 260 additions and 111 deletions

View File

@ -2,7 +2,7 @@
<book id="index">
<bookinfo>
<title>The Linux SCSI subsystem in 2.4 HOWTO</title>
<title>The Linux 2.4 SCSI subsystem HOWTO</title>
<authorgroup>
<author>
@ -15,9 +15,17 @@
</affiliation>
</author>
</authorgroup>
<pubdate>2001-03-25</pubdate>
<pubdate>2001-04-15</pubdate>
<revhistory>
<revision>
<revnumber>1.3</revnumber>
<date>2001-04-15</date>
<authorinitials>dpg</authorinitials>
<revremark>
ATAPI CDROM section, alter title, U320, iSCSI
</revremark>
</revision>
<revision>
<revnumber>1.2</revnumber>
<date>2001-03-25</date>
@ -94,7 +102,13 @@ subsystem, there is also a description of raw devices in
<xref linkend="rawdev">.
</para>
<para>
This document follows on from one written four years ago by Drew
For those who have no interest in the SCSI subsystem and just want to get
their ATAPI cd writer going, see this <link linkend="sratapi">section</link>.
It may also be useful to browse the SCSI <link linkend="arch">architecture
</link> section.
</para>
<para>
This document follows on from one written five years ago by Drew
Eckhardt called the SCSI-HOWTO [see reference <link linkend="W7">W7</link>].
That document described the SCSI subsystem in Linux kernel 1.2 and 1.3
series. It is still available from the Linux Documentation Project
@ -110,9 +124,11 @@ The home site and perhaps the most up to date version of this
document can be found at
<ulink url="http://www.torque.net/scsi/SCSI-2.4-HOWTO">
<literal>www.torque.net/scsi/SCSI-2.4-HOWTO</literal></ulink>.
At that location this document is rendered in rtf, ps, pdf,
a single (large) page of html and multipage html.
</para>
<para>
This document was built on 26th March 2001.
This document was built on 15th April 2001.
</para>
</chapter>
@ -172,8 +188,8 @@ Sd is a member of the generic disk family, as is the hd device from the
IDE subsystem. Apart from mounting sd devices, the <command>fdisk
</command> command is available to view or modify a disk's
partition table. Although the <command>hdparm</command> command is
primarily intended for IDE disks, some options work on SCSI
disks.
primarily intended for ATA disks (also known as IDE or EIDE disks), some
options work on SCSI disks.
</para>
<para>
Sr is a member of the CD-ROM subsystem. Apart from mounting file
@ -405,7 +421,7 @@ three categories (e.g. scanners) also appear as sg devices.
<para>
Pseudo devices [see <xref linkend="llevelpseudo">] can cause devices
that are usually not considered as SCSI to appear as SCSI device names.
For example an IDE ATAPI CD-ROM may be picked up by the ide-scsi pseudo
For example an ATAPI CD-ROM may be picked up by the ide-scsi pseudo
driver and mapped to <filename>/dev/scd0</filename> .
</para>
<para>
@ -541,14 +557,14 @@ The Linux kernel configuration is usually found in the kernel source in
the file: <filename>/usr/src/linux/.config</filename> . It is not
recommended to edit this file directly but to use one of these configuration
options:
<programlisting>
make config
- starts a character based questions and answer session
make menuconfig
- starts a "cursors" based configuration tool
make xconfig
- starts a X based configuration tool
</programlisting>
<itemizedlist>
<listitem><para><command>make config</command> - starts a character based
questions and answer session</para></listitem>
<listitem><para><command>make menuconfig</command> - starts a
terminal-oriented configuration tool (using ncurses)</para></listitem>
<listitem><para><command>make xconfig</command> - starts a
X based configuration tool</para></listitem>
</itemizedlist>
</para>
<para>
The descriptions of these selections that is displayed by the associated
@ -574,7 +590,7 @@ CONFIG_SCSI=m
</programlisting>
</para>
<para>
Some other common SCSI configuration option follow:
Some other common SCSI configuration options are:
<programlisting>
CONFIG_BLK_DEV_SD [disk (sd) driver]
CONFIG_SD_EXTRA_DEVS [extra slots for disks added later]
@ -634,7 +650,7 @@ boot loader's image from a SCSI disk into memory and executing it. This
may require some settings to be changed in the motherboard's BIOS. When
more than one SCSI adapter is involved, the SCSI BIOS settings may need
to change to indicate which one contains the disk with the boot image.
The boot image make also come from an IDE disk, a bootable CD-ROM or
The boot image make also come from an ATA (IDE) disk, a bootable CD-ROM or
a floppy.
</para>
<para>
@ -661,15 +677,16 @@ Some boot parameters related to the SCSI subsystem:
debug [increase output to console during boot]
nmi_watchdog=0 [turn off NMI watchdog on a SMP machine]
max_scsi_luns=1 [limits SCSI bus scans to lun==0]
* When devfs is in use the initial read-only mount
of the root partition can be done via the old
/dev/sd&lt;a>&lt;n> notation or the new devfs
notation (and two of these are shown).
The joint "root=/dev/sda6 single" may be useful
when disk or adapter changes have broken the
kernel boot load.
</programlisting>
* When devfs is in use the initial read-only mount
of the root partition can be done via the old
/dev/sd&lt;a>&lt;n> notation or the new devfs
notation (and two of these are shown).
The joint "root=/dev/sda6 single" may be useful
when disk or adapter changes have broken the
kernel boot load.
</para>
<para>
The "root=" argument may also be a hex number. For example, if the root
partition is on <filename>/dev/sda3</filename> then "root=803" is
appropriate. The last two digits are the minor device number discussed
@ -922,7 +939,7 @@ in the file <filename>/usr/src/linux/Documentation/kernel-parameters.txt
If SCSI disks are present in the system then it usually is better to
build the mid level driver into the kernel. However if the SCSI
subsystem is only being used periodically (e.g. to burn CD-Rs on
an IDE CD writer) then building the mid level as a module is fine.
an ATAPI CD writer) then building the mid level as a module is fine.
The module load time options are the same as the driver's built in
options:
<programlisting>
@ -979,12 +996,18 @@ New devices can be added using <command>
where the variables are host, bus (channel), target (scsi id) and lun. The
success (or otherwise) of this command can be determined by sending a
subsequent <command>cat /proc/scsi/scsi</command> command.
<footnote><para>
The parsing of "add-single-device" and "remove-single-device" is rather
inflexible. Hence it is best to stay close to the demonstrated syntax
with no extra spaces (and no tabs).
</para></footnote>
</para>
<para>
The SCSI subsystem does not support hot-plugging of SCSI devices (there are
also electrical issues on the associated SCSI bus). It is recommended that
those who use add+remove-single-device make sure that other devices on that
SCSI bus are inactive if re-plugging is going to take place.
The SCSI subsystem does not support hot-plugging of SCSI devices (there may
also be electrical issues on the associated SCSI parallel bus). It is
recommended that those who use add+remove-single-device make sure that
other devices on that SCSI bus are inactive if re-plugging is going to
take place.
</para>
<para>
To output a list of internal SCSI command blocks use <command>
@ -1099,14 +1122,15 @@ part:
</mediaobject>
<para>
Many modern IDE CDROM players and all DVD players use the ATAPI standard
which then allows them to be controlled by the SCSI subsystem with the
ide-scsi lower level pseudo driver. The default action is for the IDE
subsystem to take ownership of all IDE devices and in this case the default
driver would be <filename>ide-cd.o</filename> . Once the IDE subsystem
"owns" an ATAPI CDROM player then this excludes the ide-scsi driver from
attaching itself to the same device. In order to change this default
action see the following sections on boot and module parameters.
This diagram glosses over some of the differences between the
protocol stacks. CDROM device names are <emphasis>not</emphasis> maintained
by the uniform CDROM layer but rather by each individual protocol stack.
In the case of the SCSI subsystem, device names are maintained by the
sr driver while the IDE subsystem maintains device names with its
central "ide" driver (i.e. not by the ide-cd driver). USB and IEEE1394
cd devices names are maintained by their respective stacks. This may
partially explain why the <filename>/dev/cdrom</filename> is often a
symbolic link to the appropriate subsystem's device name.
</para>
<para>
Two types of SCSI devices are accessible via the sr driver:
@ -1128,14 +1152,7 @@ configuration parameter CONFIG_SR_EXTRA_DEVS whose default value is 2.
<sect2 id="srbparams">
<title>sr boot parameters</title>
<para>
None but the following is related:
During the boot sequence of the Linux kernel, the IDE devices are scanned
before SCSI devices. This means that if both the ide-cd and ide-scsi drivers
are built in, then the ide-cd driver will claim all CDROM devices on the IDE
bus(-es). To override this action use the boot parameter "hd&lt;x>=scsi"
where &lt;x> is the appropriate drive letter. In this case when the ide-scsi
driver is initialized it will find the unclaimed IDE device and "claim" it
for the SCSI subsystem.
None.
</para>
</sect2>
@ -1151,21 +1168,6 @@ turned off by default. The following module parameter is provided:
to override the default. [Currently there seems to be no way to turn on
XA mode testing when the sr driver is built into the kernel.]
</para>
<para>
Continuing on with the ATAPI CDROM driver override discussion: for modules
this can also be done with <command>insmod ide-cd ignore=hdb</command> to
exclude that device. Typically the ide-cd module is loaded automatically
so a line in the <filename>/etc/modules.conf</filename> file like:
<programlisting>
options ide-cd ignore=hdb
</programlisting>
should work. If the ide-scsi module is loaded after that, it will claim hdb.
To check if this has happened examine <command>cat /proc/scsi/scsi</command>.
Note that any other IDE CDROM player <emphasis>apart from</emphasis> the one
connected to <filename>/dev/hdb</filename> (i.e. first IDE controller, slave
device) will still be controlled by the ide-cd module (and hence the IDE
subsystem).
</para>
</sect2>
<sect2 id="srproc">
<title>sr proc interface</title>
@ -1194,6 +1196,113 @@ the command <command>echo "1" > /proc/sys/dev/cdrom/autoeject</command>.
This will cause cdroms to be ejected from the drive when unmounted.
</para>
</sect2>
<sect2 id="sratapi">
<title>ATAPI cdroms</title>
<para>
Many Linux users have no SCSI devices (or adapters) in their systems. They
become a little perplexed as to why cd writer software (e.g.
<command>cdrecord</command> and <command>cdrdao</command>)
and cd music reading programs (e.g. <command>cdparanoia</command>) use
the Linux SCSI subsystem. The answer is that these programs need lower level
access to these devices. ATAPI (ATA Packet Interface) is essentially
a SCSI command set sent over an ATA
<footnote><para>
ATA is the modern name for what was previously known as IDE and/or EIDE.
Note that the subsystem that controls ATA devices in Linux is called
the "IDE" subsystem for historical reasons.
</para></footnote>
transport.
</para>
<para>
Currently both <command>cdrecord</command> and <command>cdparanoia</command>
interface to the SCSI generic driver (sg) and, in the case of ATAPI
cd devices, use the ide-scsi pseudo device driver to access the hardware.
This may change in the future as in the 2.4 series kernels a packet
interface ioctl has been added to the uniform cdrom layer (see the diagram
in the <link linkend="sr">CDROM</link> section above).
<footnote><para>
Other ATA devices such as tapes and floppies often use the ATAPI interface.
However, the vast majority of ATA disks do <emphasis>not</emphasis> use
the ATAPI interface.
</para></footnote>
</para>
<para>
The default action of the IDE subsystem in Linux is to claim all ATA
devices for its drivers. In the case of an ATAPI cd writer, it will be
claimed by the ide-cd driver. Once this has happened, the SCSI subsystem
is unable to get control over an ATAPI device. The ide-scsi (pseudo
lower level SCSI) driver can only register ATAPI devices in the SCSI
subsystem that have <emphasis>not</emphasis> already been claimed
by IDE subsystem.
</para>
<para>
To change this default action, parameters need to be passed to the IDE
subsystem that instruct it not to register a given device. Let us assume that
a cd writer is connected to the second IDE controller in the slave
position (i.e. <filename>/dev/hdd</filename>). One of the following
two techniques may
<footnote><para>
Another less targeted approach is available when both the ide-cd
and ide-scsi drivers are modules. That is to <command>rmmod ide-scsi;
rmmod ide-cd; modprobe ide-scsi</command>.
</para></footnote>
be used:
<itemizedlist>
<listitem><para>at kernel boot time pass the option: "hdd=scsi"
</para></listitem>
<listitem><para>load the ide-cd module with
<command>modprobe ide-cd ignore=hdd</command>. This can also be
accomplished by placing this line: "options ide-cd ignore=hdd"
in the <filename>/etc/modules.conf</filename> file
</para></listitem>
</itemizedlist>
The first technique can only be done at boot time (and can be automated
using lilo with an "append" in the <filename>/etc/lilo.conf</filename>
file). It assumes that the main IDE subsystem driver is built in, which
is almost always the case. The second technique assumes that the ide-cd
driver is a module which is not normally the case (i.e. most distributions
build it in). After one of these techniques has been applied, loading the
ide-scsi driver should register the cd writer at <filename>/dev/hdd
</filename> as <filename>/dev/sr&lt;n></filename> where the "n" is
the next available number.
</para>
<para>
To find out if the above worked, the output of
<command>cat /proc/scsi/scsi</command> can be checked. Perhaps a simpler
method is to observe the "drive name:" line of
<command>cat /proc/sys/dev/cdrom/info</command> for "sr" entries. The
following output is from my system:
<programlisting>
$ cat /proc/sys/dev/cdrom/info
CD-ROM information, Id: cdrom.c 3.12 2000/10/18
drive name: sr1 sr0
drive speed: 16 0
drive # of slots: 1 1
Can close tray: 1 1
Can open tray: 1 1
Can lock tray: 1 1
Can change speed: 1 1
Can select disk: 0 0
Can read multisession: 1 1
Can read MCN: 1 1
Reports media changed: 1 1
Can play audio: 1 1
Can write CD-R: 1 0
Can write CD-RW: 1 0
Can read DVD: 0 1
Can write DVD-R: 0 0
Can write DVD-RAM: 0 0
</programlisting>
</para>
<para>
Once an ATAPI cd writer at /dev/hdd has been registered by the SCSI
subsystem, then cdroms should be mounted via the "sr" device name
and cd players should also use the "sr" device. Strangely the
<command>hdparm</command> command should still use the <filename>
/dev/hdd</filename> device file.
</para>
</sect2>
</sect1>
<sect1 id="st">
@ -1494,20 +1603,34 @@ posting to the linux-scsi newsgroup may help [see <link linkend="N1">N1
</link>].
</para>
<para>
For an overview of the drivers supplied with the kernel source tree,
use one of the kernel configuration programs (e.g.
<command>cd /usr/src/linux; make menuconfig</command>). The help
information associated with each selection can be found together in one
(large) flat file at
<filename>/usr/src/linux/Documentation/Configure.help</filename>.
Drivers can be obtained from other places. It is unlikely that a SCSI
driver made for the lk 2.2 series (or before) will build or operate
successfully in the lk 2.4 series. [From a programmatic viewpoint
there are not a lot of things that need changing.] Drivers may even
be only available in binary form, in which case make sure that you
trust the provider and follow their instructions closely.
</para>
<para>
Lower level drivers can support either of 2 error handling strategies.
The older one is considered obsolete while the newer one is often called
"new_eh". The advantage of "new_eh" is that it uses a separate kernel
thread (named "scsi_eh_&lt;n>" where &lt;n> is the host number) to
thread per host (named "scsi_eh_&lt;n>" where &lt;n> is the host number) to
facilitate error recovery. Both error handling strategies were also
available in the lk 2.2 series in which very few adapter drivers used
"new_eh". In the lk 2.4 series, more
drivers are using it and the plan in the forthcoming lk 2.5 development
drivers are using it and the plan for the forthcoming lk 2.5 development
series is to drop mid level support for the older, obsolete error strategy.
</para>
<para>
Drew Eckhardt's SCSI-HOWTO document [see reference <link linkend="W7">W7
</link>] goes into much more detail about lower level (adapter) drivers
than this document. Since that SCSI-HOWTO is 4 years old, some things may
than this document. Since that SCSI-HOWTO is 5 years old, many things
have changed and more drivers have been added.
</para>
@ -1519,7 +1642,7 @@ that command set. Those hardware buses can be further divided into those
used exclusively for SCSI (e.g. ultra wide), those shared with other
protocols (e.g. USB, IEEE 1394) and those buses not defined by the various
SCSI standards. In the final category there are several interesting examples
including IDE ATAPI CD writers and PC parallel bus ZIP drives. Such devices
including ATAPI CD writers and PC parallel bus ZIP drives. Such devices
use the SCSI command set (or something very close to it) over a foreign bus.
</para>
<para>
@ -1531,12 +1654,12 @@ maintainers.
</para>
<formalpara><title>IDE-SCSI</title>
<para>
From configuration point of view, ide-scsi will grab
and try to control every IDE device which doesn't have a "native"
From configuration point of view, ide-scsi will grab and try to control
every ATA (a.k.a. IDE) device which doesn't have a "native"
driver attached (such as ide-cd, ide-tape, etc). So for example, if
both ide-cd and ide-scsi are compiled into the kernel in a system
which has an ATAPI cdrom, ide-cd will get to control it. If only
ide-scsi is compiled in, it will get the device. There are also some
ide-scsi is compiled in, it will get the device. There are some
command line parameters to control which driver gets which device.
</para>
</formalpara>
@ -1545,7 +1668,7 @@ It was "hdx=ide-scsi / hdx=ide-cdrom / hdx=ide-floppy" in 2.2.x
kernels. In the 2.4 series this has been changed to "hdx=scsi".
Also see <link linkend="sr">this</link> section on cdroms.
[The term "hdx" is used
to refer to one of the IDE devices in {hda, hdb, hdc ...}.]
to refer to one of the IDE/ATA devices in {hda, hdb, hdc ...}.]
</para>
<para>
When the driver is running, the device will be accessible using
@ -1612,7 +1735,7 @@ that the host adapter and the peripheral are in the same actual case.
<formalpara><title>PPSCSI</title>
<para>
The new, not-yet-integrated, architecture for devices that uses SCSI
The new, not-yet-integrated, architecture for devices that use SCSI
over a parallel port cable is ppscsi. The ppscsi module provides the
boiler plate code and makes it easy to write implementations for
different interfaces.
@ -1669,7 +1792,19 @@ See kernel source file <filename>/usr/src/linux/drivers/i2o/io2_scsi.c
<para>
Support for IEEE 1394 devices that use the SBP-2 protocol is now
becoming available. See the IEEE 1394 paragraph in this
<link linkend="scsibus">section</link> for some urls.
<link linkend="ieee1394">section</link> for more information.
</para>
</formalpara>
<formalpara><title>iSCSI</title>
<para>
An IETF draft is taking shape for iSCSI. This sends the SCSI command
set over a TCP network connection. iSCSI seems to be gaining popularity
quickly and there are several implementations for Linux taking shape.
One implementation is at
<ulink url="http://sourceforge.net/projects/intel-iscsi/">
<literal>sourceforge.net/projects/intel-iscsi/</literal></ulink>.
Use your favourite search engine to find other projects.
</para>
</formalpara>
@ -1694,7 +1829,7 @@ found at <filename>/dev/rawctl</filename>. A utility called <command>raw
</command> (see <command>man raw</command>) can be used to bind a raw
device to an existing block device. These "existing block devices" may be
disks or cdroms/dvds whose underlying interface can be anything supported
by Linux (e.g. IDE or SCSI).
by Linux (e.g. IDE/ATA or SCSI).
</para>
<para>
A sequence of commands listing the raw devices and then binding
@ -1740,7 +1875,7 @@ Unix utilities such as recent versions of <command>dd</command> and
<command>lmdd</command> (from the lmbench suite of programs) can be used
to move data to and from "raw" devices as they meet the above-mentioned
block alignment requirements. Recent versions of the <command>sg_dd</command>
command in the sg_utils package can use raw and sg devices.
command in the sg_utils package can access both raw and sg devices.
</para>
<warning>
<para>
@ -1843,7 +1978,7 @@ Secondary name slink to this primary device
</para>
<para>
Those entries marked with "*" are directories containing the primary devices.
Note that IDE devices are listed before SCSI devices. These secondary device
Note that IDE/ATA devices are listed before SCSI devices. These secondary device
names mimic the same persistence rules as the primary device names. So when
a SCSI device (?), or its lower level driver or its upper level driver are
removed then so are the primary and secondary device names associated with it.
@ -1972,18 +2107,27 @@ LVD and SE physical buses on the same logical SCSI bus.
</formalpara>
<formalpara><title>ULTRA 160 SCSI</title>
<para>
The fastest parallel SCSI bus currently available is ULTRA 160 which is
also known as ULTRA 3. It uses a 16 bit wide data path, LVD signalling
(see previous entry) and double transition clocking that increases the
maximum synchronous bandwidth to 160 MB/sec. Additional features
include cyclic redundany codes (CRC) to improve data integrity (compared
with a parity bit) and domain validation which lowers transfer rates
if the error rate is too high. Various
manufacturers have got together and maintain a common web site promoting it:
<ulink url="http://www.ultra160-scsi.com">
<literal>www.ultra160-scsi.com</literal></ulink>. Speeds of 320 MB/sec
and 640 MB/sec using the same or similar LVD signalling over a 16 bit
wide data path may soon be standardized.
ULTRA 160 doubles parallel SCSI bus bandwidth yet again. It uses a 16 bit
wide data path, LVD signalling (see previous entry) and double transition
clocking that increases the maximum synchronous bandwidth to 160 MB/sec.
Additional features include cyclic redundany codes (CRC) to improve data
integrity (compared with a parity bit) and domain validation which adjusts
transfer rates if the error rate is too high.
</para>
</formalpara>
<formalpara><title>ULTRA 320 SCSI</title>
<para>
Shortly ULTRA 320 adapters will be available (disks with that interface
are already on the market). This is also a 16 bit wide LVD bus that can
fall back to slower speeds for compatibility with older devices. It extends
the features of Ultra 160 by doubling the clock speed. Packetized SCSI
which sends commands and status at full bus speed (rather than 5 MB/sec)
is included. Other improvements include "quick arbitration and selection"
and "read and write data streaming". Note that adapter cards using 64 bit
PCI (or better: PCI-X) are required to stop the PCI bus being a bottleneck
at these speeds. More information can be found at
<ulink url="http://www.scsita.org"><literal>www.scsita.org</literal></ulink>.
Evidentally ULTRA 640 is coming as well.
</para>
</formalpara>
<formalpara><title>FC-AL</title>
@ -2000,6 +2144,7 @@ cable) can also be used at lower speeds and for shorter distances.
</formalpara>
<formalpara><title>IEEE 1394</title>
<para>
<anchor id="ieee1394">
This standard also goes by the name of "Fire Wire" [trademarked
by Apple] and "iLink" [trademarked by Sony]. It is a serial bus that can run
at up to 400 Megabits/sec. It has a similar but more general architecture than
@ -2010,9 +2155,17 @@ lower level driver (so it is functionally similar to the ide-scsi driver).
So IEEE 1394 devices that use the SBP-2 protocol (e.g. disks, cd-rw/dvd
drives, MO drives and scanners) can be accessed via the SCSI subsystem.
See <ulink url="http://Linux1394.sourceforge.net">
<literal>Linux1394.sourceforge.net</literal></ulink>
and <ulink url="http://firewire.zawa.com/sbp2/">
<literal>firewire.zawa.com/sbp2/</literal></ulink> for more information.
<literal>Linux1394.sourceforge.net</literal></ulink> for more information.
The sbp2 driver is in that project's CVS and hopefully will appear in
the released kernel shortly.
</para>
</formalpara>
<formalpara><title>iSCSI</title>
<para>
This is an emerging IETF standard for sending the SCSI command set over a
TCP connection (or several of them). This will permit SCSI devices (targets
such as disks) to be network appliances, accessed locally (or potentially
at a great distance) by a host machine.
</para>
</formalpara>
@ -2025,15 +2178,16 @@ SCSI products.
</para>
</formalpara>
<formalpara><title>IDE (ATAPI)</title>
<formalpara><title>IDE/ATA (ATAPI)</title>
<para>
IDE is the most used disk type on PC systems today. The acronym stands for
Integrated Drive Electronics and as the name suggests it places the bulk
of the IO "intelligence" on the disk controller card rather than spreading
it between the device (most often a disk) and a controller (HBA) as SCSI
does. IDE grew out of the ST506 and ESDI standards in the 1980s. EIDE
(extended IDE) is a related acronym. The standards that cover IDE are
called ATA and can be found at <ulink url="http://www.t13.org">
(extended IDE) is a related acronym. The modern standards that refer to
this bus architecture are known as ATA and can be found at
<ulink url="http://www.t13.org">
<literal>www.t13.org</literal></ulink>. The ATA Packet Interface (ATAPI)
extends the disk oriented command set to support CDROM and tape drives.
The ATAPI command set closely resembles the SCSI command set. The
@ -2153,8 +2307,8 @@ HDIO_GETGEO_BIG {ioctl, new}
<title>sr changes</title>
<para>
No sr changes reported. As a related matter, the way in which the
IDE subsystem is informed that an IDE device (e.g. a cd writer) is
to be ignored has changed. [Instructing an IDE device to be ignored
IDE subsystem is informed that an ATA device (e.g. a cd writer) is
to be ignored has changed. [Instructing an ATA device to be ignored
by the IDE subsystem makes it a candidate to be recognized by the
ide-scsi pseudo driver.] Previously a kernel boot time option such as
"hdb=ide-scsi" would instruct the IDE subsystem to ignore the
@ -2755,7 +2909,7 @@ SG_DEF_FORCE_LOW_DMA {0}
SG_DEF_FORCE_PACK_ID {0}
SG_DEF_KEP_ORPHAN {0}
SG_MAX_QUEUE {16}
SG_DEFAULT_RETRIES {1}
SG_DEFAULT_RETRIES {1} # i.e. don't retry
SG_BIG_BUFF {SG_DEF_RESERVED_SIZE}
SG_DEFAULT_TIMEOUT {60 seconds}
SG_DEF_COMMAND_Q {0 *}

View File

@ -15,22 +15,6 @@ Single
4 0 0 50 0 12 14 0.0000 4 150 810 1650 3675 driver\001
4 0 0 50 0 12 14 0.0000 4 180 1350 1425 3900 {ide-cd.o}\001
-6
6 1200 975 6825 2250
2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
1200 975 6800 975 6800 2250 1200 2250 1200 975
4 0 0 50 0 12 14 0.0000 4 195 2700 2625 1275 Uniform CD-ROM layer\001
4 0 0 50 0 12 14 0.0000 4 180 2430 2775 1650 [DVD, audio, etc.]\001
-6
6 1200 4350 2850 5400
6 1200 4350 2850 5400
2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
1200 4350 2850 4350 2850 5400 1200 5400 1200 4350
-6
4 0 0 50 0 12 14 0.0000 4 135 405 1725 4575 IDE\001
4 0 0 50 0 12 14 0.0000 4 180 1350 1425 5325 {ide-cd.o}\001
4 0 0 50 0 12 14 0.0000 4 195 1215 1425 4800 subsystem\001
4 0 0 50 0 12 14 0.0000 4 150 810 1575 5025 driver\001
-6
6 3150 2850 4800 3975
6 3150 2850 4800 3975
6 3150 2850 4800 3975
@ -63,9 +47,20 @@ Single
4 0 0 50 0 12 14 0.0000 4 135 1620 3225 5025 +lower level\001
4 0 0 50 0 12 12 0.0000 4 180 1575 3150 5250 {scsi_mod.o ++}\001
-6
2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
1200 975 6800 975 6800 2250 1200 2250 1200 975
2 2 0 1 0 7 50 0 -1 0.000 0 0 -1 0 0 5
1200 4350 2850 4350 2850 5400 1200 5400 1200 4350
4 0 0 50 0 12 14 0.0000 4 180 675 300 1350 Upper\001
4 0 0 50 0 12 14 0.0000 4 135 675 300 1650 level\001
4 0 0 50 0 12 14 0.0000 4 150 405 375 3300 Mid\001
4 0 0 50 0 12 14 0.0000 4 135 675 375 3600 level\001
4 0 0 50 0 12 14 0.0000 4 135 675 375 4800 Lower\001
4 0 0 50 0 12 14 0.0000 4 135 675 375 5100 level\001
4 0 0 50 0 12 14 0.0000 4 135 405 1725 4575 IDE\001
4 0 0 50 0 12 14 0.0000 4 195 1215 1425 4800 subsystem\001
4 0 0 50 0 12 14 0.0000 4 150 810 1575 5025 driver\001
4 0 0 50 0 12 14 0.0000 4 180 945 1425 5325 {ide.o}\001
4 0 0 50 0 12 14 0.0000 4 195 2700 2625 1275 Uniform CD-ROM layer\001
4 0 0 50 0 12 14 0.0000 4 180 2430 2775 1650 [DVD, audio, etc.]\001
4 0 0 50 0 12 16 0.0000 4 195 1350 3300 1950 {cdrom.o}\001