Patent ID: 8639856
Filing Date: 2014-01-28
Classification: G06F

Abstract:
1. A computer program product for determining reservation status information for a logical unit number (LUN), the computer program product comprising: one or more computer-readable, tangible storage devices; program instructions, stored on at least one of the one or more computer-readable, tangible storage devices, to transmit a first persistent reservation in command with a read reservation to a first LUN, wherein a host is connected to a port of a data storage server to which the first LUN belongs; program instructions, stored on at least one of the one or more computer-readable, tangible storage devices, to receive a message from the first LUN; program instructions, stored on at least one of the one or more computer-readable, tangible storage devices, to determine that the message is a success message; program instructions, stored on at least one of the one or more computer-readable, tangible storage devices, to send to the first LUN the a second persistent reservation in command with read keys, responsive to a determination that the message is the success message; program instructions, stored on at least one of the one or more computer-readable, tangible storage devices, to determine that the first LUN responds with a message containing an additional length field set to zero; program instructions, stored on at least one of the one or more computer-readable, tangible storage devices, to send a Small Computer System Interface (SCSI) command test unit ready to the first LUN, responsive to a determination that the first LUN responds with the message containing an additional length field set to zero, wherein the SCSI command test unit ready is a message having a command descriptor block set to zero; program instructions, stored on at least one of the one or more computer-readable, tangible storage devices, to determine that the SCSI command test unit ready (TUR) succeeds; program instructions, stored on at least one of the one or more computer-readable, tangible storage devices, to verify a reservation policy attribute of the first LUN, responsive to a determination that the SCSI command TUR succeeds; program instructions, stored on at least one of the one or more computer-readable, tangible storage devices, to identify the first LUN as reserved with a type 1 reservation by the host, responsive to a determination that the reservation policy is a type 1 reservation; program instructions, stored on at least one of the one or more computer-readable, tangible storage devices, to transmit a third persistent reservation in command with read keys to a second LUN, wherein the host is connected to a port of the data storage server of the second LUN; program instructions, stored on at least one of the one or more computer-readable, tangible storage devices, to determine that the second LUN responds with a message containing an additional length field not set to zero; and program instructions, stored on at least one of the one or more computer-readable, tangible storage devices, to identify the second LUN as reserved with a type 2 reservation by the host simultaneously with the first LUN being reserved with the type 1 reservation, responsive to determining that the second LUN responds with a message containing an additional length field not set to zero, wherein the second LUN is configured to respond to persistent reservation in commands without a SCSI error and a SCSI status of a reservation conflict, and the first LUN is configured not to respond to persistent reservation in commands without a SCSI error and a SCSI status of a reservation conflict.