[an error occurred while processing this directive]

HP OpenVMS Systems Documentation

Content starts here

HP OpenVMS System Management Utilities Reference Manual


Previous Contents Index

IO CONNECT (Alpha and I64)

On Alpha and I64 systems, connects a hardware device and loads its driver, if the driver is not already loaded.

On VAX systems, use the SYSGEN command CONNECT.

You must have CMKRNL and SYSLCK privileges to use the SYSMAN IO CONNECT command.

Note

Be very careful when issuing a SYSMAN IO CONNECT command because the system does little error-checking. A misspelled device name, for example, will damage the I/O database and could cause the system to fail.

Format

IO CONNECT device-name[:]


Parameter

device-name[:]

Specifies the name of the hardware device to be connected. The device name requires the following format:
device-type controller unit-number

For example, in the designation LPA0, LP is a line printer on controller A at unit number 0. If you use the /NOADAPTER qualifier, the device is the software to be loaded.


Qualifiers

/ADAPTER=tr_number
/NOADAPTER (default)

Specifies the nexus number of the adapter to which the specified device is connected. It is a nonnegative 32-bit integer. The /NOADAPTER qualifier indicates that the device is not associated with any particular hardware. The /NOADAPTER qualifier is compatible with the /DRIVER_NAME qualifier only.

/CSR=csr_address

Specifies the CSR address for the device being configured. This address must be specified in hexadecimal. You must precede the CSR address with %X. The CSR address is a quadword value that is loaded into IDB$Q_CSR without any interpretation by SYSMAN. This address can be physical or virtual, depending on the specific device being connected:
  • /CSR=%X3A0140120 for a physical address
  • /CSR=%XFFFFFFFF807F8000 for a virtual address (the sign extension is required for Alpha and I64 virtual addresses)

This qualifier is required if /ADAPTER=tr_number is specified.

/DRIVER_NAME=filespec

Specifies the name of the device driver that you are loading. If you do not specify this qualifier, SYSMAN obtains the default in the same way that the SYSGEN default name is determined. For example, if you want to load the HP-supplied SYS$ELDRIVER.EXE, the prefix SYS$ must be present. Without the SYS$, SYSMAN looks for ELDRIVER.EXE in SYS$LOADABLE_IMAGES. This implementation separates the user device driver namespace from the HP-supplied device driver namespace.

/LOG=(ALL,CRB,DDB,DPT,IDB,SB,UCB)
/NOLOG (default)

Controls whether SYSMAN displays the addresses of the specified control blocks. The default value for the /LOG qualifier is /LOG=ALL. If /LOG=UCB is specified, a message similar to the following one is displayed:


%SYSMAN-I-IOADDRESS, the UCB is located at address 805AB000

/MAX_UNITS=maximum-number-of-units

Specifies the maximum number of units the driver can support. The default is specified in the driver prologue table (DPT) of the driver. If the number is not specified in the DPT, the default is 8. This number must be greater than or equal to the number of units specified by /NUM_UNITS. This qualifier is optional.

/NUM_UNITS=number-of-units

Specifies the number of units to be created. The starting device number is the number specified in the device name parameter. For example, the first device in DKA0 is 0. Subsequent devices are numbered sequentially. The default is 1. This qualifier is optional.

/NUM_VEC=vector-count

Specifies the number of vectors for this device. The default vector count is 1. The /NUM_VEC qualifier is optional. This qualifier should be used only when using the /VECTOR_SPACING qualifier. When using the /NUM_VEC qualifier, you must also use the /VECTOR qualifier to supply the base vector.

/SYS_ID=number-of-remote-system

Indicates the SCS system ID of the remote system to which the device is to be connected. It is a 64-bit integer; you must specify the remote system number in hexadecimal. The default is the local system. This qualifier is optional.

/VECTOR=(vector-address,...)

Specifies the interrupt vectors for the device or lowest vector. This is either a byte offset into the SCB of the interrupt vector for directly vectored interrupts or a byte offset into the ADP vector table for indirectly vectored interrupts. The values must be longword aligned. To specify the vector address in octal or hexadecimal, precede the address with %O or %X, respectively. The /VECTOR qualifier is required when you use the /ADAPTER=tr_number qualifier or the /NUM_VEC=vector-count qualifier. You can list up to 64 vectors.

/VECTOR_SPACING=number-of-bytes-between-vectors

