From: linas@austin.ibm.com (Linas Vepstas)
To: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Cc: Stuart_Hayes@Dell.com, linux-ide@vger.kernel.org,
linux-kernel@vger.kernel.org
Subject: Re: [BUG] ide dma_timer_expiry, then hard lockup
Date: Tue, 19 Jun 2007 10:05:02 -0500 [thread overview]
Message-ID: <20070619150502.GO5836@austin.ibm.com> (raw)
In-Reply-To: <4677E30B.4020101@ru.mvista.com>
Hi Sergei,
On Tue, Jun 19, 2007 at 06:07:07PM +0400, Sergei Shtylyov wrote:
>
> Stuart_Hayes@Dell.com wrote:
> >I think reading the IDE status register clears the interrupt in the IDE
> >device, which might be causing the drive to think it's OK to generate
> >another interrupt.
>
> This is not how IDE drives are supposed to act -- they won't proceed any
> further until "interrupt pending" condition is cleared, so these aren't
> supposed to be "stacked". This behavior however is not strictly specified
> by ATA standards IIRC, but I can't readily imagine such situaltion anyway
> unless tagged command queueing (which is not supported by IDE core) and/or
> ATAPI command overlapping is in action...
The problem only manifests during high io load; perhaps a missing mutex
somewhere is blasting one thing too many out to the hard drive?
> > This could either cause it to get stuck trying to
> >service an interrupt that is never getting cleared as you suggested, or
> >possibly when the next IRQ comes in the IDE IRQ handler gets stuck
> >waiting for a spinlock that the code you're looking at already owns...?
>
> I could also imagine the HPT366 chip going mad and stalling the reads if
> the taskfile regs forever because of the incomplete DMA or even the drive
> going mad and not replying to I/O cycles with proper -IORDY handshake (i.e.
> holding it low all the time)...
In my case, ctrl-alt-sysrq doesn't work, which makes it hard to debug.
I'm thinking that trying to debug libata is a better idea, rather than
investing time in ide, right? Although at the moment, libata works even
less; see other email.
--linas
next prev parent reply other threads:[~2007-06-19 15:05 UTC|newest]
Thread overview: 33+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-06-18 17:57 [BUG] ide dma_timer_expiry, then hard lockup Linas Vepstas
2007-06-18 18:11 ` Stuart_Hayes
2007-06-18 18:11 ` Stuart_Hayes
2007-06-19 14:07 ` Sergei Shtylyov
2007-06-19 15:05 ` Linas Vepstas [this message]
2007-06-19 16:10 ` Sergei Shtylyov
2007-06-19 16:48 ` Linas Vepstas
2007-06-19 18:43 ` Bartlomiej Zolnierkiewicz
2007-06-19 20:07 ` Sergei Shtylyov
2007-06-20 16:28 ` Linas Vepstas
2007-06-20 17:01 ` Alan Cox
2007-06-20 17:01 ` Alan Cox
2007-06-21 17:58 ` Sergei Shtylyov
2007-06-21 21:41 ` Alan Cox
2007-06-21 19:47 ` Linas Vepstas
2007-06-21 22:04 ` Alan Cox
2007-06-21 22:04 ` Alan Cox
2007-06-18 20:27 ` Alan Cox
2007-06-18 20:27 ` Alan Cox
2007-06-18 20:46 ` Linas Vepstas
2007-06-18 21:04 ` Alan Cox
2007-06-18 21:04 ` Alan Cox
2007-06-18 21:22 ` Linas Vepstas
2007-06-19 14:56 ` bug in libata [was " Linas Vepstas
2007-06-19 14:10 ` Sergei Shtylyov
2007-06-19 14:19 ` Alan Cox
2007-06-19 14:24 ` Sergei Shtylyov
2007-06-19 15:38 ` Mark Lord
2007-06-19 15:51 ` Sergei Shtylyov
2007-06-19 16:17 ` Alan Cox
2007-06-19 16:32 ` Sergei Shtylyov
2007-06-22 15:39 ` Sergei Shtylyov
2007-06-29 18:52 ` Sergei Shtylyov
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=20070619150502.GO5836@austin.ibm.com \
--to=linas@austin.ibm.com \
--cc=Stuart_Hayes@Dell.com \
--cc=linux-ide@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=sshtylyov@ru.mvista.com \
/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.