|
@@ -474,6 +474,13 @@ static int alua_check_sense(struct scsi_device *sdev,
|
|
* LUN Not Ready -- Offline
|
|
* LUN Not Ready -- Offline
|
|
*/
|
|
*/
|
|
return SUCCESS;
|
|
return SUCCESS;
|
|
|
|
+ if (sdev->allow_restart &&
|
|
|
|
+ sense_hdr->asc == 0x04 && sense_hdr->ascq == 0x02)
|
|
|
|
+ /*
|
|
|
|
+ * if the device is not started, we need to wake
|
|
|
|
+ * the error handler to start the motor
|
|
|
|
+ */
|
|
|
|
+ return FAILED;
|
|
break;
|
|
break;
|
|
case UNIT_ATTENTION:
|
|
case UNIT_ATTENTION:
|
|
if (sense_hdr->asc == 0x29 && sense_hdr->ascq == 0x00)
|
|
if (sense_hdr->asc == 0x29 && sense_hdr->ascq == 0x00)
|