From: James Bottomley <James.Bottomley@HansenPartnership.com>
To: bugme-daemon@bugzilla.kernel.org, john@mib-infotech.co.nz
Cc: linux-scsi@vger.kernel.org
Subject: Re: [Bug 9775] HOST_MSG_LOOP invalid SCB ff
Date: Tue, 12 Feb 2008 15:55:48 -0600 [thread overview]
Message-ID: <1202853348.3137.145.camel@localhost.localdomain> (raw)
In-Reply-To: <20080209025241.9B31B11D107@picon.linux-foundation.org>
On Fri, 2008-02-08 at 18:52 -0800, bugme-daemon@bugzilla.kernel.org
wrote:
> Ok, I've spent some time trying different combinations of devices.
>
> Against kernel 2.6.24
> T0 is Quantum DLT8000 ID0
> T1 is Quantum DLT8000 ID1
> MTX is STK L80 ID 15
> Terminators A, B
>
> Channel A B
> T0,T1,MTX,B Nil
> Crash
> Nil T0,T1,MTX,B
> Parity Error in Data-in Phase
> Nil T0,MTX,B
> Ok, Tar test ok, MTX ok
> Nil T1,MTX,B
> Ok, Tar test ok, MTX ok
> -- Both drives work ok
> T1,MTX,B Nil
> Ok Skipped Tests
> T1,MTX,A Nil
> Ok Skipped Tests
> T0,MTX,B Nil
> Crash
> T0,MTX,A Nil
> Crash
> -- Not the terminator
>
>
> --Test on two channels
> T0,MTX,A T1,B
> Crash
> T1,B T0,MTX,A
> Parity Error in Data-in Phase
>
> It really doesn't like three devices, on two busses or one.
Well, I still think you have some type of bus instability, but that said
we need to get rid of the panic.
I'm afraid this is going to be a long process. For the first attempt,
let's see if this is an unsolicited msgin ... it looks like the driver
handling for those is wrong. Can you try this patch?
Thanks,
James
---
diff --git a/drivers/scsi/aic7xxx/aic7xxx_core.c b/drivers/scsi/aic7xxx/aic7xxx_core.c
index 6d2ae64..64e62ce 100644
--- a/drivers/scsi/aic7xxx/aic7xxx_core.c
+++ b/drivers/scsi/aic7xxx/aic7xxx_core.c
@@ -695,15 +695,16 @@ ahc_handle_seqint(struct ahc_softc *ahc, u_int intstat)
scb_index = ahc_inb(ahc, SCB_TAG);
scb = ahc_lookup_scb(ahc, scb_index);
if (devinfo.role == ROLE_INITIATOR) {
- if (scb == NULL)
- panic("HOST_MSG_LOOP with "
- "invalid SCB %x\n", scb_index);
+ if (bus_phase == P_MESGOUT) {
+ if (scb == NULL)
+ panic("HOST_MSG_LOOP with "
+ "invalid SCB %x\n",
+ scb_index);
- if (bus_phase == P_MESGOUT)
ahc_setup_initiator_msgout(ahc,
&devinfo,
scb);
- else {
+ } else {
ahc->msg_type =
MSG_TYPE_INITIATOR_MSGIN;
ahc->msgin_index = 0;
next prev parent reply other threads:[~2008-02-12 21:55 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <bug-9775-11613@http.bugzilla.kernel.org/>
2008-01-18 22:28 ` [Bug 9775] HOST_MSG_LOOP invalid SCB ff bugme-daemon
2008-01-18 22:35 ` bugme-daemon
2008-01-18 22:36 ` bugme-daemon
2008-02-09 2:52 ` bugme-daemon
2008-02-12 21:55 ` James Bottomley [this message]
2008-02-09 2:54 ` bugme-daemon
2008-02-12 21:56 ` bugme-daemon
2008-02-17 2:40 ` bugme-daemon
2008-01-18 22:27 James Bottomley
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=1202853348.3137.145.camel@localhost.localdomain \
--to=james.bottomley@hansenpartnership.com \
--cc=bugme-daemon@bugzilla.kernel.org \
--cc=john@mib-infotech.co.nz \
--cc=linux-scsi@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