Provided by: sg3-utils_1.17-2_i386
sg_reset - sends SCSI device, bus or host reset; or checks reset state
sg_reset [-b] [-d] [-h] [-V] <scsi_device>
The sg_reset utility with no options (other than the device name)
reports on the reset state (e.g. if a reset is underway) of the given
device. When given a ’-d’, ’-b’, or ’-h’ option it requests a device,
bus or host reset respectively.
In the linux kernel 2.6 series this utility can be called on sd, sr
(cd/dvd), st or sg device nodes; if the user has appropriate
In the linux kernel 2.4 series support for this utility first appeared
in lk 2.4.19 and could only be called on sg device nodes. Various
vendors made this capability available in their kernels prior to lk
-b attempt a SCSI bus reset. This would normally be tried if the
device reset (i.e. option ’-d’) was not successful.
-d attempt a SCSI device reset. If the device seems stuck, this is
the first reset that should be tried. This assumes the linux
scsi mid level error handler is not already in the process of
resetting this device.
-h attempt a host adapter reset. This would normally be tried if
both device reset (i.e. option ’-d’) and bus reset (i.e. option
’-b’) were not successful.
The error recovery code within the linux kernel when faced with SCSI
commands timing out and no response from the device (LU), first tries a
device reset and if that is not successful tries a bus reset. If that
is not successful it tries a host reset. Users of this utility should
check whether such a recovery is already underway before trying to
reset with this utility. The "device,bus,host" order is also
recommended (i.e. first start with the smallest hammer).
SAM-4 defines a hard reset (which includes a device power on and a
transport reset), a logical unit reset and a I_T nexus reset. A LU
reset and an I_T nexus reset can be requested via task management
function (and support for LU reset is mandatory). In Linux the SCSI
subsystem leaves it up to the low level drivers as to whether a "device
reset" is only for the addressed LU or all the LUs in the device that
contains the addressed LU. The "bus reset" is a transport reset. A
"host reset" attempts to re-initialize the HBA that the request passes
through on route to the given device. Obviously a "host reset" and a
"bus reset" can cause collateral damage.
This utility does not allow individual SCSI commands (or tasks as they
are called in SAM-4) to be aborted. SAM-4 defines ABORT TASK and ABORT
TASK SET task management functions for that.
Written by Douglas Gilbert.
Copyright © 1999-2005 Douglas Gilbert
This software is distributed under the GPL version 2. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR