linux-ide.vger.kernel.org archive mirror
 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 17:26:37 +0900	[thread overview]
Message-ID: <4BB458BD.20700@kernel.org> (raw)
In-Reply-To: <20100401075454.GA22417@gondor.apana.org.au>

Hello,

On 04/01/2010 04:54 PM, Herbert Xu wrote:
> On Thu, Apr 01, 2010 at 03:37:47PM +0900, Tejun Heo wrote:
>>
>> It was the asymmetry between the two paths that bothered me and made
>> me think there should be something else wrong.  So, the problem is
>> ide_dma_timeout_retry(), which is used only by ide_timer_expiry(),
>> clearing hwif->rq, right?  Then, wouldn't not clearing hwif->rq in
>> ide_dma_timeout_retry() a better solution?
> 
> I don't think that works.  We want to requeue regardless of whether
> we return ide_stopped.  If you don't clear hwif->rq and rely on the
> parent to do it then it'll only requeue when we return ide_stopped.

Yeap, which applies the same to the other failure path too.  I think
back then I repeated the same mistake I did in this thread -
ie. thinking ide_stopped indicates the state of the request.  It seems
the error path needs audit and more comprehensive fix unless I'm
mistaken yet again, which definitely is a possbility.  :-)

If you're interested in fixing the request requeueing in error path
properly, please go ahead.  If not, I'll give it a shot this in a few
days.

David, in the meantime, although I'm not quite sure the fix is
comprehensive yet, the patches definitely fix some of the issues.  So,
I have no objection to applying them.

Thanks for your patience.

-- 
tejun

  reply	other threads:[~2010-04-01  8:27 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
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 [this message]
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=4BB458BD.20700@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).