All of lore.kernel.org
 help / color / mirror / Atom feed
From: Saeed Bishara <Saeed.Bishara@il.marvell.com>
To: dougg@torque.net
Cc: SCSI development list <linux-scsi@vger.kernel.org>
Subject: Re: [PATCH] lk 2.4.27 error handling, ad infinitum
Date: Thu, 02 Sep 2004 14:44:23 +0300	[thread overview]
Message-ID: <41370797.1020403@il.marvell.com> (raw)
In-Reply-To: <4136EE87.2080409@torque.net>

falling into FAILED status will put the device in offline state, isn't it?
saeed

Douglas Gilbert wrote:

> dougg wrote:
> > The following scenario has been brought to my attention.
> >
> > While handling a error (e.g. a timeout) the
> > scsi_send_eh_cmnd() function issues a (stalled) queued command.
> > Now that command hits a repeatable failure (e.g. MEDIUM ERROR).
> >
> > In this scaenario it would seem that the "goto retry" forms
> > an infinite loop re-issuing that command on the same (broken)
> > block.
> >
> > Comments?
>
> No comments, so how about this patch. When the eh retries are
> exhausted the code drops through to FAILED state. If a command
> in foreground (i.e. not sent by the eh handler) exceeds it retries
> then SUCCESS is returned??
>
> Doug Gilbert
>
>------------------------------------------------------------------------
>
>--- linux/drivers/scsi/scsi_error.c	2004-04-17 19:30:54.000000000 +1000
>+++ linux/drivers/scsi/scsi_error.c2427retry	2004-09-02 19:45:07.858674640 +1000
>@@ -664,7 +664,9 @@
> 			SCpnt->eh_state = SUCCESS;
> 			break;
> 		case NEEDS_RETRY:
>-			goto retry;
>+			if ((++SCpnt->retries) < SCpnt->allowed)
>+				goto retry;
>+			/* fall through to FAILED if retries exceeded */
> 		case FAILED:
> 		default:
> 			SCpnt->eh_state = FAILED;
>  
>



  reply	other threads:[~2004-09-02 11:44 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-09-02  9:57 [PATCH] lk 2.4.27 error handling, ad infinitum Douglas Gilbert
2004-09-02 11:44 ` Saeed Bishara [this message]
2004-09-03  0:06 ` Douglas Gilbert

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=41370797.1020403@il.marvell.com \
    --to=saeed.bishara@il.marvell.com \
    --cc=dougg@torque.net \
    --cc=linux-scsi@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.