From: Daniel Eisenbud <eisenbud@cs.swarthmore.edu>
To: Paul Mackerras <paulus@linuxcare.com.au>
Cc: LinuxPPC Dev <linuxppc-dev@lists.linuxppc.org>
Subject: Re: SOLVED: mesh SCSI bus locks hard on 7500 when burning a CD-R in dao mode
Date: Sat, 3 Feb 2001 11:14:27 -0500 [thread overview]
Message-ID: <20010203111427.B15855@allspice.cs.swarthmore.edu> (raw)
In-Reply-To: <14971.34502.222006.311092@diego.linuxcare.com.au>; from paulus@linuxcare.com.au on Sat, Feb 03, 2001 at 03:19:18PM +1100
On Sat, Feb 03, 2001 at 03:19:18PM +1100, Paul Mackerras <paulus@linuxcare.com.au> wrote:
> Daniel Eisenbud writes:
[...]
> As I said, it's been a while, and what I don't remember is whether the
> mesh gives you a phase mismatch interrupt if you tell it to receive
> data (do an IN operation) when the target also expects to receive data
> (i.e. do an OUT operation). I have a vague idea that it might do so
> in PIO mode but not in DMA mode or something. It's quite believable
> that the whole thing would lock up in this situation.
Ah.
> > There are still some issues outstanding:
> > 1) The same table is duplicated in five or six drivers. I think it
> > would make lots of sense to have a macro for the case statment in just
> > one place. Should it go in scsi.h? Or its own new file?
>
> Well, it could be declared in scsi.h but the actual table of values
> should go in a .c file.
My current patch has a static function in the new file scsi_dataout.h,
which is included by all the drivers in question. But I agree that it
would be cleaner to declare the function in scsi.h, change
scsi_dataout.h to scsi_dataout.c, make the function no longer static,
and tell make about the dependencies. I'll do that.
> > 3) It continues to be worrisome that the mesh driver doesn't handle
> > aborts right or retry lost arbitration (nor does mac53c94.) Is there
> > anywhere that the way to do these things is documented? I'm willing to
> > try my hand at fixing them.
>
> I was never sure exactly how the higher levels of the scsi code
> expected the host adaptor drivers (like mesh.c) to do aborts. At the
> time I tried to read the code but I found it to be quite opaque; it
> was very complicated and not very well structured. I haven't looked
> at it lately, although I know Alan Cox was trying to tidy it up a bit
> at one stage.
I'll take a look...
> I thought the mesh driver did retry lost arbitration though.
The comment at the top of the file says that it doesn't, but that's as
far as I've investigated so far. It may be that you just didn't get
around to changing the comment?
> If you want to try to fix the problems and implement the aborts and
> resets properly, that would be great. You would at least need a copy
> of the SCSI-2 standard (or at least a late draft) plus the "Macintosh
> Technology in CHRP" document.
Are these available on the net, or would I have to order paper copies
from somewhere?
> > A quick patch will follow in the morning, and based on people's opinions
> > about issue 1 above, I'll make a more definitive patch to send to Linus
> > and Alan Cox and whoever one sends these things to.
>
> I would very much like to see the proposed patches before they are
> sent to Linus & Alan.
I'll be glad to show them to you first.
-Daniel
--
Daniel E. Eisenbud
eisenbud@cs.swarthmore.edu
** Sent via the linuxppc-dev mail list. See http://lists.linuxppc.org/
next prev parent reply other threads:[~2001-02-03 16:14 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2001-01-26 19:48 mesh SCSI bus locks hard on 7500 when burning a CD-R in dao m ode Amit Chaudhary
2001-01-26 20:12 ` Daniel Eisenbud
2001-01-26 20:50 ` Michael Schmitz
2001-01-26 21:04 ` mesh SCSI bus locks hard on 7500 when burning a CD-R in dao mode Daniel Eisenbud
2001-01-26 21:32 ` Michael Schmitz
2001-01-27 21:31 ` Daniel Eisenbud
2001-01-28 0:59 ` Daniel Eisenbud
2001-01-28 1:25 ` Daniel Eisenbud
2001-01-28 2:34 ` Daniel Eisenbud
2001-01-28 5:09 ` Daniel Eisenbud
2001-01-28 5:11 ` Daniel Eisenbud
2001-01-28 7:16 ` Daniel Eisenbud
2001-01-28 7:17 ` Daniel Eisenbud
2001-01-28 20:24 ` scsi debug info before and after mesh locks up Daniel Eisenbud
2001-01-29 14:29 ` mesh SCSI bus locks hard on 7500 when burning a CD-R in dao mode Michael Schmitz
2001-01-29 23:20 ` Daniel Eisenbud
2001-01-30 21:28 ` Michael Schmitz
2001-01-30 21:35 ` Daniel Eisenbud
2001-01-30 21:46 ` Michael Schmitz
2001-01-30 21:57 ` Daniel Eisenbud
2001-01-31 16:40 ` Chris Boot
2001-02-01 16:50 ` Daniel Eisenbud
2001-02-02 7:38 ` SOLVED: " Daniel Eisenbud
2001-02-02 12:58 ` Michael Schmitz
2001-02-02 15:14 ` Daniel Eisenbud
2001-02-05 12:41 ` Benjamin Herrenschmidt
2001-02-03 4:19 ` Paul Mackerras
2001-02-03 16:14 ` Daniel Eisenbud [this message]
2001-02-03 16:27 ` Daniel Eisenbud
2001-02-03 18:48 ` PATCH: " Daniel Eisenbud
2001-02-04 21:37 ` SOLVED: " Michael Schmitz
2001-02-05 8:28 ` Geert Uytterhoeven
2001-01-31 7:10 ` Geert Uytterhoeven
2001-01-29 14:28 ` Michael Schmitz
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=20010203111427.B15855@allspice.cs.swarthmore.edu \
--to=eisenbud@cs.swarthmore.edu \
--cc=linuxppc-dev@lists.linuxppc.org \
--cc=paulus@linuxcare.com.au \
/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).