Specifies the spacing between vectors. Specify the amount as a multiple of 16 bytes. The default is 16. You must specify both the base vector with /VECTOR and the number of vectors with /NUM_VEC. This qualifier is optional.

Description

The SYSMAN IO CONNECT command connects a hardware device and loads its driver, if the driver is not already loaded. VAX system managers use the SYSGEN command CONNECT. You must have CMKRNL and SYSLCK privileges to use the SYSMAN IO CONNECT command.

The chapter "Managing Peripheral Devices" in the HP OpenVMS System Manager's Manual contains information about file-based device configuration support.


Examples

#1

SYSMAN> IO CONNECT DKA0:/DRIVER_NAME=SYS$DKDRIVER/CSR=%X80AD00-
/ADAPTER=4/NUM_VEC=3/VECTOR_SPACING=%X10/VECTOR=%XA20/LOG

%SYSMAN-I-IOADDRESS, the CRB is located at address 805AEC40
%SYSMAN-I-IOADDRESS, the DDB is located at address 805AA740
%SYSMAN-I-IOADDRESS, the DPT is located at address 80D2A000
%SYSMAN-I-IOADDRESS, the IDB is located at address 805AEE80
%SYSMAN-I-IOADDRESS, the SB is located at address 80417F80
%SYSMAN-I-IOADDRESS, the UCB is located at address 805B68C0
      

The command in this example connects device DKA0, loads driver SYS$DKDRIVER, and specifies the following data:

Physical CSR address
Adapter number
Number of vectors
Spacing between vectors
Interrupt vector address

The /LOG qualifier displays the addresses of all control blocks, as shown.

#2

SYSMAN> IO CONNECT DKA0:/DRIVER_NAME=SYS$DKDRIVER/CSR=%X80AD00-
/ADAPTER=4/VECTOR=(%XA20,%XA30,%XA40)/LOG=(CRB,DPT,UCB)

%SYSMAN-I-IOADDRESS, the CRB is located at address 805AEC40
%SYSMAN-I-IOADDRESS, the DPT is located at address 80D2A000
%SYSMAN-I-IOADDRESS, the UCB is located at address 805B68C0

      

The command in this example connects device DKA0, loads driver SYS$DKDRIVER, and specifies the following data:

Physical CSR address
Adapter number
Addresses for interrupt vectors

The /LOG qualifier displays the addresses of the channel request block (CRB), the driver prologue table (DPT), and the unit control block (UCB).

#3

SYSMAN> IO CONNECT FTA0:/DRIVER=SYS$FTDRIVER/NOADAPTER/LOG=(ALL)

%SYSMAN-I-IOADDRESS, the CRB is located at address 805AEC40
%SYSMAN-I-IOADDRESS, the DDB is located at address 805AA740
%SYSMAN-I-IOADDRESS, the DPT is located at address 80D2A000
%SYSMAN-I-IOADDRESS, the IDB is located at address 805AEE80
%SYSMAN-I-IOADDRESS, the SB is located at address 80417F80
%SYSMAN-I-IOADDRESS, the UCB is located at address 805B68C0

      

The command in this example connects pseudoterminal FTA0, loads driver SYS$FTDRIVER, and uses the /NOADAPTER qualifier to indicate that FTA0 is not an actual hardware device. The /LOG=(ALL) qualifier displays the addresses of all control blocks, as shown.

For more information about loading and configuring device drivers, refer to Writing OpenVMS Alpha Device Drivers in C (Margie Sherlock and Leonard S. Szubowicz, Digital Press, 1996).

IO CREATE_WWID (Alpha and I64)

Assigns a specific, previously unused device name to a specific, previously unused worldwide identifier (WWID) from the SYSMAN IO LIST_WWID display.

HP recommends that you execute this command clusterwide and that you follow the command with a SYSMAN IO AUTOCONFIGURE command to actually configure the device.


Format

IO CREATE_WWID devnam_string/WWID=wwid_string


Parameter

devnam_string

Specifies a device-name string. The string must be in the form $2$MGAn, where n is less than 9999.

Qualifier

/WWID=wwid_string

Specifies a WWID string that comes directly from a SYSMAN IO LIST_WWID display.

This qualifier is required.


Description

This command is an alternative to the SYSMAN IO FIND_WWID command, which selects system-generated device names for the discovered WWIDs. Do not, however, use the SYSMAN IO CREATE_WWID command after the SYSMAN IO FIND_WWID command to redefine WWID correlations. Also, do not specify device and WWID strings in the SYSMAN IO CREATE_WWID command that are specified elsewhere in the cluster.

