I'm sponsoring the following fasttrack for Jim Dunham. Requested binding is Patch. I believe this case qualifies for self-review. If anyone disagrees, I'll convert it and set the timer.
- John Template Version: @(#)sac_nextcase 1.68 02/23/09 SMI This information is Copyright 2009 Sun Microsystems 1. Introduction 1.1. Project/Component Working Name: iSCSI Target Daemon's SCSI-3 PGR data needs to follow ZVOLs 1.2. Name of Document Author/Supplier: James Dunham 1.3. Date of This Document: 03/10/09 2. Project Summary 2.1. Project Description: SCSI-3 PGR (Persistent Group Reservation) data must follow the ZVOL that is the backing store for the SCSI-3 LUN. Since ZVOLs are exportable from one host, importable on another host, PGR data must follow. The effort provides a single SCF option to support a PGR_basedir, a directory which has the means to follow a ZFS Storage Pool mount point, as it is exported and imported between nodes. 2.2. Risks and Assumptions: SCSI-3 PGR data in clustered storage nodes, consisting of two or more nodes, need to assured this SCF entry is consistent set between nodes. 3. Business Summary N/A 4. Technical Description: 4.1. Details: The current iSCSI Target Daemon stores SCSI-3 PGR data to the directory /etc/iscsi. This 'pins' the PGR data to a single Solaris host, even though a ZVOL or ZVOLs can be exported from the current node, imported on another node. There is no room in the ZVOL itself, as the iSCSI Client own 100% of the blocks in a ZVOL. There is little remaining space in the 'iscsi-options' ZVOL property, as other iSCSI properties consume ~1000 bytes, of a 2K limit, and PGR data can be 1000s or 10,000s of bytes in size, depending on the number of nodes in a clustering solution. The solution is to provide a PGR base directory, specified in the iSCSI Target Daemon's SCF data. svccfg -s iscsitgt setprop iscsitgt/PGR-basedir = \ astring: "<some ZVOL related pathname>" 4.1.1 Interfaces iscsitgt/PGR-basedir The PGR base directory is a pathname specification that contains one or more ZFS filesystem mount points, a filesystem which contains one or more ZVOLs, ZVOLS which have the following property set: zfs set shareiscsi={on|off} <pool-name>/<zvol-name> 4.2. Bug/RFE Number(s): 6794624 SCSI-3 PGR data for LUs whose backing store is a ZVOL, need to persist data in a ZVOL attributes 4.3. In Scope: For OpenSolaris single node, not setting the SCF property will retain current behavior, of storing SCSI-3 PGR in /etc/iscsi For OpenSolaris multinode, setting the SCF property to a "/", or some other ZFS mount point, will provide a default, or alternate means for a ZFS storage pool filesystem mount point to be set. 4.4. Out of Scope: This functionality has no impact on COMSTAR or its support of SCSI-3 PGR 4.5. Interfaces: svccfg(1m) ? service configuration facility l libscf(3LIB) ? service configuration facility library (man pages ... 4.6. Doc Impact: The iSCSI Target man page will be updataed to document this functionality. 6815596 iscsitgtd(1M) needs to be updated to cover PGR base directory option. 4.7. Admin/Config Impact: Awareness of this setting, and how it relates SCSI-3 PGR data and ZVOLs 4.8. HA Impact: For OpenSolaris, this setting will allow SCSI-3 PGR data to follow ZVOLs and their storage pools 4.9. I18N/L10N Impact: N/A 4.10. Packaging & Delivery: Part of SUNWiscsitgt 4.11. Security Impact: iSCSI Target Daemon is a root privileged Solaris Daemon 4.12. Dependencies: The changes are all project private 5. Reference Documents: 6794624 SCSI-3 PGR data for LUs whose backing store is a ZVOL, need to persist data in a ZVOL attributes 6. Resources and Schedule: 6.1. Projected Availability: ASAP 6.2. Cost of Effort: 1 week 6.3. Cost of Capital Resources: N/A 6.4. Product Approval Committee requested information: 6.4.1. Consolidation or Component Name: ON 6.4.3. Type of CPT Review and Approval expected: BugFix or RFE 6.4.4. Project Boundary Conditions: N/A 6.4.5. Is this a necessary project for OEM agreements: No 6.4.6. Notes: 6.4.7. Target RTI Date/Release: SNV_111 6.4.8. Target Code Design Review Date: 03/04/09 6.4.9. Update approval addition: N/A 6.5. ARC review type: SelfReview 6.6. ARC Exposure: open 6.6.1. Rationale: 7. Prototype Availability: 7.1. Prototype Availability: N/A 7.2. Prototype Cost: N/A