All of lore.kernel.org
 help / color / mirror / Atom feed
From: Tejun Heo <tj@kernel.org>
To: Herbert Xu <herbert@gondor.apana.org.au>
Cc: "David S. Miller" <davem@davemloft.net>, linux-ide@vger.kernel.org
Subject: Re: ide: Requeue request after DMA timeout
Date: Thu, 01 Apr 2010 13:56:53 +0900	[thread overview]
Message-ID: <4BB42795.5070008@kernel.org> (raw)
In-Reply-To: <20100401043201.GA20470@gondor.apana.org.au>

Hello,

On 04/01/2010 01:32 PM, Herbert Xu wrote:
>> Does the above change make the request to be requeued twice?
> 
> No, we clear hwif->rq in ide_dma_timeout_retry so ide_timer_expiry
> will have nothing to requeue.

OIC.  It's also cleared in ide_timer_expiry() too.  Asymmetry among
different failure paths worries me.  e.g. looking at the code, I can't
find how ide_error() would requeue the request either.  It looks like
each hwif->rq = NULL in failure path should be investigated and the
affected ones should be replaced with a function which requeues and
clears hwif->rq.  Hmmm.... am I misunderstanding something?

> Besides, we want to requeue here regardless of whether we return
> ide_stopped.  For example, we may return ide_started in case of
> a pending reset, but as the original request hasn't been completed
> it must still be requeued.

Yeap, right.  ide_started/stopped doesn't have much bearing with the
current request.  It indicates the current controller/driver state.

Thanks.

-- 
tejun

  reply	other threads:[~2010-04-01  4:57 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-03-31  6:17 ide: Requeue request after DMA timeout Herbert Xu
2010-03-31  6:20 ` ide: Must hold queue lock when requeueing Herbert Xu
2010-04-01  3:06   ` Tejun Heo
2010-04-01  6:11     ` v2: ide: Requeue request after DMA timeout Herbert Xu
2010-04-01  6:13       ` v2: ide: Must hold queue lock when requeueing Herbert Xu
2010-04-01  8:31         ` David Miller
2010-04-01  8:31       ` v2: ide: Requeue request after DMA timeout David Miller
2010-04-01  2:34 ` David Miller
2010-04-01  3:05   ` Tejun Heo
2010-04-01  3:04 ` Tejun Heo
2010-04-01  4:32   ` Herbert Xu
2010-04-01  4:56     ` Tejun Heo [this message]
2010-04-01  5:54       ` Herbert Xu
2010-04-01  6:25         ` Tejun Heo
2010-04-01  6:32           ` Herbert Xu
2010-04-01  6:37             ` Tejun Heo
2010-04-01  7:54               ` Herbert Xu
2010-04-01  8:26                 ` Tejun Heo
2010-04-01  8:27                   ` David Miller

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=4BB42795.5070008@kernel.org \
    --to=tj@kernel.org \
    --cc=davem@davemloft.net \
    --cc=herbert@gondor.apana.org.au \
    --cc=linux-ide@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.