By default, a host is not allowed to place a PGR on a device. You need to explicitly set a flag on a device for it to accept PGR reservations. That flag is the "SCSI3_persist_reserv" flag, also known as the "PER flag" or the "PGR flag". Whether this flag is enabled on a device is visible in the output of "symdev show" on that device. Look for the line containing: "SCSI-3 Persistent Reserve". Without this flag, it's not possible to place a SCSI persistent reservation on the device.
When looking at the SCSI standards however, there are two types of SCSI reservations, not three:
- Reservations managed by the RESERVE and RELEASE SCSI commands. These commands are deprecated in the newest SCSI standards, but they are still very widely used. I'll call these "old style" reservations.
- Reservations managed by the PERSISTENT RESERVE IN and PERSISTENT RESERVE OUT SCSI commands. These commands allow for more control over reservations, and offer more possibilities. I'll call these "new style" reservations. They are to eventually replace old style reservations, but at the moment they are not that widely used. A Symmetrix device will only accept these commands when the "SCSI3_persist_reserv" flag is enabled for the particular device.
What Solutions Enabler calls "Exclusive" reservations, are old style reservations. These are visible with the command "symdev -sid xxx list -resv". "PGR" reservations are new style reservations. These are visible with the command "symdev -sid xxx list -pgr".(*)
It turns out there's some trickery involved regarding "Group" reservations. Old style reservations only allow for one initiator to reserve access to a device, and as you can imagine this is problematic in a multipath environment with multiple initiators. To solve this, when a host places an old style reservation on a device that is multipathed by PowerPath, PowerPath will translate this old style reservation to a new style reservation on the fly. In other words: PowerPath will translate RESERVE/RELEASE commands to PERSISTENT RESERVE IN/PERSISTENT RESERVE OUT commands on the fly. These translated commands result in "Group" reservations. These translated PERSISTENT RESERVE IN/OUT commands work irrespective of whether the flag SCSI3_persist_reserv is enabled for the device or not.
Apparently, PowerPath has some sort of "special handshake" with the Symmetrix, so it can use new style reservations even though these aren't enabled. (My guess would be that PowerPath uses a well known reservation key.) The Symmetrix recognizes when a new style reservation is placed by PowerPath, and will always allow these. The resulting reservation is called a "Group" reservation. Any other (non-PowerPath) use of the new style reservation commands results in a normal PGR, but only when the PGR-flag is enabled.
(*) Depending on your microcode and software versions, displaying reservations can sometimes be a bit erratic. If you encounter unexpected results, be sure to consult the EMC knowledgebase on Powerlink.