scsimgr(1M) scsimgr(1M)
NAME
scsimgr - SCSI management and diagnostic utility
SYNOPSIS
command driver] [identifier] [keyword]... [argument]...
driver] [command]
DESCRIPTION
performs management and diagnostic operations on the SCSI objects and subsystems.
SCSI objects are identified by either their hardware path, character Device Special File (DSF), or their class and instance number. These
are typically visible in the output of SCSI objects are typically a single LUN (logical unit number), LUN path, target path, HBA con-
troller, or a group of these. The SCSI object is specified as an identifier in the command line.
A SCSI subsystem is typically the SCSI services module, a SCSI class driver, or a SCSI interface (also known as I/F) driver.
provides generic management and diagnostic capabilities for the SCSI subsystem as well as specific management and diagnostic capabilities
for SCSI class drivers or SCSI interface drivers through plug-ins provided by these drivers.
Refer to the respective manpages of the driver plug-ins for detailed description of commands and other functions specific to that driver.
The manpages of driver plug-ins are in section 7, and are of the form: where driver is the name of the driver. For example
scsimgr_esdisk(7) is the manpage of the plug-in for the driver.
A SCSI subsystem may maintain a set of attributes. An attribute is a data value associated with either the SCSI subsystem, a set of SCSI
objects, or a single instance of a SCSI object. It has a name, a data type, and may have one or more value instances: current (run-time
value), saved (value in a persistent store), and default.
An attribute can be read-only or read-write. Read-only attributes are global or per-object instance information that can be queried indi-
vidually through their name. Saved and default values are irrelevant for such attributes.
Read-write (or settable) attributes are tunables. Users or user applications can change their current or saved values. The saved value is
used to set the current value of the attribute at system boot or other re-initialization points. When no saved value exists, the default
value is used to set the current value.
Attributes can be generic or driver specific. Generic attributes do not depend on a class or an interface driver. They are described in
this manpage. Driver specific attributes are maintained by a class or an interface driver. They are described in the respective manpages
of the driver plug-ins for scsimgr.
To ease management, adapt to various resource conditions, and increase the interoperability and reliability of the SCSI stack, settable
attributes can be defined at various scopes or levels:
o Global: A value of an attribute set at this scope, affects the default behavior for the SCSI stack, a class driver or an interface
driver. For instance, the default I/O timeout can be set to 60sec for all SCSI devices.
o Device Set or DDR (Device Data Repository): This scope includes a set of devices bound to a driver, and defined by parameters such as
device type, vendor identifier, product identifier or product revision. An attribute set at this scope affects the default behavior for
the set of devices bound to the specified driver and meeting the specified criteria. For instance, the default I/O time out can be set
to 60sec for disk devices from HP and bound to driver and to 120sec for all tape devices bound to driver
o Per a specific instance of an object: A value of an attribute set at this scope overwrites the default behavior for a specific instance
of an object. For instance, I/O time out can be set to 50sec for
When the change to the current value of an attribute takes effect depends on the attribute and the level or scope where the change is per-
formed. In general, change of an attribute at a global or intermediate level (such as, device type and vendor id) will immediately affect
the current values of all existing objects covered by the scope.
For example, if the default I/O timeout is changed for all HP disk devices, this will immediately affect I/O timeout for all HP disk
devices whether they are currently open or not. However, the change will not affect any HP disk device for which the user has explicitly
set a different value for I/O timeout.
A given attribute can not necessary be set at all levels. Certain attributes can only be set at a global level. That is the case for
attributes adjusting global resource usage. Other attributes can only be set at a per object instance level. Some drivers do not provide
the possibility to set attributes at intermediate level; such as, device type and vendor identifier.
If setting an attribute causes the system to become unstable, it may be possible to recover by rebooting the system in single user mode.
The SCSI subsystem uses attribute factory default values for objects initialized while in single user mode.
The attribute is specified as an argument in the command line.
performs the following operations:
o Activate standby or active non-optimized LUN paths for asymmetric devices.
o Display and clear global statistics or statistics for SCSI objects.
o Clear kernel metric data for SCSI objects.
o Display status and other information for SCSI objects.
o Display information for all the LUN paths to a LUN.
o Get, set and save attributes for SCSI objects.
o Add, remove and list settable attribute scopes for drivers
o Validate the change of LUN associated to a LUN path (replace WWID).
o Validate the change of LUN associated to a legacy DSF (replace a legacy DSF).
o Disable or enable SCSI objects.
o Perform SCSI task management functions such as LUN reset, cold target reset, warm target reset.
o Set or get the user friendly character string identifying a LUN (helpful when the LUN is relocated).
o Synchronize cache for block devices.
o Erase blocks of optical memory devices.
o Inquire SCSI devices for its characteristics.
Options
Specifies the name of the driver for driver specific commands.
Note: When this option is specified, the driver plug-in (if present) executes the command. The driver plug-in may not neces-
sarily support all commands. To list the commands supported by the driver module run the following command:
Forces execution of destructive/disruptive operations.
With this option, the command executes without warning or prompting for confirmation.
Prints general usage information or help information on a specific operation
Produces a one line parse-able output of values separated by a colon
Displays verbose or extended output where applicable.
command Specifies a supported command. Supported commands include:
Activates LUN paths in standby state, or active non-optimized state to
active optimized state for devices with asymmetric access.
Clears statistics.
Clears kernel metric (Kmetrics) data.
Performs a cold reset on a target device.
Defines a new settable attribute scope for a driver.
Deletes a settable attribute scope for a driver.
Lists driver settable attribute scopes.
Generates a settable attribute scope covering a SCSI object.
Disables a SCSI object.
Enables a SCSI object.
Pre-erases the medium of a magneto-optical device.
Displays information on attributes.
Gets an identifier for a device.
Displays information.
Displays statistics.
Requests information on parameters of the target and a component LUN.
Displays information about LUN paths of a LUN.
Resets a LUN.
Validates the change of a LUN associated with a legacy DSF.
Validates the change of a LUN associated to a LUN path.
Saves value persistently (across reboot) for attributes.
Sets current values for attributes.
Sets an identifier for a device.
Requests synchronization of the write cache of a block device.
Performs a warm reset on a target device.
Refer to the section below for details about these commands.
identifier Identifies the SCSI object on which the operation applies. It can be of the following form:
{ dsf | leg_dsf } |
where the following means:
dsf Full path of character persistent device special file of a LUN or a SCSI HBA controller.
leg_dsf Full path of character legacy device special file of a LUN (see intro(7)).
hw_path Hardware path of a LUN, LUN path, target path, or SCSI HBA controller.
class Class of a LUN, LUN path, target path, or SCSI HBA controller. (Must be used in combination with the instance.)
instance Instance of a LUN, LUN path, target path, or SCSI HBA controller. (Must be used in combination with the class.)
alias A user-defined name assigned to an object instance that uniquely identifies it. An alias identifier is a settable
attribute associated with the object it identifies or with a related object. An example of an alias identifier is
the attribute of a target path, which uniquely identifies the target port to a target path.
attr_scope Scope of settable attributes for a driver. It must be of the following form:
Where :
driver Name of the driver (for example,
pdt Peripheral device type in hex (for example, 0x0, 0x1) as returned from inquiry data.
vid Vendor identifier as returned in inquiry data (for example, "HP ")
pid Product identifier as returned in inquiry data (for example, "SDLT600 ")
rev Product revision as returned in inquiry data (for example, "HP06")
Note: If the settable attribute scope is defined at the vendor identifier (vid), product identifier (pid), or prod-
uct revision level (rev), the vid, pid, or rev can be partially specified by terminating it with the special string
This wildcard covers a family of devices from the same vendor, which share the same characteristics, but may have
different product identification information.
The following examples show partial level specification for devices bound to the driver:
o
All disk devices with a vid starting with "HP"
o
All disk devices from HP with a pid starting with "ST39103".
o
All disk devices from HP with a vid of "ST336706LC " and a rev starting with "HP".
Note: Only a few commands support legacy device special file of a LUN as SCSI object identifiers. See the command description
to determine whether a command supports this identifier.
keyword Provides additional information on the scope of the command. The following keywords are defined. A given command may not nec-
essary support all the keywords.
Operation applicable to all SCSI HBA controllers.
Operation applicable to all LUN paths of the LUN or the target path
identified by the parameter identifier.
Operation applicable to all LUNs.
Operation applicable to all target paths of the SCSI HBA controller
or the target port alias identified by the parameter identifier.
Operation applicable to all SCSI HBA controllers, all target paths,
all LUN paths and all LUNs. This keyword is only valid for the command and it does not require any other
identifier. The operation is a combination of and
Operation applicable to all attribute scopes registered
Operation applicable to current values of the attributes.
Operation applicable to default values of the attributes.
Operation applicable to read only attributes.
Operation applicable to saved values of the attributes.
Operation applicable to read-write attributes.
argument Provides additional parameter depending on the command. For attribute related commands, argument is of the form:
where attribute is an attribute argument in one of the three forms below:
with the following meaning:
attr Name of an attribute.
value Value to set current and/or saved value of the attribute.
When specified with the command
the default value of the attribute is persistently restored.
Note: Valid attribute names can be obtained by running the command:
They depend on the identifier.
Supported scsimgr Commands
To get the list of supported commands, run the help option:
These commands are described below.
This operation is applicable only to devices supporting explicit Asymmetric
Logical Unit Access (ALUA) or vendor specific active-passive access. This operation can be invoked on the given LUN or any
of its LUN path.
This operation activates the LUN paths in standby state, or active non-optimized state to active optimized state on the
given LUN. This operation will have no effect if initiated on a LUN having no standby or active non-optimized LUN paths or
if the LUN does not support explicit activation of standby or active non-optimized paths.
Note: After the successful completion of the operation, LUN paths that were in active optimized state prior to the operation
may automatically switch over to standby state or active non-optimized state.
WARNINGS:
o The command can affect the state of currently active ports on the target. This command should be used only by an experi-
enced user. Before performing this operation, consult the scsimgr white paper, at or consult your HP support representa-
tive.
Usage:
Note: identifier identifies a LUN or LUN path.
The command clears while displays global statistics or statistics of a SCSI object or a group of SCSI objects, respectively.
The option with displays all statistics. If is not specified, only basic statistics are displayed.
The option with specifies a verbose output for the execution of the command. For instance, if executed on a group of
objects (for example, the command shows the result for each SCSI object.
If no identifier or keyword for a group of SCSI objects is specified, or displays or clears global generic statistics
respectively.
If an identifier or a keyword for a group of SCSI objects is specified, or displays or clears generic statistics (in other
words, statistics commonly defined for all class or interface drivers), respectively. It also displays or clears class
and/or interface driver specific statistics if any, if the driver provides a plug-in module. So there is no need to specify
"" to display or clear driver specific statistics for SCSI objects. However, to display or clear a class or interface
driver global statistics, you must specify the option "" without any SCSI object identifier or keyword for a group of SCSI
objects.
If the identifier is specified with clears the statistics of all SCSI HBA controllers, all target paths, all LUN paths, and
all LUNs in the system. You do not need to use any other identifiers. This operation also resets the global generic sta-
tistics.
Usage:
[ identifier |
alias
[ identifier |
alias
Note: identifier identifies a LUN, LUN path, target path, alias, or SCSI HBA controller. Alias is a target port alias pre-
viously assigned by the attribute of a target path.
The command clears the kernel metric (Kmetrics) data counters for a SCSI object
The option with specifies a verbose output for the execution of the command. For instance, if executed on a group of
objects (for example, the command shows the results for each SCSI object.
Usage:
identifier |
Note: identifier identifies a LUN.
Respectively performs the following SCSI task management
functions (if supported by the interface driver):
o TARGET COLD RESET management task sent to the device.
Actions necessary to perform a cold target reset depend on the SCSI transport. In case of Fibre Channel transports, the
target is reset and a TPLO (Third Party Log Out) is performed.
o LUN RESET management task sent to the device.
o TARGET WARM RESET management task sent to the device.
Usage:
Note: identifier identifies only a LUN.
Respectively adds and deletes a settable attribute scope for a driver.
Once a scope is added, it is possible to set specific attribute values at this scope. These values will affect the default
behavior for devices covered by the scope.
It is not necessary to add a scope to be able to display the values of attributes for devices covered by the scope. The
values are inherited from highest scope where the attributes are explicitly set.
WARNINGS: These commands may affect the interoperability with certain devices or the proper operation of the system. They
should only be used by experienced users. HP recommends that you consult your HP support representative before adding or
deleting a settable attribute scope.
Usage:
Lists driver settable attribute scopes registered on the system.
Usage:
Note: The attribute scope specifies the set of devices affected by attribute values set at this level.
To display the list of attributes that can be set at a given scope and their values, run the command:
For instance, if you add the scope corresponding to all disk devices from HP: to list attributes which can be set at this
level and their values, run the following command:
For description of attributes, refer to the manpage of the plug-in for the corresponding driver.
Generates a settable attribute scope covering a SCSI object.
The user can then register the scope generated using the command option
Usage:
pdt | vid | pid | rev
where:
identifier Identifies a LUN.
pdt Includes elements down to the peripheral device identifier.
vid Includes elements down to the vendor identifier.
pid Includes elements down to the product identifier.
rev Includes elements down to the firmware revision number.
Note: the user can manually build the settable attribute scope, but this is prone to errors. The command option automati-
cally generates the settable attribute scope from the inquiry data of the LUN, as well as the driver to which it is bound.
The user can then "cut and paste" the scope to register it with the system using the command option.
For example, to register the settable attribute scope corresponding to all disk devices bound to the same driver as disk20,
and from the same vendor as disk20, run the following command:
If the command gives the output:
the user can then register the scope generated as follows:
Disables/enables a SCSI object.
Upon disable, the object cannot be used to transfer I/Os. If the disabled object is a LUN, all pending I/Os are aborted for
that LUN. Currently supported SCSI objects are LUNs and LUN paths.
The SCSI object can be disabled either administratively by invoking the disable command, or by the SCSI stack upon detection
of certain types of critical errors. When this condition has occurred, HP-UX logs a message in which informs the user that
a SCSI object has been disabled. In the case of the SCSI stack disabling the SCSI object, the system administrator, after
resolving the problem on the device, can invoke the command to resume data transfers on the SCSI object.
Usage:
Note: The disable and enable operations are currently only supported on block devices and their LUN paths.
identifier identifies either a LUN or a LUN path.
Pre-erase the whole medium for magneto-optical devices that support
write without erase.
Usage:
Note: identifier identifies only a LUN.
Displays information of global attributes or attributes of a SCSI object
or a group of SCSI objects. All the values of the attribute (current, saved and default) are displayed. The displayed val-
ues can be restricted by using the appropriate keyword (for example, and
All settable or read-write attributes are system-wide; in other words, they do not depend on the kernel instance used to
boot the system. The output is guaranteed to remain unchanged across releases for an attribute name-value pair.
The option displays a brief description for each attribute.
The option displays the values of the attributes requested on a single line and separated with the colon delimiter By
default the current value is displayed. Saved and default values can be requested using the corresponding keyword. The
option requires a list of attributes using the "" option.
If no identifier or keyword for a group of SCSI objects is specified, displays global generic attributes (in other words,
global attributes common to all class and interface drivers).
If an identifier or a keyword for a group of SCSI objects is specified, displays generic attributes (in other words,
attributes commonly defined for all class or interface drivers). It also displays class and/or interface driver specific
attributes if any, if the driver provides a plug-in module. So there is no need to specify "" to display driver specific
attributes. However, to display global attributes maintained by a class or interface driver, you must specify the option ""
without any SCSI object identifier or keyword for a group of SCSI objects.
The list of generic attributes currently supported by is described in the section later in this manpage. To view the list
of specific attributes maintained by a class or interface driver, if any, refer to the manpage of the driver's plug-in for
See scsimgr_<driver_name>(7), where <driver_name> is the name of the driver. For example, see scsimgr_esdisk(7).
Usage:
[ identifier
} ]
[ identifier
} ]
alias
[ identifier |
[ identifier
Note: identifier identifies either a LUN, LUN path, target path, alias, SCSI HBA controller, or a settable attribute scope
for a driver. Alias is a target port alias previously assigned by the attribute of a target path.
The user can specify the following command to get the current and default value of a settable attribute:
But with the option, only one attribute value can be specified; either (by default), or and a list of attributes is
required.
Note: When is invoked for a group of objects, in order to correlate the output with the objects, an object identifier must
be included in the list of attributes to display.
For example, in the following command the user displays WorldWide Identifier (attribute and the SCSI stack internal state
(attribute for all LUNs. If the user does not include a LUN identifier as one of the attributes to display, it is not pos-
sible to determine which values corresponding to which LUN.
However, if the user includes the device special file (attribute in the list of attributes as shown below, it is possible to
determine which values correspond to which LUN.
The user has the flexibility to choose which identifier to display along with the attribute values. The following
attributes can be used to identify an object depending on the SCSI object:
Device special file.
Can be used for LUNs or HBA controllers.
Hardware path of the SCSI object.
Can be used for LUNs, LUN paths, target paths, and HBA controllers.
Instance number of the SCSI object.
Should be used along with the to identify a LUN, LUN path, target path, or an HBA controller.
Class of the SCSI object.
Should be used along with the number to identify a LUN, LUN path, target path, or an HBA controller.
Respectively gets and sets an identifier for a device.
An identifier is a user friendly readable string (maximum size of 128 characters) that is stored on the device itself which
remains viewable even if the device is moved physically. These commands can only be performed on devices that support the
SCSI commands: REPORT DEVICE IDENTIFIER and SET DEVICE IDENTIFIER. Devices implementing these commands are mandated to
accept identifier of up to 64 bytes. They can optionally accept identifiers of up to 512 bytes. So even if allows to spec-
ify identifiers of up to 128 bytes, it is safer to limit to 64 bytes.
Usage:
Note: identifier identifies only a LUN. device_id is a user friendly device identifier.
Displays global status and other information, or per-SCSI object instance
status or other information of a SCSI object or a group of SCSI objects.
Use option to display all information. If is not specified only a basic set of information is displayed.
If no identifier or keyword for a group of SCSI objects is specified, displays global information maintained by SCSI ser-
vices module.
If an identifier or a keyword for a group of SCSI objects is specified, displays generic information (in other words, infor-
mation defined for all class or interface drivers). It also displays class and/or interface driver specific information if
any, if the driver provides a plug-in module.
So there is no need to specify to display driver specific information.
However, to display a class or interface driver specific global information, you must specify the option without any SCSI
object identifier or keyword for a group of SCSI objects.
Usage:
[ identifier | all_lun |
{ identifier
alias
Note: identifier identifies a LUN, LUN path, target path, alias, or SCSI HBA controller. Alias is a target port alias pre-
viously assigned by the attribute of a target path.
See above.
Requests and displays information regarding parameters of the target and
a component LUN including: standard inquiry data, vital product data and SCSI commands supported by the device server.
Usage:
[ page-key | page ]
Note: page is page number in hexadecimal
page-key is the page as ASCII string, and can be one of the following:
supported pages(0x00)
identifier page(0x83)
serial number page(0x80)
implemented operating definitions(0x81)
ASCII operating definitions(0x82)
extended inquiry data page(0x86)
Note: identifier identifies a LUN or a LUN path.
Displays information (Class and Instance, Hardware Path, type of SCSI transport
protocol, State) about all the LUN path/s of a LUN. It also displays the WorldWide Identifier (WWID), if it exists, of the
LUN and the number of LUN paths to this LUN.
If no identifier is specified, information about LUN paths of all the LUNs will be displayed.
If used with the option, information for each LUN path is displayed in a single line in a parse-able manner. The fields are
separated with the colon delimiter
Note: The option can be used only when a LUN identifier is specified.
Usage:
Note: identifier identifies only a LUN.
See above.
Validates change of a LUN associated with a legacy Device Special File (DSF).
Typically when a LUN is replaced, the new LUN has a different WWID (WorldWide Identifier). A new persistent DSF is created
for this LUN, but legacy DSFs continue to be associated with the replaced LUN until the system is rebooted. removes the
current binding of legacy DSFs with LUN and invokes to establish a new binding.
A change on the storage network (SAN) or target may affect several legacy device special files (DSFs). Identifying all the
affected legacy DSFs may be cumbersome. Therefore, allows you to invoke on a target path or a LUN.
When is invoked on a target path or a LUN, validates the change of the binding to LUNs for all legacy DSFs corresponding to
the LUN paths of the target path or the LUN.
Note that this operation can be performed on a legacy DSF only after it has been closed.
The command combined with the command replaces the command which is now obsolete. See the fcmsutil(1M) manpage.
To replace the command, use the command if LUN paths are affected by the replacement and use the command to validate the
association of legacy device files with the new LUN. If all affected legacy DSFs are closed, it is not necessary to invoke
after invoking on corresponding LUN paths.
Usage:
Note: identifier identifies a legacy Device Special File for the LUN, a LUN, or a target path.
Validates the change of a LUN associated to a LUN path.
It clears the binding of the LUN path with an existing LUN and rescans the parent controller or target path so that the LUN
path can be associated with the new LUN.
Note: The scan of the parent object may result in change of state of unrelated LUN paths.
To prevent accidental data corruption, the SCSI stack implements an authentication mechanism based on the LUN WorldWide
Identifier (WWID). When a LUN with a different WWID is discovered through a previously discovered LUN path, further access
to the device through that LUN path is prevented. The LUN path is put in "Authentication Failure" state. Then, HP-UX logs
a message in which informs the user that the operation needs to be performed.
If the user has intentionally replaced the LUN, the command must be run to authorize the re-use of that LUN path for a dif-
ferent LUN.
In some situations, a replacement of a target controller may cause LUN paths of corresponding target paths to be put in
authentication failure state. To validate the replacement and re-authorize all the affected paths, can be used with the
target path identifier.
If the LUN itself has been replaced and all its previous LUN paths are now connected to the replaced LUN, can be used with
the LUN identifier to allow replacement of all LUN paths associated with that LUN.
If the keyword is specified, the DSF of the replaced LUN is re-assigned to the new LUN. This allows applications such as
volume groups or file systems to continue to use the same DSF to access the replacing LUN.
If a LUN has more than one persistent DSF, each of its persistent DSFs would be reassigned. To achieve this reassignment,
scsimgr invokes the io_redirect_dsf command. Note that this command may require the number of persistent DSFs of the
replaced LUN and the new LUN to be equal. See io_redirect_dsf(1M).
This authentication mechanism replaced the one implemented by Fibre Channel Tachyon TL, Tachyon TL2 and FCD drivers on
releases prior to HP-UX 11i Version 3. The command combined with the command replaces the command. See the explanation of
the command and the fcmsutil(1M) manpage.
Usage:
Note: identifier identifies a LUN, LUN path, or a target path. In case of LUN replacement (that is, the identifier is a
LUN), the keyword directs to also assign the device file name of the replaced LUN to the new LUN. If the identifier is a
LUN path, or target path, is just ignored.
WARNING: for disk arrays, if the WWID of the LUN representing the array controller (LUN with identifier 0) changes, all
lunpaths of that target port will go to state on a subsequent ioscan, resulting in a loss of access to the array controller.
This will cause the host OS to no longer probe and discover the LUN inventory behind that array controller, leading to all
LUNs behind that target port going to state on a subsequent ioscan. To re-enable probing and discovery of the LUN inventory
behind the target port, the user should run the command on the LUN representing the array controller.
Saves values, persistently, of global attributes or attributes of a single
SCSI object. If the keyword is specified, or the argument is of the form: "", then the default value is restored persis-
tently across system reboots.
If the keyword default is not mentioned and the argument is of the form: "", then the current value is replaced with the
specified value, and it is saved in a persistent store.
Attribute values saved in a persistent store are maintained across reboots.
Only values of attributes that are settable or read-write values can be saved. To view the settable values, use command
with the keyword In case of the value being saved is a string including a space, it should be put within double quotes
If no identifier or keyword for a group of SCSI objects is specified, attributes specified should be global generic
attributes.
If an identifier for a SCSI object is specified, attributes specified can be generic, class driver specific or interface
driver specific attributes maintained for the SCSI object. So there is no need to specify option "" to save driver specific
attribute for SCSI objects.
However, to save a class or interface driver's global specific attributes you must specify the "" option. If you specify
the option "", you can only specify this driver specific attributes, otherwise, the command will fail for all non driver
specific attributes.
Usage:
[identifier] attr...
driver] [identifier]
Note:
o identifier identifies either a LUN, LUN path, target path, a SCSI HBA controller or a settable attribute scope for a
driver.
o To differentiate the string from the keyword you must assign the string as:
WARNINGS: Changing attribute values at a registered scope for a driver (for example, device type, vendor identifier, or
product identifier) may affect interoperability with certain devices or proper operation of the system. It should be done
only by experienced users. HP recommends that you consult your HP support representative before changing attribute values.
Set current values of global attributes or attributes of a single SCSI
object. Values set in this manner remain so only until the system is rebooted (non persistent). To save this value across
reboots (persistent), use the command.
Only values of attributes that are settable or read-write values can be set. To view the settable values, use with the key-
word In case of the value being set is a string including a space, it should be specified within double quotes
If no identifier or keyword for a group of SCSI objects is specified, attributes specified should be global generic
attributes.
If an identifier for a SCSI object is specified, attributes specified can be generic, class driver specific or interface
driver specific attributes maintained for the SCSI object. So there is no need to specify option "" to set driver specific
attribute for SCSI objects.
However, to set a class or interface driver's global specific attributes, you must specify the "" option. If you specify
the option "", you can only specify this driver specific attributes, otherwise, the command will fail for all non driver
specific attributes.
Usage:
[ identifier ]
Note: identifier identifies either a LUN, LUN path, target path, SCSI HBA controller, or a settable attribute scope for a
driver.
WARNINGS: Changing attribute values at a registered scope for a driver (for example, device type, vendor identifier, or
product identifier) may affect interoperability with certain devices or proper operation of the system. It should be done
only by an experienced user. HP recommends that you consult your HP support representative before changing attribute val-
ues.
See above.
Requests synchronization of the write cache of a block device.
Data in the cache are written in the medium.
Usage:
Note: identifier identifies only a LUN.
See above.
Table: scsimgr Attributes
This table lists the generic attributes and some "Device Set" attributes. Under the category "Device Set" attributes, the table lists
which attributes the esctl driver allows at a settable attribute scope (also known as Device Data Repository, DDR). Attributes scopes sup-
ported by are peripheral device type (pdt) of 0xC, vendor identifier (vid), product identifier (pid), and product revision (rev). See
attr_scope for more information
Note: In this attribute description table, the following conventions are used:
o is Read Only.
o is Read Write.
o Range of values for applicable attributes is listed.
---------------------------------------------------------------------------
Object Attribute Name RO/RW Type Description
---------------------------------------------------------------------------
Global version RO string Version of SCSI services
---------------------------------------------------------------------------
max_lunid RW uint32 Max value of lunid to probe
for devices which do not
support REPORT LUNS com-
mand.
Range: 1 - 32
---------------------------------------------------------------------------
transient_secs RO uint32 Seconds to wait after a LUN
has gone OFFLINE before
failing I/Os
---------------------------------------------------------------------------
lun_cnt RO uint32 Number of LUNs discovered
on the host
---------------------------------------------------------------------------
ctlr_cnt RO uint32 Number of SCSI HBA con-
trollers registered with
the SCSI stack
---------------------------------------------------------------------------
escsi_dbg_lvl RW uint32 Debug level used to filter
diagnostic messages logged.
Range:
0 (lvl_panic) System unus-
able
1 (lvl_alert) Immediate
action required
2 (lvl_critical) Critical
condition
3 (lvl_err) Error condition
4 (lvl_warn) Warning condi-
tion
5 (lvl_note) Normal, but
need special handling
6 (lvl_info) Informative
---------------------------------------------------------------------------
max_q_depth RO uint32 Default maximum queue
depth.
---------------------------------------------------------------------------
leg_mpath_enable RW boolean Default setting of tunable
to enable or disable multi-
pathing on legacy DSF of a
LUN.
Values: false(0) or true(1).
---------------------------------------------------------------------------
escsi_maxphys RW uint32 Maximum I/O size allowed by
the SCSI subsystem in 4KB
units.
Range: 64 - 1048575
---------------------------------------------------------------------------
alua_enabled RO boolean Indicates whether Asymmet-
ric Logical Unit Access
(ALUA) functionality is
enabled by default. A
value of false(0) implies
that by default ALUA func-
tionality will be ignored
for the devices supporting
it. A value of true(1)
implies that by default
ALUA functionality will be
handled for the devices
supporting it.
---------------------------------------------------------------------------
retry_delay_enabled RO boolean Indicates whether support
of retry delay timer codes
returned by devices comply-
ing with SAM-4 (SCSI Archi-
tecture Model 4) in case of
congestion, is enabled or
disabled. A value of false(0) implies that support of
delay timer codes is dis-
abled by default. A value
of true(1), implies that
support of retry delay
timer code is enabled by
default.
---------------------------------------------------------------------------
auto_scan_enable RW boolean To enable/disable auto scan
of devices at the system
wide scope. Values: false(0) or true(1).
---------------------------------------------------------------------------
max_internal_hipri RW uint32 SCSI stack generates high
priority I/Os for scanning
devices as well as for
opening luns. On a system
with large lun configura-
tion, running ioscan can
result in too many of these
high priority I/Os. This
causes degradation in the
performance of regular
I/Os. Using this
attribute, the maximum num-
ber of high priority I/Os
that can be generated per
controller can be
restricted. By default,
this attribute is turned
off by setting it to
0xFFFFFFFF. Typical values
of this attribute range
from 128 to 2048. Choosing
lower values will result in
slower ioscan but better
regular I/O performance.
Higher values yield faster
ioscan but degraded regular
I/O performance.
---------------------------------------------------------------------------
max_lpt_scan RW uint32 SCSI stack scans all the
lunpaths of a target simul-
taneously. This leads to
too-many high priority I/Os
to be processed by HBA.
Using this attribute, the
number of lunpaths to be
scanned simultaneously per
target can be restricted.
By default, this attribute
is turned off by setting it
to 0xFFFFFFFF. Typical
values of this attribute
range from 32 to 2048.
Choosing lower values will
result in slower ioscan but
better regular I/O perfor-
mance. Higher values yield
faster ioscan but degraded
regular I/O performance.
---------------------------------------------------------------------------
LUN state RO string State of the LUN
---------------------------------------------------------------------------
dev_type RO string Type of the device
---------------------------------------------------------------------------
device_file RO string Default DSF
---------------------------------------------------------------------------
class RO string Class of the LUN
---------------------------------------------------------------------------
instance RO uint LUN instance number
---------------------------------------------------------------------------
hw_path RO string Hardware path of the LUN
---------------------------------------------------------------------------
wwid RO binary LUN WorldWide Identifier
ascii (WWID)
string
---------------------------------------------------------------------------
uniq_name RO binary HP-UX specific LUN unique
string identifier. It corresponds
to the WWID displayed in
binary string format, for
non parallel SCSI devices,
and a combination of WWID,
serial number, vendor iden-
tifier and product identi-
fier for parallel SCSI
devices. It allows to
uniquely identify devices
in the presence of old par-
allel SCSI devices with non
unique WWID.
---------------------------------------------------------------------------
serial_number RO string Serial Number of device
---------------------------------------------------------------------------
vid RO string Vendor identifier
---------------------------------------------------------------------------
pid RO string Product identifier
---------------------------------------------------------------------------
firmware_rev RO string Firmware revision of device
---------------------------------------------------------------------------
protocol_rev RO string SPC protocol revision
---------------------------------------------------------------------------
total_path_cnt RO uint32 Total number of LUN paths
---------------------------------------------------------------------------
alias RW string Alias that can be assigned
to the LUN.
Note: By default, no value
is pre-assigned (empty
string).
Range: ASCII string < 1024
chars.
---------------------------------------------------------------------------
transient_secs RW uint32 Seconds to wait after a LUN
has gone OFFLINE before
failing I/Os.
Range: 0 - 0xFFFFFFFE
---------------------------------------------------------------------------
leg_mpath_enable RW boolean Enable (true) or disable
(false) multi-pathing on
legacy DSF of this LUN.
Values: false(0) or true(1).
---------------------------------------------------------------------------
max_q_depth RW uint32 Maximum queue depth.
Range: 1 - 0xFFFFFFFE
---------------------------------------------------------------------------
lpt_to_lockdown RW string User provided LUN path to
locked down for the LUN.
Hardware path, or class and
instance number of the LUN
path should be provided as
the identifier. All I/Os
are issued on this LUN path
only (for tape, changer,
pass-thru LUNs only). If
the provided lunpath is
deleted or not present on
the next reboot, no other
lunpath is used for issuing
I/Os. User has to set this
attribute to another lun-
path in this case.
Note: This attribute should
be set only when the device
is in closed state. Chang-
ing the value when the lun
is open yields un-pre-
dictable results.
---------------------------------------------------------------------------
lpt_lockdown RO string LUN path which is locked
down for the LUN. All I/Os
are issued on this LUN path
only (for tape, changer,
pass-thru LUNs only).
Note: This attribute is
only valid when the device
is opened.
---------------------------------------------------------------------------
LUN path state RO string State of the LUN path
---------------------------------------------------------------------------
protocol RO string SCSI transport protocol
---------------------------------------------------------------------------
lunid RO uint64 LUN identifier within the
target
---------------------------------------------------------------------------
class RO string Class of the LUN path
---------------------------------------------------------------------------
instance RO uint32 Instance number of the LUN
path
---------------------------------------------------------------------------
hw_path RO string Hardware path of the LUN
path
---------------------------------------------------------------------------
wrr_path_weight RW uint32 Weight assigned to the LUN
path when I/O load balanc-
ing policy is set to
(weighted round robin).
Range: 1 - 0xFFFFFFFF
---------------------------------------------------------------------------
Target path state RO string State of the target path
---------------------------------------------------------------------------
port_id RO uint64 Target port identifier
---------------------------------------------------------------------------
protocol RO string SCSI transport protocol
---------------------------------------------------------------------------
port_name RO binary/ Target port name
ascii
string
---------------------------------------------------------------------------
node_name RO binary/ Target node name
ascii
string
---------------------------------------------------------------------------
lpt_cnt RO uint32 Number of LUN paths of the
target path
---------------------------------------------------------------------------
class RO string Class of the target path
---------------------------------------------------------------------------
instance RO uint32 Instance number of the tar-
get path
---------------------------------------------------------------------------
hw_path RO string Hardware path of the target
path
---------------------------------------------------------------------------
tport_alias RW string User friendly name assigned
to the target port of the
target path
---------------------------------------------------------------------------
auto_scan_enable RW boolean To enable/disable auto scan
of devices at target path
scope. This value over-
rides the value set at
global as well as HBA
scopes. Values: false(0)
or true(1).
---------------------------------------------------------------------------
tport_qdepth_enable RW boolean To enable/disable conges-
tion control on the target
port of the target path.
Values: false(0) or true(1).
---------------------------------------------------------------------------
tport_max_qdepth RW uint32 Maximum queue depth
assigned to the target port
of the target path. Note:
This attribute is only
valid when has been set to
true(1).
Range: 1 - 0xFFFFFFFE
---------------------------------------------------------------------------
tport_qd_dyn RW boolean To enable/disable dynamic
congestion control on the
target port of the target
path. Values: false(0) or
true(1). Note: This
attribute is only valid
when has been set to true(1).
---------------------------------------------------------------------------
max_lpt_scan RW uint32 Maximum number of lunpaths
to scan simultaneously per
target. This value over-
rides the value set at
global as well as HBA
scopes.
---------------------------------------------------------------------------
HBA state RO string State of the controller
---------------------------------------------------------------------------
device_file RO string DSF of the controller
---------------------------------------------------------------------------
class RO string Class of the controller
---------------------------------------------------------------------------
instance RO uint32 Instance of the controller
---------------------------------------------------------------------------
hw_path RO string Hardware path of the con-
troller
---------------------------------------------------------------------------
lpt_cnt RO uint32 Total number of LUN paths
for this controller
---------------------------------------------------------------------------
tp_cnt RO uint32 Total number of target
paths for this controller
---------------------------------------------------------------------------
port_id RO uint64 Controller port identifier
---------------------------------------------------------------------------
protocol RO string SCSI transport protocol
---------------------------------------------------------------------------
port_name RO binary/ Controller port name (WWN)
ascii
string
---------------------------------------------------------------------------
driver_name RO string Name of the interface
driver of the controller
---------------------------------------------------------------------------
driver_rev RO string Revision of the interface
driver managing the con-
troller
---------------------------------------------------------------------------
firmware_rev RO string Firmware revision of the
controller
---------------------------------------------------------------------------
cur_speed RO string Current configured link
speed
---------------------------------------------------------------------------
max_speed RO string Maximum link speed
---------------------------------------------------------------------------
capability RO string Capabilities of Controller.
The controller can have no
capabilities ("none") or a
combination of the follow-
ing capabilities:
boot: able to be used for
boot.
dump: able to be used for
dump.
Note: Utilizing the capa-
bilities of the controller
depends upon the support
from the SCSI devices con-
nected to the controller.
---------------------------------------------------------------------------
auto_scan_enable RW boolean To enable/disable auto scan
of devices at HBA scope.
This value overrides the
value set at global scope.
Values: false(0) or true(1).
---------------------------------------------------------------------------
max_internal_hipri RW uint32 Maximum number of inter-
nally generated high prior-
ity I/Os per controller.
This value overrides the
value set at global scope.
---------------------------------------------------------------------------
max_lpt_scan RW uint32 Maximum number of lunpaths
to scan simultaneously per
target. This value over-
rides the value set at
global scope.
---------------------------------------------------------------------------
Device Set tport_max_qdepth RW uint32 Maximum queue depth
assigned to the target port
of the target path. Note:
This attribute is only
valid when has been set to
true(1).
Range: 1 - 0xFFFFFFFE
---------------------------------------------------------------------------
tport_qdepth_enable RW boolean To enable/disable conges-
tion control on the target
port of the target path.
Values: false(0) or true(1).
---------------------------------------------------------------------------
tport_qd_dyn RW boolean To enable/disable dynamic
congestion control on the
target port of the target
path. Values: false(0) or
true(1). Note: This
attribute is only valid
when has been set to true(1).
---------------------------------------------------------------------------
Notes:
o Setting the value of attribute for a LUN, will set the queue depth for all LUN paths of the LUN to the value specified.
o The queue depth of LUN paths of a LUN can also be changed as follows:
However only affects the current value while can set the value persistently across system reboots.
o If is invoked on a persistent DSF, it only affects the current value of all LUN paths. If it is invoked on a legacy DSF, it only affects
the current value of the queue depth on the LUN path corresponding to the legacy DSF.
o If the current value is changed with the command while the LUN is not opened, this value will be lost when the LUN is opened. The value
saved or set at a higher scope with the command will be restored.
o If the value of the global attribute is changed, the new value is used for the computation of the actual maximum I/O size of a given LUN
only when one or more of these situations occurs:
o The LUN is opened the first time.
o A new LUN path is registered for the LUN.
o An existing LUN path for the LUN is deleted.
The actual maximum I/O size for a LUN is determined by whichever is the smallest of these two values:
o the attribute or
o the maximum I/O sizes reported by interface drivers on LUN paths of the LUN.
o attribute is a user friendly name also called alias, assigned to the target port of a target path. If a target port is seen through sev-
eral target paths, the target port alias can be set and displayed through any one of the target paths.
The target port alias should comply with the following rules:
o Can have alphabetical and numerical characters but should start with an alphabetical character.
o Cannot have any special characters except and
o Can have a maximum of 64 characters.
For example "XP24K_PORT0_BLD6_K42" is a valid target port alias, but "3PORT2" and "XP_24&90" are not.
o If attribute is set to 0 for a LUN path, and the I/O load balancing policy is set to for the corresponding LUN, the LUN path will not be
used for I/O transfer.
o Changes to the attribute would not affect legacy DSFs that are already open.
o Setting the value of the attribute to 1 means the number of IOs to a target port will be limited to the value of regardless of the number
of LUNs used and regardless of the attribute on the LUNs. If a target port is seen through several target paths, can be set and dis-
played through any one of the target paths. allows for higher values of on LUNs and for higher number of LUNs.
In a HP ServiceGuard environment, it is recommended that you set the same value on all servers in the cluster for a given target port.
o The attribute determines the maximum number of IOs issued to the target port. If a target port is seen through several target paths, can
be set and displayed through any one of the target paths.
Automatic distribution of target port's maximum queue depth over the servers in a HP ServiceGuard cluster may happen only if appropriate
version of HP ServiceGuard software is installed. Please refer to HP ServiceGuard release notes for more information. If automatic dis-
tribution of target port's maximum queue depth over the servers is desired, it is recommended that you set the same value on all servers
in the cluster for a given target port.
o Setting the value of the attribute to 1 means the number of IOs issued on a target path to a target port may be adjusted depending on the
demand from the incoming IO load relative to the demand on other target paths to the same target port. If a target port is seen through
several target paths, can be set and displayed through any one of the target paths.
In a HP ServiceGuard environment, it is recommended that you set the same value on all servers in the cluster for a given target port.
RETURN VALUE
exits with one of the following values:
Operation successful.
Error condition occurred.
When an error condition occurs, will display an error message specifying the nature and/or the cause of the error conditions.
However, for operations supporting scriptable output (when the option is used), no errors will be printed if the error condition only
affects one or more of the output fields. will leave the affected field(s) empty and exit with a non-zero value.
In the following example, the attribute is not a valid LUN attribute. In the displayed output, leaves the second field corresponding to
empty and exits with EFAULT(14).
EXAMPLES
To display general usage:
To display usage for command:
To figure out the SCSI object on which to invoke the command (note that is the character device special file (DSF) in this example):
Class I H/W Path Driver S/W State H/W Type Desc
=======================================================================
disk 961 64000/0xfa00/0xf9 esdisk CLAIMED DEVICE HP HSV101
/dev/disk/disk961 /dev/rdisk/disk961
To get basic global statistics:
To get all global statistics:
To display global statistics for driver
To get basic statistics for
To get statistics for legacy LUN
To get basic statistics for all LUN paths of
To get all statistics for the SCSI controller with class and instance number 1:
To get all the statistics for target path with the hardware path of
To get driver specific statistics for
To clear global statistics:
To clear statistic for the SCSI controller with class and instance number 1:
To clear statistic for all target paths of the SCSI controller with class and instance number 1:
To get basic global status and information:
To get global status information for driver
To get all status information of all the LUNs:
To get basic status information for
To get basic status information for all LUN paths of
To get all status information for the SCSI controller with class and instance number 1:
To get all status information for target path with the hardware path of
To display LUN path information for all LUNs:
To display LUN path information for
To display LUN path information for in a form that can be parsed:
To display extended information on generic global attributes:
To display driver global attributes:
To display information on attribute for
To display current values only of attributes for LUN whose class is and instance 0:
To display default values only of settable attributes for a SCSI HBA controller with DSF
To display saved values only of settable attributes for all LUNs:
To display default attribute values for devices bound to driver
To display default attributes values for all disk devices from HP bound to driver
To display current values only of specific attributes for all target paths of a SCSI HBA controller:
To display information on disk driver specific attributes for
To set current values of attributes and for all target paths to arrays from HP whose controller LUN reports a product id of "MSA CON-
TROLLER":
To set current values of attributes and for the hardware path
To set current values of attributes and for
To save value of attribute for
To save default value of attribute for
To save default value of all settable attributes for
To save default values for specific global attributes:
To add a settable attribute scope corresponding to all disk devices from HP with product identifier "ST39103FC" bound to driver Default
values for attributes can be changed for these devices:
To delete a settable attribute scope for disk devices from HP with product identifier "ST39103FC" bound to driver It will no longer be pos-
sible to modify default attributes values for these devices only:
To list settable attribute scopes registered for all drivers:
To generate a settable attribute scope covering LUN disk20 and including elements down to the product identifier:
To validate replacement of and re-assign its DSF to the replacing LUN:
To unbind all LUN paths that were associated with
To validate change of LUN associated with LUN path with class and instance number 2:
To validate change of LUN to which legacy DSF is bound to:
To force reset of LUN
To cause a warm target reset of device corresponding to
To cause a cold target reset of device corresponding to
To disable LUN path with the hardware path
To enable
To set user friendly device identifier for LUN of class and instance 7:
To get user friendly device identifier for LUN of class and instance 7:
To sync write data cache on LUN with DSF
To forcefully pre-erase the medium of the magneto-optical device with hardware path
To display standard inquiry data for LUN with DSF
To display vital product data of page 83 of LUN
To activate all LUN paths in standby state to active/optimized state for LUN with DSF
To activate all LUN paths in standby state to active/optimized state for LUN associated with the LUN path having hardware path
WARNINGS
The following actions may affect interoperability with certain devices or proper operation of the system. They should be done only by an
experienced user. HP recommends that you consult your HP support representative before performing these actions.
o Activating command) LUN paths in standby state or active non-optimized state for devices with asymmetric access.
o Adding command) or deleting command) settable attribute scopes for a driver.
o Changing attribute values or commands) at a registered settable attribute scope for a driver.
AUTHOR
was developed by Hewlett-Packard Company.
SEE ALSO
diskinfo(1M), fcmsutil(1M), io_redirect_dsf(1M), scsictl(1M), autochanger(7), intro(7), scsi(7), scsi_ctl(7), scsi_disk(7), scsi_tape(7),
scsimgr_eschgr(7), scsimgr_esdisk(7), scsimgr_estape(7), scsimgr_fcd(7).
Note: The manpage of a driver plug-in for is scsimgr_<driver_name>(7), where <driver_name> is the name of the driver. For example, see
scsimgr_esdisk(7).
scsimgr(1M)