The library comes standard with two ports (1 and 2). However, by default only port 1 is active (available). Ports 2 is unavailable until you install the redundant control paths (multi-port) hardware activation file. See the SL4000 Library Guide for more information.
The library can receive commands on an unavailable port. However, the library only fully supports the following commands on an unavailable port:
For all other commands, the library:
Terminates the command with Check Condition (02h) status
Sets the sense key to Not Ready (02h), ASC to 04h, and ASCQ to 0ch — Not Ready, Logical Unit Not Accessible, Target Port in Unavailable State
The library supports unit reserve, release, and persistent reserve commands. Host software should reserve resources whenever possible.
The library does not maintain a separate "prevent" or "allow" state for each initiator. There is a single state for all initiators. Therefore, if any initiator sends a Prevent Medium Removal command, the library locks the CAPs. If any initiator sends an Allow Media Removal command, the library unlocks the CAPs. For more information, see "Prevent/Allow Medium Removal (1Eh)".
The library supports the following reservation management methods:
Reserve and Release — defined by the ANSI SCSI-3 Primary Commands (SPC-2) Standard. See Table 2-1 for command reservation restrictions.
Persistent Reservation — defined by the ANSI SCSI-3 Primary Commands (SPC-3) Standard. See Table 2-2 for command reservation restrictions.
Table 2-1 and Table 2-2 use the following definitions:
Conflict — The library terminates the command with a Reservation Conflict (18h) status.
Allowed — The library executes the command normally.
The library returns 0 for the Compatible Reservation Handling (CRH) bit in the Persistent Reserve In (5Eh) Report Capabilities Data page.
A CRH value of 0 indicates the library processed the reserve or release command as defined in SPC-2. Therefore, the library will return a Reservation Conflict (18h) when it receives a reserve or release command from the same initiator that holds the persistent reservation.
Table 2-1 Reserve and Release Management Method Command Restrictions
Command | Action when the Library is Reserved by Another Initiator |
---|---|
Initialize Element Status (07h) |
Conflict |
Initialize Element Status w/Range (37h) |
Conflict |
Inquiry (12h) |
Allowed |
Log Sense (4Dh) |
Allowed |
Mode Select (15h/55h) |
Conflict |
Mode Sense (1Ah/5Ah) |
Conflict |
Move Medium (A5h) |
Conflict |
Persistent Reserve In (5Eh) |
Conflict |
Persistent Reserve Out (5Fh) |
Conflict |
Position to Element (2Bh) |
Conflict |
Prevent/Allow Media Removal (1Eh) |
Prevent = 0, Allowed Prevent = 1, Conflict |
Read Element Status (B8h) |
Conflict |
Release (17h) |
AllowedFoot 1 |
Report LUNs (A0h) |
Allowed |
Report Target Port Groups (A3h) |
Allowed |
Request Sense (03h) |
Allowed |
Request Volume Element Address (B5h) |
Conflict |
Reserve (16h) |
Conflict |
Send Diagnostics (1Dh) |
Conflict |
Send Volume Tag (B6h) |
Conflict |
Test Unit Ready (00h) |
Conflict |
Footnote 1 The reservation is not released.
Table 2-2 Persistent Reservation Command Restrictions when the Library is Reserved by Another Initiator
Command | Non-Registered InitiatorFoot 1 | Registered Initiator: Exclusive Access ReservationFoot 2 | Registered Initiator: Exclusive Access Registrant Only Foot 3 |
---|---|---|---|
Initialize Element Status (07h) |
Conflict |
Conflict |
Allowed |
Initialize Element Status w/Range (37h) |
Conflict |
Conflict |
Allowed |
Inquiry (12h) |
Allowed |
Allowed |
Allowed |
Log Sense (4Dh) |
Allowed |
Allowed |
Allowed |
Mode Select (15h/55h) |
Conflict |
Conflict |
Allowed |
Mode Sense (1Ah/5Ah) |
Conflict |
Conflict |
Allowed |
Move Medium (A5h) |
Conflict |
Conflict |
Allowed |
Persistent Reserve In (5Eh) |
Allowed |
Allowed |
Allowed |
Persistent Reserve Out (5Fh) - SA=Register |
Allowed |
Allowed |
Allowed |
Persistent Reserve Out (5Fh) - SA=Reserve |
Conflict |
Conflict |
Conflict |
Persistent Reserve Out (5Fh) - SA=Release |
Conflict |
AllowedFoot 4 |
AllowedFootref 4 |
Persistent Reserve Out (5Fh) - SA=Clear |
Conflict |
Allowed |
Allowed |
Persistent Reserve Out (5Fh) - SA=Preempt |
Conflict |
Allowed |
Allowed |
Persistent Reserve Out (5Fh) - SA=Preempt/Abort |
Conflict |
Allowed |
Allowed |
Persistent Reserve Out (5Fh) - SA=Register and Ignore |
Allowed |
Allowed |
Allowed |
Position to Element (2Bh) |
Conflict |
Conflict |
Allowed |
Prevent/Allow Media Removal (1Eh) Prevent = 0 |
Allowed |
Allowed |
Allowed |
Prevent/Allow Media Removal (1Eh) Prevent = 1 |
Conflict |
Conflict |
Allowed |
Read Element Status (B8h) |
Conflict |
Conflict |
Allowed |
Release (17h) |
Conflict |
Conflict |
Conflict |
Report LUNs (A0h) |
Allowed |
Allowed |
Allowed |
Report Target Port Groups (A3h) |
Allowed |
Allowed |
Allowed |
Request Sense (03h) |
Allowed |
Allowed |
Allowed |
Request Volume Element Address (B5h) |
Conflict |
Conflict |
Allowed |
Reserve (16h) |
Conflict |
Conflict |
Conflict |
Send Diagnostics (1Dh) |
Conflict |
Conflict |
Allowed |
Send Volume Tag (B6h) |
Conflict |
Conflict |
Allowed |
Test Unit Ready (00h) |
Conflict |
Conflict |
Allowed |
Footnote 1 Action when a non-registered initiator sends a command to a library reserved by another initiator.
Footnote 2 Action when a registered initiator sends a command to a library reserved by another initiator that has an Exclusive Access reservation.
Footnote 3 Action when a registered initiator sends a command to a library reserved by another initiator that has an Exclusive Access Registrant Only reservation.
Footnote 4 The reservation is not released.
When you first enable partitioning with a hardware activation file, all resources belong to the DefaultPartition. Any SCSI hosts that had access to the library before installing the activation file will automatically have access to the DefaultPartition.
You can use the SL4000 GUI to configure partitioning and SCSI host access to each partition. To grant access, you must provide the Host World Wide Port Name and a LUN. All hosts must have a connection to LUN 0. Additional LUN configuration will allow access to more than one partition. For more information, see the SL4000 Library Guide.
Example 2-1 SCSI Host Access in a Library with Two Partitions
Partition 1 could have the following host access:
Partition 2 could have the following host access:
When Host 2 sends a command on LUN 0, the library directs the commands to partition 1. When Host 2 send a command on LUN 1, the library directs the command to partition 2.
If a SCSI host sends a command to a partition it does not have access to, the library will respond with the following:
Inquiry returns Good (00h) with the Inquiry Data Peripheral Qualifer set to 001b instead of 000b.
Request Sense returns Good (00h) with the sense data set to LUN Access Not Authorized (02h/74h/71h).
Report LUNs returns Good (00h) and the Report LUNs Data reports LUN 0.
All other commands return Check Condition (02h) with the sense data set to LUN Access Not Authorized (02h/74h/71h).
For more information on sense data, see "Additional Sense Codes and Qualifiers".
In a partitioned library, you can configure CAPs as a shared resource. To use a shared CAP, the partition must "own" the CAP, which reserves exclusive use of the CAP for that partition.
Until the partition owns a CAP, the SCSI interface will report the CAP state as open (even though the CAP may actually be closed). You must use the GUI to reserve ownership of the CAP before entering or ejecting cartridges. Once you complete the CAP operation, you must unassign the CAP to make it available to other partitions (see the GUI help for procedures).
Command Handling for an Unowned, Shared CAP
The library will process commands that include any unowned CAP elements as if the CAP is open:
A Move Medium (A5h) command to or from an unowned CAP will return Check Condition (02h) status. The sense data will indicate Not Ready, CAP Open (2h/3Ah/02h).
A Read Element Status (B8h) command that includes an unowned CAP element will return Good (00h) status. The Import/Export Element descriptor data for the CAP element will return an exception condition indicating the CAP is open (Except = 1, ASC = 3Ah, and ASCQ = 02h).
Locked/Unlocked State for a Shared CAP
You can only open an unlocked CAP. The state of the CAP depends on the "prevent" or "allow" medium removal state. For more information, see "Prevent/Allow Medium Removal (1Eh)".
Example 2-2 Shared CAP Locked/Unlocked State for a Library with Two Partitions
CAP Assignment | Partition 1 Prevent/Allow Removal State | Partition 2 Prevent/Allow Media Removal State | CAP State |
---|---|---|---|
Unassigned | Maintained by the library | Maintained by the library | Locked |
Assigned to Partition 1 | Allowed | Maintained by the library | Unlocked |
Assigned to Partition 1 | Prevented | Maintained by the library | Locked |
Assigned to Partition 2 | Maintained by the library | Allowed | Unlocked |
Assigned to Partition 2 | Maintained by the library | Prevented | Locked |
The SCSI element address depends on the element type. Each library or partition uses a fixed starting address for each element type. Then, within each element type, the element addresses are sequential.
Element Type | Starting SCSI Element Address |
---|---|
Medium Transport Element (Robot) | 0 |
Import/Export Elements (CAPs and AEMs) | 10 |
Data Transfer Elements (Drives and Empty Drive Slots) | 1000 |
Storage Elements (Cartridge Cells) | 2000 |
You can use the GUI to view the element ID for a particular cell in the library (see SL4000 Library Guide).
Unlike the SL3000, the SL4000 library assigns a SCSI element address to empty drive slots. Therefore, removing or adding a drive tray will not cause the library to renumber the data transfer element addresses.
If you send a Read Element Status (B8h) command for an empty drive slot, the library will return an Element Descriptor with the slot marked as disabled with an exception. The library sets the ASC/ASCQ to 3Bh/1Ah indicating an empty drive slot.