Example


SYSMAN> SET ENVIRONMENT/CLUSTER
SYSMAN> IO CREATE_WWID $2$MGA5/WWID=04100022:"DEC TZ89 (C) DECCX939S2777"
SYSMAN> IO CREATE_WWID $2$MGA3/WWID=02000008:500E-09E0-0005-30D7
SYSMAN> IO AUTOCONFIGURE
      

The commands in this example create two device names, $2$MGA5 and $2$MGA3, and configure the devices.

IO FIND_WWID (Alpha and I64)

The SYSMAN IO FIND_WWID command probes all Fibre Channel ports, detects all previously undiscovered tapes and medium changers behind a Network Storage Router (NSR) or a Modular Data Router (MDR), and assigns a worldwide identifier (WWID) to each one.

The command also displays a list of the devices and their assigned device names and automatically records this information in the SYS$SYSTEM:SYS$DEVICES.DAT file. Finally, the command updates relevant local and clusterwide memory structures.

To configure newly attached Fibre Channel tapes, use this command prior to running the SYSMAN command IO AUTOCONFIGURE.

You must have CMKRNL privilege to use the SYSMAN IO FIND_WWID command.

For more information about Fibre Channel, see the Guidelines for OpenVMS Cluster Configurations.


Format

IO FIND_WWID


Description

Prior to configuring a tape device on Fibre Channel ports, the worldwide identifier (WWID) of the device must be detected and stored, along with a device name, in the text file SYS$SYSTEM:SYS$DEVICES.DAT. You use the SYSMAN command IO FIND_WWID to accomplish this.

The SYSMAN IO FIND_WWID command probes all Fibre Channel ports and locates all tape and medium changer devices. For tapes and medium changers that have not been detected by any previous SYSMAN IO FIND_WWID command, IO FIND_WWID assigns a device name, retrieves the WWID of the device, stores the device name and WWID data in the SYS$SYSTEM:SYS$DEVICES.DAT file, and updates memory structures.

Because the main goal of SYSMAN IO FIND_WWID is to populate the SYS$DEVICES.DAT file, you need to invoke the SYSMAN IO FIND_WWID command only one time for each new device. Note that using the SYSMAN IO FIND_WWID command for the first time detects all existing tape and medium changer devices on the system at that time.

Once the information is stored in the file, subsequent use of the SYSMAN IO AUTOCONFIGURE command reads the file and configures the tape and medium changer devices automatically, loading or connecting the device drivers as needed. The SYS$DEVICES.DAT file is read during each system reboot, initiating the automatic configuration of tapes and medium changers on the Fibre Channel. (SYSMAN IO FIND_WWID does not load or connect the actual device drivers.)

Note

If you add more devices to the system at a later time, you must powercycle the MDR to update internal mapping information. You must also run the SYSMAN IO FIND_WWID command again to append the new device information to the SYS$DEVICES.DAT file.

Similarly, for the Network Storage Router (NSR), the LUN map must be updated.

In an OpenVMS cluster environment, you must run the SYSMAN IO FIND_WWID command on each node in the cluster to update various data structures in memory. Alternatively, you can run SYSMAN IO FIND_WWID on one node, and then reboot the other nodes that share that same system disk, because the SYS$DEVICES.DAT file is read at boot time and causes memory structures to be correctly initialized.

In the case of multiple system disks in the cluster, ensure that all copies of the SYS$DEVICES.DAT file are kept consistent, preferably by running the SYSMAN IO FIND_WWID command on all nodes. Alternatively, you can run IO FIND_WWID to update just one SYS$DEVICES.DAT file, and then manually edit the remaining SYS$DEVICES.DAT files by cutting and pasting the appropriate devnam/WWID records from the original file to the target files.

HP recommends that you refrain from copying the entire original file to another system disk, because the SYS$DEVICES.DAT file is also used to define Port Allocation Classes, and PAC entries could be inadvertently transferred to the target system.


Example


SYSMAN> IO FIND_WWID
%SYSMAN-I-OUTPUT, command execution on node SAMPLE
On port _SAMPLE$PGA0:, the following tape WWIDs and their proposed
device names have been found but not yet configured:

      [Device $2$GGA0]
      WWID=04100024:"DEC     TL800    (C) DEC3G9CCR82A017"

      [Device $2$MGA0]
      WWID=04100022:"DEC     TZ89     (C) DECCX939S2777"

      [Device $2$MGA1]
      WWID=04100022:"DEC     TZ89     (C) DECCX942S6295"

      

