From: Mark Lord <liml@rtr.ca>
To: Bernie Innocenti <bernie@codewiz.org>
Cc: linux-ide@vger.kernel.org, lkml <linux-kernel@vger.kernel.org>,
sysadmin <sysadmin@gnu.org>
Subject: Re: sata_mv 0000:03:06.0: PCI ERROR; PCI IRQ cause=0x30000040
Date: Mon, 05 Oct 2009 17:45:40 -0400 [thread overview]
Message-ID: <4ACA6904.1060509@rtr.ca> (raw)
In-Reply-To: <1254546642.1438.135.camel@giskard>
Bernie Innocenti wrote:
> The error in the subject appears in the console immediately followed bv
> a hard freeze of the machine. The error occurs reproducibly on two
> identical Opteron servers, each one equipped with two identical
> controller cards:
>
> 03:04.0 SCSI storage controller: Marvell Technology Group Ltd. MV88SX6081 8-port SATA II PCI-X Controller (rev 09)
> 03:06.0 SCSI storage controller: Marvell Technology Group Ltd. MV88SX6081 8-port SATA II PCI-X Controller (rev 09)
>
> We can trigger the problem within a few seconds by starting a
> reconstruction on a drive hooked to port 4 (counting from 0) of the
> second controller. Oddly, every other drive works reliably and the
> faulty drive works if we connect it to, for example, port 4 of the first
> controller.
>
> I'd like to stress that the problem occurs systematically, on two
> completely distinct machines. We swapped drives, cables and controllers
> to exclude other possibilities.
>
> Tested with Debian kernels 2.6.26-19 and 2.6.30-8. Let me know if
> further details are needed.
..
> 0000:03:06.0: PCI ERROR; PCI IRQ cause=0x30000040..
..
0x30000040 here means "MRdPerr":
"bad data parity detected during PCI master read".
Which means there that a data parity error happened
during outgoing data transfer on the PCI-X bus.
This could happen due to noise on the bus,
dying capacitors, or (?) bad RAM (not sure about the last one).
The expected behaviour here is for sata_mv to then perform
perform a full SATA reset, after which the I/O will be reattempted.
But it appears to lock up before that happens.
The code does try and clear the PCI error interrupt,
but perhaps it needs clearing in more than the one register
where it currently does so.
Looking over the code and the documentation I have (NDA),
nothing obvious springs to view. There are some extra registers
we could be dumping out, to show exactly what PCI phase and address
caused the error, but reading those won't cause or prevent a lockup.
Best bet would be to try replacing the RAM in that box,
and see if the problem goes away.
Cheers
next prev parent reply other threads:[~2009-10-05 21:46 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-10-03 5:10 sata_mv 0000:03:06.0: PCI ERROR; PCI IRQ cause=0x30000040 Bernie Innocenti
2009-10-05 21:45 ` Mark Lord [this message]
2009-10-06 4:16 ` Bernie Innocenti
2009-10-06 12:25 ` Harri Olin
2009-10-06 18:04 ` Bernie Innocenti
2009-10-06 20:06 ` Mark Lord
2009-10-07 0:06 ` Bernie Innocenti
2009-10-07 1:40 ` Bernie Innocenti
2009-10-07 3:13 ` Mark Lord
2009-10-08 16:42 ` Bernie Innocenti
2009-10-08 17:09 ` Tony Vroon
2009-10-14 15:24 ` [SOLVED] " Bernie Innocenti
2009-10-09 3:07 ` Mark Lord
2009-10-09 3:16 ` Mark Lord
2009-10-08 16:26 ` Bernie Innocenti
2009-10-08 21:51 ` Harri Olin
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=4ACA6904.1060509@rtr.ca \
--to=liml@rtr.ca \
--cc=bernie@codewiz.org \
--cc=linux-ide@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=sysadmin@gnu.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).