Date: Sun, 5 Sep 1999 23:13:56 -0600 (MDT) From: "Kenneth D. Merry" <ken@kdm.org> To: rene@canyon.demon.nl (Rene de Vries) Cc: freebsd-scsi@FreeBSD.ORG, freebsd-hackers@FreeBSD.ORG, wilko@yedi.iaf.nl (Wilko Bulte) Subject: Re: FBSD3.3RC + UMAX astra 1220S + NCR810 => panic Message-ID: <199909060513.XAA34043@panzer.kdm.org> In-Reply-To: <199909051326.PAA00703@canyon.demon.nl> from Rene de Vries at "Sep 5, 1999 03:26:43 pm"
next in thread | previous in thread | raw e-mail | index | archive | help
--ELM936594835-33868-0_
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Rene de Vries wrote...
> > It sounds like there may be a couple of things going on. First, your
> > scanner may not be returning sense information properly.
> >
> > Second, the NCR driver may be doing something wrong.
> >
> > It would be helpful if you could hook this up to your 7890 controller and
> > see what happens. In general, the Adaptec driver behaves a little better
> > than the NCR driver.
>
> Unfortunately the AIC7890 has a 68pin HD connector for which I don't have a
> cable. As far as the scanner goes: I didn't expect it to have a decent SCSI
> implementation, this is the reason I used a separate NCR810 to connect it to
> my system. But I find it strange that the system panics on this
> configuration, if something is wrong I expected the kernel to complain but
> not panic (you could call a panic the ultimate way for the kernel to compain,
> but this was not very helpfull). I'll try to get my hands on an
> 25 (Centronics) <-> 68pin HD cable (is there someone near Delft, NL that
> has such a cable that I can borrow for a day or two?).
> Whould it help if I took my old PC and installed FreeBSD 2.2.6 (the latest
> 2.2R i've got) and see what happens?
I'm not sure installing 2.2.6 would be that helpful, since it probably
won't exhibit the same behavior.
Here are some things to try:
- if you can, put the scanner on your 7890
- turn the panic statement into a printf
If you turn it into a printf, that may give us a better idea of just what
command is failing. The attached patch for cam_periph.c should do the
trick. The patch is against -current, but I think it should apply to
-stable okay.
I haven't checked to make sure it compiles or works, so you may have to
tweak it if it doesn't.
Ken
--
Kenneth Merry
ken@kdm.org
--ELM936594835-33868-0_
Content-Type: text/plain; charset=US-ASCII
Content-Disposition: attachment; filename=cam_periph_panic.patch.090599
Content-Description: cam_periph_panic.patch.090599
Content-Transfer-Encoding: 7bit
==== //depot/cam/sys/cam/cam_periph.c#74 - /a/ken/perforce/cam/sys/cam/cam_periph.c ====
*** /tmp/tmp.25426.0 Sun Sep 5 23:10:36 1999
--- /a/ken/perforce/cam/sys/cam/cam_periph.c Sun Sep 5 23:10:02 1999
***************
*** 1434,1445 ****
SCSI_STATUS_CHECK_COND
&& status != CAM_AUTOSENSE_FAIL) {
/* no point in decrementing the retry count */
! panic("cam_periph_error: scsi status of "
"CHECK COND returned but no sense "
! "information is availible. "
! "Controller should have returned "
! "CAM_AUTOSENSE_FAILED");
! /* NOTREACHED */
error = EIO;
} else if (ccb->ccb_h.retry_count > 0) {
/*
--- 1434,1448 ----
SCSI_STATUS_CHECK_COND
&& status != CAM_AUTOSENSE_FAIL) {
/* no point in decrementing the retry count */
! printf("cam_periph_error: scsi status of "
"CHECK COND returned but no sense "
! "information is availible.\n"
! "cam_periph_error: Controller should "
! "have returned CAM_AUTOSENSE_FAILED\n");
!
! retry = ccb->ccb_h.retry_count > 0;
! if (retry)
! ccb->ccb_h.retry_count--;
error = EIO;
} else if (ccb->ccb_h.retry_count > 0) {
/*
--ELM936594835-33868-0_--
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199909060513.XAA34043>
