Subject: kern/7516: NCR driver > 4 drives returns drive offline
To: None <gnats-bugs@gnats.netbsd.org>
From: None <billc@netbsd.org>
List: netbsd-bugs
Date: 05/04/1999 03:50:55
>Number:         7516
>Category:       kern
>Synopsis:       Having 4 harddrives on the bus works, 5th and above return drive offline for them
>Confidential:   no
>Severity:       critical
>Priority:       high
>Responsible:    kern-bug-people (Kernel Bug People)
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Tue May  4 03:50:01 1999
>Last-Modified:
>Originator:     William Coldwell
>Organization:
>Release:        <NetBSD-current source date> May 04 1999
>Environment:
	
System: NetBSD dustpuppy.atl.warped.com 1.4A NetBSD 1.4A (DUSTPUPPY) #0: Tue May 4 05:50:13 EDT 1999 billc@dustpuppy.atl.warped.com:/local/src/sys/arch/i386/compile/DUSTPUPPY i386


>Description:
	
I had an adaptec 2940 in the system, which I pulled and replaced with a
symbios 53c875 controller.  Upon rebooting, my ccd0 failed because some
of the harddrives were missing.  Doing further investigation led me to
reduce the # of disks:

sd0 at scsibus0 targ 0 lun 0: <QUANTUM, XP34550W, LXY1> SCSI2 0/direct fixed
sd0(ncr0:0:0): WIDE SCSI (16 bit) enabled
sd0(ncr0:0:0): 40.0 MB/s (50 ns, offset 16)
sd0: 4341MB, 5899 cyl, 10 head, 150 sec, 512 bytes/sect x 8890760 sectors
sd1 at scsibus0 targ 3 lun 0: <SEAGATE, ST34371W, 0484> SCSI2 0/direct fixed
sd1(ncr0:3:0): WIDE SCSI (16 bit) enabled
sd1(ncr0:3:0): 40.0 MB/s (50 ns, offset 15)
sd1: 4148MB, 5172 cyl, 10 head, 164 sec, 512 bytes/sect x 8496884 sectors
sd2 at scsibus0 targ 5 lun 0: <SEAGATE, ST34572W, 0784> SCSI2 0/direct fixed
sd2(ncr0:5:0): WIDE SCSI (16 bit) enabled
sd2(ncr0:5:0): 40.0 MB/s (50 ns, offset 15)
sd2: 4340MB, 6300 cyl, 8 head, 176 sec, 512 bytes/sect x 8888924 sectors
sd3 at scsibus0 targ 8 lun 0: <WDIGTL, ENTERPRISE, 1.91> SCSI2 0/direct fixed
sd3(ncr0:8:0): WIDE SCSI (16 bit) enabled
sd3(ncr0:8:0): 40.0 MB/s (50 ns, offset 15)
sd3: 2077MB, 5720 cyl, 4 head, 185 sec, 512 bytes/sect x 4254819 sectors

Ok, so ID0, ID3, ID5, ID8 worked as sd0, sd1, sd2, sd3.  Fine.

Put the other drives back:

sd0 at scsibus0 targ 0 lun 0: <QUANTUM, XP34550W, LXY1> SCSI2 0/direct fixed
sd0(ncr0:0:0): WIDE SCSI (16 bit) enabled
sd0(ncr0:0:0): 40.0 MB/s (50 ns, offset 16)
sd0: 4341MB, 5899 cyl, 10 head, 150 sec, 512 bytes/sect x 8890760 sectors
sd1 at scsibus0 targ 1 lun 0: <QUANTUM, XP34550W, LXY1> SCSI2 0/direct fixed
sd1(ncr0:1:0): WIDE SCSI (16 bit) enabled
sd1(ncr0:1:0): 40.0 MB/s (50 ns, offset 16)
sd1: 4341MB, 5899 cyl, 10 head, 150 sec, 512 bytes/sect x 8890760 sectors
sd2 at scsibus0 targ 2 lun 0: <QUANTUM, XP34550W, LXY4> SCSI2 0/direct fixed
sd2(ncr0:2:0): WIDE SCSI (16 bit) enabled
sd2(ncr0:2:0): 40.0 MB/s (50 ns, offset 16)
sd2: 4341MB, 5899 cyl, 10 head, 150 sec, 512 bytes/sect x 8890760 sectors
sd3 at scsibus0 targ 3 lun 0: <SEAGATE, ST34371W, 0484> SCSI2 0/direct fixed
sd3(ncr0:3:0): WIDE SCSI (16 bit) enabled
sd3(ncr0:3:0): 40.0 MB/s (50 ns, offset 15)
sd3: 4148MB, 5172 cyl, 10 head, 164 sec, 512 bytes/sect x 8496884 sectors
sd4 at scsibus0 targ 5 lun 0: <SEAGATE, ST34572W, 0784> SCSI2 0/direct fixed
sd4(ncr0:5:0): WIDE SCSI (16 bit) enabled
sd4(ncr0:5:0): 40.0 MB/s (50 ns, offset 15)
sd4: drive offline
sd5 at scsibus0 targ 8 lun 0: <WDIGTL, ENTERPRISE, 1.91> SCSI2 0/direct fixed
sd5(ncr0:8:0): WIDE SCSI (16 bit) enabled
sd5(ncr0:8:0): 40.0 MB/s (50 ns, offset 15)
sd5: drive offline

Ok, so ID0, ID1, ID2, ID3 work, ID5 and ID8 don't. (NOTE:  ID5 and ID8 _DID_
work above). 

>How-To-Repeat:
	
Demonstrated above.

>Fix:
	
Some poor soul other than me has to look through the NCR driver code for some
array that is either getting munged, or is too small.  Since this worked with
the adaptec, it points solely to the ncr driver.


>Audit-Trail:
>Unformatted: