public inbox for linux-scsi@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH]scsi_dh_rdac: Retry for NOT_READY check condition (0x02A102, 0x020401, 0x020404 and  0x020407) in rdac_check_sense
@ 2009-03-10 13:00 Chauhan, Vijay
  2009-03-10 15:26 ` Hannes Reinecke
  2009-03-10 15:46 ` James Bottomley
  0 siblings, 2 replies; 5+ messages in thread
From: Chauhan, Vijay @ 2009-03-10 13:00 UTC (permalink / raw)
  To: 'sekharan@us.ibm.com', linux-scsi@vger.kernel.org
  Cc: 'dm-devel@redhat.com'

This patch adds retry for NOT_READY check conditions(02/A1/02, 02/04/01, 02/04/04,
02/04/07) in rdac_check_sense.

Signed-off-by: Vijay Chauhan<vijay.chauhan@lsi.com>

---
--- linux-2.6.29-rc7/drivers/scsi/device_handler/scsi_dh_rdac.c.orig	2009-03-10 17:42:27.000000000 +0530
+++ linux-2.6.29-rc7/drivers/scsi/device_handler/scsi_dh_rdac.c	2009-03-10 18:05:35.000000000 +0530
@@ -562,6 +562,30 @@ static int rdac_check_sense(struct scsi_
 			 * Just retry and wait.
 			 */
 			return ADD_TO_MLQUEUE;
+		if (sense_hdr->asc == 0xA1  && sense_hdr->ascq == 0x02)
+			/* LUN Not Ready - Quiescense in progress
+			 * or has been achieved
+			 * Just retry.
+			 */
+			return ADD_TO_MLQUEUE;
+		if (sense_hdr->asc == 0x04 && sense_hdr->ascq == 0x01)
+			/* LUN Not Ready - Logical Unit Not Ready and is in
+			 * the process of becoming ready
+			 * Just retry.
+			 */
+			return ADD_TO_MLQUEUE;
+		if (sense_hdr->asc == 0x04 && sense_hdr->ascq == 0x04)
+			/* LUN Not Ready - Format In Progress
+			 *
+			 * Just retry.
+			 */
+			return ADD_TO_MLQUEUE;
+		if (sense_hdr->asc == 0x04  && sense_hdr->ascq == 0x07)
+			/* LUN Not Ready - Storage controller cannot respond
+			 * immediately to a PRIN or PROUT command.
+			 * Just retry.
+			 */
+			return ADD_TO_MLQUEUE;
 		break;
 	case ILLEGAL_REQUEST:
 		if (sense_hdr->asc == 0x94 && sense_hdr->ascq == 0x01) {

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH]scsi_dh_rdac: Retry for NOT_READY check condition (0x02A102, 0x020401, 0x020404 and  0x020407) in rdac_check_sense
  2009-03-10 13:00 [PATCH]scsi_dh_rdac: Retry for NOT_READY check condition (0x02A102, 0x020401, 0x020404 and 0x020407) in rdac_check_sense Chauhan, Vijay
@ 2009-03-10 15:26 ` Hannes Reinecke
  2009-03-10 15:46 ` James Bottomley
  1 sibling, 0 replies; 5+ messages in thread
From: Hannes Reinecke @ 2009-03-10 15:26 UTC (permalink / raw)
  To: Chauhan, Vijay; +Cc: linux-scsi@vger.kernel.org, dm-devel@redhat.com

Chauhan, Vijay wrote:
> This patch adds retry for NOT_READY check conditions(02/A1/02, 02/04/01, 02/04/04,
> 02/04/07) in rdac_check_sense.
> 
> Signed-off-by: Vijay Chauhan<vijay.chauhan@lsi.com>
> 
Signed-off-by: Hannes Reinecke <hare@suse.de>

Cheers,

Hannes
-- 
Dr. Hannes Reinecke		      zSeries & Storage
hare@suse.de			      +49 911 74053 688
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg
GF: Markus Rex, HRB 16746 (AG Nürnberg)
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH]scsi_dh_rdac: Retry for NOT_READY check condition (0x02A102, 0x020401, 0x020404 and  0x020407) in rdac_check_sense
  2009-03-10 13:00 [PATCH]scsi_dh_rdac: Retry for NOT_READY check condition (0x02A102, 0x020401, 0x020404 and 0x020407) in rdac_check_sense Chauhan, Vijay
  2009-03-10 15:26 ` Hannes Reinecke
@ 2009-03-10 15:46 ` James Bottomley
  2009-03-17 13:21   ` Chauhan, Vijay
  1 sibling, 1 reply; 5+ messages in thread
From: James Bottomley @ 2009-03-10 15:46 UTC (permalink / raw)
  To: Chauhan, Vijay; +Cc: 'dm-devel@redhat.com', linux-scsi@vger.kernel.org

On Tue, 2009-03-10 at 18:30 +0530, Chauhan, Vijay wrote:
> This patch adds retry for NOT_READY check conditions(02/A1/02, 02/04/01, 02/04/04,
> 02/04/07) in rdac_check_sense.
> 
> Signed-off-by: Vijay Chauhan<vijay.chauhan@lsi.com>
> 
> ---
> --- linux-2.6.29-rc7/drivers/scsi/device_handler/scsi_dh_rdac.c.orig	2009-03-10 17:42:27.000000000 +0530
> +++ linux-2.6.29-rc7/drivers/scsi/device_handler/scsi_dh_rdac.c	2009-03-10 18:05:35.000000000 +0530
> @@ -562,6 +562,30 @@ static int rdac_check_sense(struct scsi_
>  			 * Just retry and wait.
>  			 */
>  			return ADD_TO_MLQUEUE;
> +		if (sense_hdr->asc == 0xA1  && sense_hdr->ascq == 0x02)
> +			/* LUN Not Ready - Quiescense in progress
> +			 * or has been achieved
> +			 * Just retry.
> +			 */
> +			return ADD_TO_MLQUEUE;

This is fine, being vendor specific, we don't handle it at the mid-layer

> +		if (sense_hdr->asc == 0x04 && sense_hdr->ascq == 0x01)
> +			/* LUN Not Ready - Logical Unit Not Ready and is in
> +			 * the process of becoming ready
> +			 * Just retry.
> +			 */
> +			return ADD_TO_MLQUEUE;
> +		if (sense_hdr->asc == 0x04 && sense_hdr->ascq == 0x04)
> +			/* LUN Not Ready - Format In Progress
> +			 *
> +			 * Just retry.
> +			 */
> +			return ADD_TO_MLQUEUE;
> +		if (sense_hdr->asc == 0x04  && sense_hdr->ascq == 0x07)
> +			/* LUN Not Ready - Storage controller cannot respond
> +			 * immediately to a PRIN or PROUT command.
> +			 * Just retry.
> +			 */
> +			return ADD_TO_MLQUEUE;

For all of these ... along with a few other not ready types, we already
do a delayed retry at the mid-layer (in scsi_io_completion).  Is there
some problem that causes this to need to be handled here as well?

James

^ permalink raw reply	[flat|nested] 5+ messages in thread

* RE: [PATCH]scsi_dh_rdac: Retry for NOT_READY check condition (0x02A102, 0x020401, 0x020404 and  0x020407) in rdac_check_sense
  2009-03-10 15:46 ` James Bottomley
@ 2009-03-17 13:21   ` Chauhan, Vijay
  2009-03-24 19:38     ` Chandra Seetharaman
  0 siblings, 1 reply; 5+ messages in thread
From: Chauhan, Vijay @ 2009-03-17 13:21 UTC (permalink / raw)
  To: James Bottomley
  Cc: 'sekharan@us.ibm.com', linux-scsi@vger.kernel.org,
	'dm-devel@redhat.com'

Hi James,

Thanks for your comment. I have updated the patch with your comments.
 
On Tues, 2009-03-10 21:17 +0530, James Bottomley wrote: 
> > +		if (sense_hdr->asc == 0xA1  && sense_hdr->ascq == 0x02)
> > +			/* LUN Not Ready - Quiescense in progress
> > +			 * or has been achieved
> > +			 * Just retry.
> > +			 */
> > +			return ADD_TO_MLQUEUE;
> 
> This is fine, being vendor specific, we don't handle it at 
> the mid-layer

> > +		if (sense_hdr->asc == 0x04  && sense_hdr->ascq == 0x07)
> > +			/* LUN Not Ready - Storage controller 
> cannot respond
> > +			 * immediately to a PRIN or PROUT command.
> > +			 * Just retry.
> > +			 */
> > +			return ADD_TO_MLQUEUE;
> 
> For all of these ... along with a few other not ready types, 
> we already
> do a delayed retry at the mid-layer (in scsi_io_completion).  Is there
> some problem that causes this to need to be handled here as well?
> 
Yes, I do agree. Submitting patch for 0x02A102 only.

Thanks,
Vijay

---
This patch adds retry for NOT_READY check condition - Quiescense in progress (02/A1/02)

Signed-off-by: Vijay Chauhan<vijay.chauhan@lsi.com>

---
--- linux-2.6.29-rc7/drivers/scsi/device_handler/scsi_dh_rdac.c.orig	2009-03-10 17:42:27.000000000 +0530
+++ linux-2.6.29-rc7/drivers/scsi/device_handler/scsi_dh_rdac.c	2009-03-17 18:18:07.000000000 +0530
@@ -562,6 +562,12 @@ static int rdac_check_sense(struct scsi_
 			 * Just retry and wait.
 			 */
 			return ADD_TO_MLQUEUE;
+		if (sense_hdr->asc == 0xA1  && sense_hdr->ascq == 0x02)
+			/* LUN Not Ready - Quiescense in progress
+			 * or has been achieved
+			 * Just retry.
+			 */
+			return ADD_TO_MLQUEUE;
 		break;
 	case ILLEGAL_REQUEST:
 		if (sense_hdr->asc == 0x94 && sense_hdr->ascq == 0x01) {

^ permalink raw reply	[flat|nested] 5+ messages in thread

* RE: [PATCH]scsi_dh_rdac: Retry for NOT_READY check condition (0x02A102, 0x020401, 0x020404 and  0x020407) in rdac_check_sense
  2009-03-17 13:21   ` Chauhan, Vijay
@ 2009-03-24 19:38     ` Chandra Seetharaman
  0 siblings, 0 replies; 5+ messages in thread
From: Chandra Seetharaman @ 2009-03-24 19:38 UTC (permalink / raw)
  To: Chauhan, Vijay
  Cc: James Bottomley, linux-scsi@vger.kernel.org,
	'dm-devel@redhat.com'


On Tue, 2009-03-17 at 18:51 +0530, Chauhan, Vijay wrote:
> Hi James,
> 
> Thanks for your comment. I have updated the patch with your comments.
> 
> On Tues, 2009-03-10 21:17 +0530, James Bottomley wrote: 
> > > +		if (sense_hdr->asc == 0xA1  && sense_hdr->ascq == 0x02)
> > > +			/* LUN Not Ready - Quiescense in progress
> > > +			 * or has been achieved
> > > +			 * Just retry.
> > > +			 */
> > > +			return ADD_TO_MLQUEUE;
> > 
> > This is fine, being vendor specific, we don't handle it at 
> > the mid-layer
> 
> > > +		if (sense_hdr->asc == 0x04  && sense_hdr->ascq == 0x07)
> > > +			/* LUN Not Ready - Storage controller 
> > cannot respond
> > > +			 * immediately to a PRIN or PROUT command.
> > > +			 * Just retry.
> > > +			 */
> > > +			return ADD_TO_MLQUEUE;
> > 
> > For all of these ... along with a few other not ready types, 
> > we already
> > do a delayed retry at the mid-layer (in scsi_io_completion).  Is there
> > some problem that causes this to need to be handled here as well?
> > 
> Yes, I do agree. Submitting patch for 0x02A102 only.
> 
> Thanks,
> Vijay
> 
> ---
> This patch adds retry for NOT_READY check condition - Quiescense in progress (02/A1/02)
> 
> Signed-off-by: Vijay Chauhan<vijay.chauhan@lsi.com>

Acked-by: Chandra Seetharaman <sekharan@us.ibm.com>

> 
> ---
> --- linux-2.6.29-rc7/drivers/scsi/device_handler/scsi_dh_rdac.c.orig	2009-03-10 17:42:27.000000000 +0530
> +++ linux-2.6.29-rc7/drivers/scsi/device_handler/scsi_dh_rdac.c	2009-03-17 18:18:07.000000000 +0530
> @@ -562,6 +562,12 @@ static int rdac_check_sense(struct scsi_
>  			 * Just retry and wait.
>  			 */
>  			return ADD_TO_MLQUEUE;
> +		if (sense_hdr->asc == 0xA1  && sense_hdr->ascq == 0x02)
> +			/* LUN Not Ready - Quiescense in progress
> +			 * or has been achieved
> +			 * Just retry.
> +			 */
> +			return ADD_TO_MLQUEUE;
>  		break;
>  	case ILLEGAL_REQUEST:
>  		if (sense_hdr->asc == 0x94 && sense_hdr->ascq == 0x01) {
> ----
> To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2009-03-24 19:35 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-03-10 13:00 [PATCH]scsi_dh_rdac: Retry for NOT_READY check condition (0x02A102, 0x020401, 0x020404 and 0x020407) in rdac_check_sense Chauhan, Vijay
2009-03-10 15:26 ` Hannes Reinecke
2009-03-10 15:46 ` James Bottomley
2009-03-17 13:21   ` Chauhan, Vijay
2009-03-24 19:38     ` Chandra Seetharaman

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox