From: "Norman Diamond" <n0diamond@yahoo.co.jp>
To: linux-ide@vger.kernel.org
Cc: Mark Lord <liml@rtr.ca>,
Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>,
Chuck Ebbert <cebbert@redhat.com>,
Jens Axboe <jens.axboe@oracle.com>,
Robert Hancock <hancockrwd@gmail.com>
Subject: Re: Kernel bug crashing in HDIO_DRIVE_TASKFILE
Date: Mon, 2 Mar 2009 20:43:33 +0900 [thread overview]
Message-ID: <F7E647DEED424BF1BAE2924A6D8DE755@DIAMOND8600> (raw)
In-Reply-To: 49AB468D.6030506@gmail.com
Robert Hancock wrote:
> Norman Diamond wrote:
>> In the third VT, dmesg showed this error message:
>> hda-intel: Invalid position buffer, using LPIB read method instead.
>>
>> Google found several threads where people are blaming this error message
>> on audio drivers or wireless LAN drivers. Some people are saying it was
>> fixed somewhere earlier than 2.6.28.4. 2.6.28.4 tells me it's not fixed,
>> and the timing sure doesn't look like audio or wireless LAN.
>
> I'm guessing that's a symptom and not a cause, if the IDE driver is
> causing some kind of partial lockup then that could be messing with the
> audio driver..
>
>> I'll try building a kernel without legacy IDE drivers, but I wonder which
>> kernel version to try.
>
> Normally latest is best..
Yeah but "normally" doesn't help a lot with this problem. I do plan to see
if I can build a Slax CD with the latest kernel with a configuration to omit
legacy IDE drivers, but meanwhile I'm still primarily using Slax 6.0.3 with
kernel 2.6.24.3 because I could use Slax's tools to build it and it seemed
to work.
Well, it turns out that 2.6.24.3 doesn't work either. Sometimes
HDIO_DRIVE_TASKFILE doesn't just hang a process without a dump, sometimes it
hangs other stuff too. This time I could still switch VT's (after booting
Slax to text mode) but couldn't type the name "root" to log in.
So, why sometimes but not other times? Here's some evidence.
(1) A 40GB PATA hard drive supports LBA48, and is connected through a
moderately old Intel controller which presents a PATA interface that
supports LBA48, but I used an LBA28 WRITE_DMA to write 126 sectors starting
at sector 0, and it worked perfectly.
(2) A 250GB SATA hard drive supports LBA48, and is connected through a
moderately new Intel controller which presents a PATA interface that
supports LBA48, but I used an LBA28 WRITE_DMA to write 126 sectors starting
at sector 0, and it hanged.
(3) A 250GB SATA hard drive supports LBA48, and is connected through an
Nvidia controller which presents a SATA interface ... oops, that means I
used SG_IO instead of HDIO_DRIVE_TASKFILE, so there's no surprise that it
worked.
So does this mean that some part of HDIO_DRIVE_TASKFILE doesn't want to
believe the flags I set to use or not use the HOB registers? If the total
number of sectors on the drive is larger than 0x0fffffff then the driver
wants me to use HOB registers even when lower sector numbers don't need
them? Notice that it doesn't seem to matter if the drive supports LBA48 or
not. It seems to matter if some other sectors, which aren't involved in
this I/O, would need LBA48 when someone else accesses them.
I plan to experiment tomorrow, using LBA48 even when it shouldn't be
necessary, to see if it avoids that hang.
--------------------------------------
Power up the Internet with Yahoo! Toolbar.
http://pr.mail.yahoo.co.jp/toolbar/
next prev parent reply other threads:[~2009-03-02 11:43 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-02-24 11:36 Kernel bug crashing in HDIO_DRIVE_TASKFILE Norman Diamond
2009-02-24 22:10 ` Chuck Ebbert
2009-02-25 11:43 ` Norman Diamond
2009-02-25 16:24 ` Mark Lord
2009-02-25 19:35 ` Bartlomiej Zolnierkiewicz
2009-02-25 21:18 ` Norman Diamond
2009-02-25 22:43 ` Mark Lord
2009-02-26 11:56 ` Norman Diamond
2009-02-28 3:14 ` Robert Hancock
2009-03-01 0:58 ` Norman Diamond
2009-03-01 1:16 ` Alan Cox
2009-03-01 11:06 ` Robert Hancock
2009-03-02 0:24 ` Norman Diamond
2009-03-02 2:38 ` Robert Hancock
2009-03-02 11:43 ` Norman Diamond [this message]
2009-03-11 22:33 ` Bartlomiej Zolnierkiewicz
2009-03-11 23:00 ` Norman Diamond
-- strict thread matches above, loose matches on Subject: below --
2009-03-03 11:44 Norman Diamond
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=F7E647DEED424BF1BAE2924A6D8DE755@DIAMOND8600 \
--to=n0diamond@yahoo.co.jp \
--cc=bzolnier@gmail.com \
--cc=cebbert@redhat.com \
--cc=hancockrwd@gmail.com \
--cc=jens.axboe@oracle.com \
--cc=liml@rtr.ca \
--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