This is a configuration example using a TL891 tape library. The SYSMAN command IO FIND_WWID displays a list of all previously undiscovered tape devices and their device names.

Note that the overall WWID consists of everything to the right of the equal sign. Each such WWID is unique; however, the header portion might not be unique, because the header reflects only the basic type and length of the the WWID data.

The SYSMAN IO FIND_WWID command automatically records the information about the new tape devices in SYS$SYSTEM:SYS$DEVICES.DAT:


$ TYPE SYS$SYSTEM:SYS$DEVICES.DAT
!
! Updated 23-OCT-2002 14:17:41.85:  DEC TL800
!
[Device $2$GGA0]
WWID=04100024:"DEC     TL800    (C) DEC3G9CCR82A017"
!
!
! Updated 23-OCT-2002 14:17:41.93:  DEC TZ89
!
[Device $2$MGA0]
WWID=04100022:"DEC     TZ89     (C) DECCX939S2777"
!
!
! Updated 23-OCT-2002 14:17:42.01:  DEC TZ89
!
[Device $2$MGA1]
WWID=04100022:"DEC     TZ89     (C) DECCX942S6295"
!

You would then use the SYSMAN command IO CONFIGURE to configure these devices. After you completed this step, the SHOW DEVICE/FULL command would display the worldwide identifier of the tape.

IO LIST_WWID (Alpha and I64)

Applies only to tape devices on Fibre Channel. Lists all tape device WWIDs that are not yet configured on Fibre Channel.

You can use the output of this command as input to the SYSMAN IO CREATE_WWID and SYSMAN IO REPLACE_WWID commands.


Format

IO LIST_WWID


Example


SYSMAN> IO LIST_WWID
%SYSMAN-I-OUTPUT, command execution on node ROCKY

On port _ROCKY$PGA0:, the following tape WWIDs are not yet configured:

Target 3, LUN 1, COMPAQ   SuperDLT1
WWID=02000008:500E-09E0-0005-30D7

Target 3, LUN 3, COMPAQ   SDX-500C
WWID=0C000008:0800-4606-C00D-473F

Target 4, LUN 1, COMPAQ   SuperDLT1
WWID=02000008:500E-09E0-0005-30D7

Target 4, LUN 3, COMPAQ   SDX-500C
WWID=0C000008:0800-4606-C00D-473F

      

In this example, each drive is listed twice because the tape bridge is dual-ported, with one FC port at target 3 and the other FC port at target 4.

IO LOAD (Alpha and I64)

On Alpha and I64 systems, loads an I/O driver.

On VAX systems, use the SYSGEN command LOAD.

You must have CMKRNL and SYSLCK privileges to use the SYSMAN IO LOAD command.

Note

Be very careful when issuing a SYSMAN IO LOAD command because the system does little error-checking.

Format

IO LOAD filespec


Parameter

filespec

Specifies the file name of the driver to be loaded. This parameter is required.

Qualifier

/LOG=(ALL,DPT)

Controls whether SYSMAN displays information about drivers that have been loaded. The default value for the /LOG qualifier is /LOG=ALL. The driver prologue table (DPT) address is displayed when either /LOG=DPT or /LOG=ALL is specified.

Description

The SYSMAN IO LOAD command loads an I/O driver. VAX system managers use the SYSGEN command LOAD. You must have CMKRNL and SYSLCK privileges to use the SYSMAN IO LOAD command.

Example


SYSMAN> IO LOAD/LOG SYS$DKDRIVER
%SYSMAN-I-IOADDRESS, the DPT is located at address 80D5A000
      

This example loads device SYS$DKDRIVER and displays the address of the driver prologue table (DPT).

IO REBUILD (Alpha and I64)

On Alpha and I64 systems, rebuilds device configuration tables in preparation for using the SYSMAN IO AUTOCONFIGURE command to reconfigure the system.

You must have CMKRNL privilege to use the SYSMAN IO REBUILD command.


Format

IO REBUILD


Parameters

None.

Qualifier

/VERIFY

