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