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
next prev parent 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).