I, too, am having problems with the CAM code; but my SCSI drive(s) are NOT
boot drives!

Attempting ANY transfer on the drive evokes this response:
Oct  2 21:34:29 bsd300 /kernel: (da0:ncr0:0:3:0): extraneous data discarded.
Oct  2 21:34:29 bsd300 /kernel: (da0:ncr0:0:3:0): COMMAND FAILED (9 0)
@0xc0b3e600.
Oct  2 21:34:31 bsd300 /kernel: (da0:ncr0:0:3:0): extraneous data discarded.
Oct  2 21:34:31 bsd300 /kernel: (da0:ncr0:0:3:0): COMMAND FAILED (9 0)
@0xc0b3e600.

Reverting to an "older" kernel works fine; so I don't think it is hardware.

The applicable dmesg output:
Oct  2 21:32:59 bsd300 /kernel: FreeBSD 4.0-CURRENT #0: Sat Oct  2 14:29:38
EST 1999
Oct  2 21:32:59 bsd300 /kernel: ncr0: <ncr 53c810a fast10 scsi> irq 10 at
device 11.0 on pci0

Oct  2 21:32:59 bsd300 /kernel: da0 at ncr0 bus 0 target 3 lun 0
Oct  2 21:32:59 bsd300 /kernel: da0: <CONNER CFP4207S  4.28GB 1524> Fixed
Direct Access SCSI-2 device
Oct  2 21:32:59 bsd300 /kernel: da0: 10.000MB/s transfers (10.000MHz, offset
8)
Oct  2 21:32:59 bsd300 /kernel: da0: 4096MB (8388608 512 byte sectors: 255H
63S/
T 522C)

----- Original Message -----
From: Poul-Henning Kamp <[EMAIL PROTECTED]>
To: Peter Wemm <[EMAIL PROTECTED]>
Cc: <[EMAIL PROTECTED]>
Sent: Saturday, October 02, 1999 4:27 PM
Subject: Re: BEWARE: CAM changes broke AHC!


> In message <[EMAIL PROTECTED]>, Peter Wemm
writes
> :
> >If you boot with a -current kernel:
> >
> >(da0:ahc0:0:0:0) data overrun detected in Data-In phase. Tag = 0x8
> >(da0:ahc0:0:0:0) Have seen Data Phase.  Length = 0, NumSGs = 1
> >
> >Backing out the following sys/cam/scsi change set:
> >
> >revision 1.39
> >date: 1999/10/01 09:34:09;  author: phk;  state: Exp;  lines: +47 -117
> >Introduce the disk mini-layer and devstat_end_transaction_buf() in
cam/scsi.
> >
> >..and the other files touched at the same time revived it and made the
> >system bootable again.
> >
> >I am particularly suspicious about this:
> >
> >@@ -284,26 +283,14 @@
> >                return (error); /* error code from tsleep */
> >        }
> >
> >-       if ((softc->flags & DA_FLAG_OPEN) == 0) {
> >-               if (cam_periph_acquire(periph) != CAM_REQ_CMP)
> >-                       return(ENXIO);
> >-               softc->flags |= DA_FLAG_OPEN;
> >-       }
> >+       if (cam_periph_acquire(periph) != CAM_REQ_CMP)
> >+               return(ENXIO);
> >+       softc->flags |= DA_FLAG_OPEN;
> >
> >At first glance, it would appear it's re-inquiring on each open instead
of
> the first open, including while it's mounted. I wasn't sure, so rather
than
> >risk disks, I backed the lot out and it worked again.
>
> Open is only called once on first open, so this isn't it.
>
> --
> Poul-Henning Kamp             FreeBSD coreteam member
> [EMAIL PROTECTED]               "Real hackers run -current on their laptop."
> FreeBSD -- It will take a long time before progress goes too far!
>
>
> To Unsubscribe: send mail to [EMAIL PROTECTED]
> with "unsubscribe freebsd-current" in the body of the message
>



To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message

Reply via email to