Causes SYSMAN to read and process the files SYS$SYSTEM:SYS$USER_CONFIG.DAT and SYS$SYSTEM:CONFIG.DAT, but not to apply the files to the I/O database. Messages will be displayed for any errors that are encountered. This command can be used by developers to test new changes to SYS$SYSTEM:SYS$USER_CONFIG.DAT without modifying the current system.

Description

The SYSMAN IO REBUILD command rebuilds the system's device configuration tables by reading and parsing the SYS$SYSTEM:SYS$USER_CONFIG.DAT and SYS$SYSTEM:SYS$CONFIG.DAT files.

To debug modifications to the SYS$SYSTEM:SYS$USER_CONFIG.DAT file, you can use the SYSMAN IO REBUILD and SYSMAN IO AUTOCONFIGURE commands to load drivers without having to reboot. Once you load a driver for an adapter, however, you cannot reload it without rebooting the system.


Example


SYSMAN> IO REBUILD
SYSMAN> IO AUTOCONFIGURE

      

The first command in this example rebuilds device configuration tables. The second command reads the device configuration tables and loads drivers for newly defined drivers.

IO REPLACE_WWID (Alpha and I64)

This command allows a user to replace one tape drive behind a Network Storage Router (NSR) with another tape drive at the same Fibre Channel (FC) Logical Unit Number (LUN) location.

This command updates all the necessary file and memory data structures with the WWID of the new tape drive. The name of the replacement drive will be the same as the name of the original drive.

This command is primarily intended to be used when a hardware problem occurs on a tape drive, and a replacement drive must installed in its place.

The command requires CMKRNL privilege. It applies only to FC tapes behind a Fibre Channel tape bridge such as an NSR or MDR (Modular Data Router).

For more information about Fibre Channel, see the Guidelines for OpenVMS Cluster Configurations.


Format

IO REPLACE_WWID devnam_string/WWID=wwid_string


Parameter

devnam_string

Specifies a tape device name.

Qualifier

/WWID=wwid_string

Specifies a string that comes directly from a SYSMAN IO LIST_WWID display. The use of this qualifier is appropriate only under the circumstances explained in the description below.

Description

You can use the two parameters, devnam_string and wwid_string, with the REPLACE_WWID command to replace a broken tape device with a new device. The command automatically updates the data structures that record the new devnam-WWID correlation, and the device automiatically begins to function correctly.

This command is useful in two different cases:

  • In one case, the drive might malfunction and need to be replaced immediately without rebooting the system. If this happens, the drive is physically replaced with a new drive, and the command SYSMAN IO REPLACE_WWID $2$MGAn is issued clusterwide. The /WWID qualifier is not appropriate in this case, because the new WWID is automatically detected using information stored in the device's data structures.
  • In the other case, the drive might malfunction and not be replaced until after the system has been shut down or rebooted. The device name no longer appears in the SHOW DEVICE display because the device failed to configure during the reboot.
    The configuration failure occurred either because the broken drive did not respond, or because the new drive has a different WWID from the one SYSMAN IO AUTOCONFIGURE expected at boot time. Therefore, in this situation, in which the device name is in SYS$DEVICES.DAT but not in the SHOW DEVICE display, use the /WWID qualifier to define the new devnam-WWID correlation.
    Follow these steps clusterwide:
    1. Execute the SYSMAN IO LIST_WWID command to display the new WWID.
    2. Use the command SYSMAN IO REPLACE_WWID $2$MGAn/WWID=new_wwid to define the new correlation.
    3. Use the SYSMAN IO AUTOCONFIGURE command to configure the device.

When you use the SYSMAN IO LIST_WWID command, keep in mind that:

  • You must set the replacement device to the same SCSI target ID as the original device.
  • You must stop all activity on the device before issuing the SYSMAN IO REPLACE_WWID command.
  • The command requires CMKRNL privilege and applies only to FC tapes behind an NSR or MDR.

Example


SYSMAN> SET ENVIRONMENT/CLUSTER
SYSMAN> IO REPLACE_WWID $2$MGA3/WWID=02000008:500E-09E0-0005-30D7
SYSMAN> IO AUTOCONFIGURE
      

In this example, the device named $2$MGA3 malfunctioned and was replaced while the system was down. Upon reboot, the drive did not get configured, because its new WWID did not match the WWID that OpenVMS expected. Therefore, the user redefines the devnam-WWID correlation and is then able to configure $2$MGA3 correctly. The specified WWID comes from the output of the SYSMAN IO LIST_WWID command.


Previous Next Contents Index