Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 15 Apr 1997 23:02:18 +0200 (MEST)
From:      "Helmut F. Wirth" <hfwirth@ping.at>
To:        FreeBSD-gnats-submit@freebsd.org
Subject:   i386/3300: Adaptec 2940U Problems
Message-ID:  <199704152102.XAA00577@atlantis.ping.at>
Resent-Message-ID: <199704152110.OAA11301@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         3300
>Category:       i386
>Synopsis:       Adaptec 2940U Problems
>Confidential:   no
>Severity:       critical
>Priority:       high
>Responsible:    freebsd-bugs
>State:          open
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Tue Apr 15 14:10:01 PDT 1997
>Last-Modified:
>Originator:     Helmut F. Wirth
>Organization:
private
>Release:        FreeBSD 2.2-STABLE i386
>Environment:

	ASUS P55T2P4, Pentium 166 MMX, Adaptec 2940U Bios Ver.1.23
	64MB Memory, 1x Quantum Atlas 2GB, 1x IBM 1GB, 1xQuantum Atlas 2GB
	Plextor CDROM, HP 6020i Worm, Archive Viper Tape, Jaz SCSI
	Version FreeBSD-2.2_STABLE, last update today via CTM from 
	ftp.freebsd.org, kernel compiled today
	(Last ctm upgrade included is src-2.2.0239.gz)

	This is my kernel config:
#
# ATLANTIS
#

machine		"i386"
cpu		"I586_CPU"
ident		ATLANTIS
maxusers	20

options		INET			#InterNETworking
options		FFS			#Berkeley Fast Filesystem
options		MFS
options		MSDOSFS			#MSDOS Filesystem
options		"CD9660"		#ISO 9660 Filesystem
options		PROCFS			#Process filesystem
options		KERNFS
options		"COMPAT_43"		#Compatible with BSD 4.3
options		"SCSI_DELAY=3"		#Be pessimistic about Joe SCSI device
options		BOUNCE_BUFFERS		#include support for DMA bounce buffers
options		UCONSOLE		#Allow users to grab the console
# options		DIAGNOSTIC
options         KTRACE                  #kernel tracing
options         "AUTO_EOI_1"
options         DUMMY_NOPS
options		"MD5"
options		PERFMON

options		SYSVSHM
options		SYSVSEM
options		SYSVMSG

config		kernel	root on sd0 

controller	isa0
controller	pci0

controller	fdc0	at isa? port "IO_FD1" bio irq 6 drq 2 vector fdintr
disk		fd0	at fdc0 drive 0
disk		fd1	at fdc0 drive 1

controller 	ahc0
options 	AHC_ALLOW_MEMIO
controller	ncr0

controller	scbus0
device		sd0
device		st0
device		cd0	#Only need one of these, the code dynamically grows
device		worm0 at scbus0 target 5

# syscons is the default console driver, resembling an SCO console
device		sc0	at isa? port "IO_KBD" tty irq 1 vector scintr

device		npx0	at isa? port "IO_NPX" iosiz 0x0 flags 0x0 irq 13 vector npxintr

device		sio0	at isa? port "IO_COM1" tty irq 4 vector siointr
device		sio1	at isa? port "IO_COM2" tty irq 3 vector siointr

device		lpt0	at isa? port? tty irq 7 vector lptintr

controller      snd0
device sb0      at isa? port 0x220 irq 5 drq 1 vector sbintr
device sbxvi0   at isa? drq 5
device sbmidi0  at isa? port 0x330


pseudo-device	loop
pseudo-device	ether
pseudo-device	log
pseudo-device	sl	1
pseudo-device   gzip            #Exec gzipped a.out's
# ijppp uses tun instead of ppp device
# pseudo-device	ppp	1
pseudo-device	tun	1
pseudo-device	pty	32
pseudo-device	vn

END OF KERNEL CONFIG

This is the boot sequence with kernel -v:

Apr 15 22:37:43 atlantis /kernel: FreeBSD 2.2-STABLE #10: Tue Apr 15 22:26:03 MEST 1997
Apr 15 22:37:43 atlantis /kernel:     hfwirth@atlantis:/home/users/hfwirth/FreeBSDsrc/src/sys/compile/ATLANTIS
Apr 15 22:37:44 atlantis /kernel: Calibrating clock(s) ... i586 clock: 166592035 Hz, i8254 clock: 1193222 Hz
Apr 15 22:37:44 atlantis /kernel: CLK_USE_I8254_CALIBRATION not specified - using default frequency
Apr 15 22:37:44 atlantis /kernel: CLK_USE_I586_CALIBRATION not specified - using old calibration method
Apr 15 22:37:44 atlantis /kernel: CPU: Pentium (166.59-MHz 586-class CPU)
Apr 15 22:37:44 atlantis /kernel:   Origin = "GenuineIntel"  Id = 0x544  Stepping=4
Apr 15 22:37:44 atlantis /kernel:   Features=0x8001bf<FPU,VME,DE,PSE,TSC,MSR,MCE,CX8>
Apr 15 22:37:44 atlantis /kernel: real memory  = 67108864 (65536K bytes)
Apr 15 22:37:44 atlantis /kernel: avail memory = 62836736 (61364K bytes)
Apr 15 22:37:44 atlantis /kernel: pcibus_setup(1):	mode 1 addr port (0x0cf8) is 0x8000005c
Apr 15 22:37:44 atlantis /kernel: pcibus_setup(1a):	mode1res=0x80000000 (0x80000000)
Apr 15 22:37:44 atlantis /kernel: pcibus_check:	device 0 is there (id=12508086)
Apr 15 22:37:44 atlantis /kernel: Probing for devices on PCI bus 0:
Apr 15 22:37:44 atlantis /kernel: 	configuration mode 1 allows 32 devices.
Apr 15 22:37:44 atlantis /kernel: chip0 <Intel 82439> rev 3 on pci0:0
Apr 15 22:37:44 atlantis /kernel: chip1 <Intel 82371SB PCI-ISA bridge> rev 1 on pci0:7:0
Apr 15 22:37:44 atlantis /kernel: chip2 <Intel 82371SB IDE interface> rev 0 on pci0:7:1
Apr 15 22:37:44 atlantis /kernel: 	mapreg[20] type=1 addr=0000e800 size=0010.
Apr 15 22:37:44 atlantis /kernel: 	I/O Recovery Timing: 8-bit 3.5 clocks, 16-bit 3.5 clocks
Apr 15 22:37:44 atlantis /kernel: 	Extended BIOS: disabled
Apr 15 22:37:44 atlantis /kernel: 	Lower BIOS: disabled
Apr 15 22:37:44 atlantis /kernel: 	Coprocessor IRQ13: disabled
Apr 15 22:37:44 atlantis /kernel: 	Mouse IRQ12: disabled
Apr 15 22:37:44 atlantis /kernel: 	Interrupt Routing: A: , B: , C: , D: 
Apr 15 22:37:44 atlantis /kernel: 		MB0: , MB1: 
Apr 15 22:37:44 atlantis /kernel: vga0 <Display device> rev 0 on pci0:9
Apr 15 22:37:44 atlantis /kernel: 	mapreg[10] type=0 addr=fb000000 size=800000.
Apr 15 22:37:44 atlantis /kernel: ahc0 <Adaptec 2940 Ultra SCSI host adapter> rev 0 int a irq 11 on pci0:11
Apr 15 22:37:44 atlantis /kernel: 	mapreg[10] type=1 addr=0000e000 size=0100.
Apr 15 22:37:44 atlantis /kernel: 	mapreg[14] type=0 addr=fa800000 size=1000.
Apr 15 22:37:44 atlantis /kernel: 	reg20: virtual=0xf6935000 physical=0xfa800000 size=0x1000
Apr 15 22:37:45 atlantis /kernel: ahc0: Reading SEEPROM...done.
Apr 15 22:37:45 atlantis /kernel: low byte termination enabled, high byte termination enabled
Apr 15 22:37:45 atlantis /kernel: ahc0: aic7880 Single Channel, SCSI Id=7, 16 SCBs
Apr 15 22:37:45 atlantis /kernel: ahc0: Resetting Channel A
Apr 15 22:37:45 atlantis /kernel: ahc0: Downloading Sequencer Program...ahc0: 379 instructions downloaded
Apr 15 22:37:45 atlantis /kernel: Done
Apr 15 22:37:45 atlantis /kernel: ahc0: Probing channel A
Apr 15 22:37:45 atlantis /kernel: ahc0 waiting for scsi devices to settle
Apr 15 22:37:45 atlantis /kernel: ahc0: target 0 synchronous at 10.0MHz, offset = 0xf
Apr 15 22:37:45 atlantis /kernel: (ahc0:0:0): "Quantum XP32150 81HB" type 0 fixed SCSI 2
Apr 15 22:37:45 atlantis /kernel: sd0(ahc0:0:0): Direct-Access 2050MB (4199760 512 byte sectors)
Apr 15 22:37:45 atlantis /kernel: sd0(ahc0:0:0): with 3907 cyls, 10 heads, and an average 107 sectors/track
Apr 15 22:37:45 atlantis /kernel: ahc0: target 1 synchronous at 10.0MHz, offset = 0xf
Apr 15 22:37:45 atlantis /kernel: (ahc0:1:0): "IBM DPES-31080 S31Q" type 0 fixed SCSI 2
Apr 15 22:37:45 atlantis /kernel: sd1(ahc0:1:0): Direct-Access 1034MB (2118144 512 byte sectors)
Apr 15 22:37:45 atlantis /kernel: sd1(ahc0:1:0): with 4903 cyls, 4 heads, and an average 108 sectors/track
Apr 15 22:37:45 atlantis /kernel: ahc0: target 2 synchronous at 10.0MHz, offset = 0xf
Apr 15 22:37:45 atlantis /kernel: (ahc0:2:0): "Quantum XP32150W L912" type 0 fixed SCSI 2
Apr 15 22:37:45 atlantis /kernel: sd2(ahc0:2:0): Direct-Access 2151MB (4406960 512 byte sectors)
Apr 15 22:37:45 atlantis /kernel: sd2(ahc0:2:0): with 3907 cyls, 10 heads, and an average 112 sectors/track
Apr 15 22:37:45 atlantis /kernel: ahc0: target 3 synchronous at 10.0MHz, offset = 0xf
Apr 15 22:37:45 atlantis /kernel: (ahc0:3:0): "iomega jaz 1GB H.72" type 0 removable SCSI 2
Apr 15 22:37:45 atlantis /kernel: sd3(ahc0:3:0): Direct-Access 
Apr 15 22:37:45 atlantis /kernel: sd3(ahc0:3:0): ILLEGAL REQUEST asc:24,0 Invalid field in CDB
Apr 15 22:37:45 atlantis /kernel: sd3 could not mode sense (4). Using ficticious geometry
Apr 15 22:37:45 atlantis /kernel: 
Apr 15 22:37:45 atlantis /kernel: sd3(ahc0:3:0): NOT READY asc:3a,0 Medium not present
Apr 15 22:37:45 atlantis /kernel: sd3: could not get size
Apr 15 22:37:45 atlantis /kernel: 0MB (0 512 byte sectors)
Apr 15 22:37:45 atlantis /kernel: sd3(ahc0:3:0): with 0 cyls, 64 heads, and an average 32 sectors/track
Apr 15 22:37:46 atlantis /kernel: ahc0: target 4 synchronous at 10.0MHz, offset = 0xf
Apr 15 22:37:46 atlantis /kernel: (ahc0:4:0): "PLEXTOR CD-ROM PX-12CS 1.00" type 5 removable SCSI 2
Apr 15 22:37:46 atlantis /kernel: cd0(ahc0:4:0): CD-ROM can't get the size
Apr 15 22:37:46 atlantis /kernel: ahc0:A:5: refuses synchronous negotiation. Using asynchronous transfers
Apr 15 22:37:46 atlantis /kernel: (ahc0:5:0): "HP CD-Writer 6020 1.07" type 5 removable SCSI 2
Apr 15 22:37:46 atlantis /kernel: worm is configured at 0
Apr 15 22:37:46 atlantis /kernel: worm0(ahc0:5:0): Write-Once 
Apr 15 22:37:46 atlantis /kernel: (ahc0:6:0): "ARCHIVE VIPER 150  21247 -011" type 1 removable SCSI 1
Apr 15 22:37:46 atlantis /kernel: st0(ahc0:6:0): Sequential-Access density code 0x0,  drive empty
Apr 15 22:37:46 atlantis /kernel: pci0: uses 8392704 bytes of memory from fa800000 upto fb7fffff.
Apr 15 22:37:46 atlantis /kernel: pci0: uses 272 bytes of I/O space from e000 upto e80f.
Apr 15 22:37:46 atlantis /kernel: Probing for devices on the ISA bus:
Apr 15 22:37:46 atlantis /kernel: sc0: the current keyboard controller command byte 0067
Apr 15 22:37:46 atlantis /kernel: kbdio: RESET_KBD return code:00fa
Apr 15 22:37:46 atlantis /kernel: kbdio: RESET_KBD status:00aa
Apr 15 22:37:46 atlantis /kernel: sc0 at 0x60-0x6f irq 1 on motherboard
Apr 15 22:37:46 atlantis /kernel: sc0: VGA color <16 virtual consoles, flags=0x0>
Apr 15 22:37:46 atlantis /kernel: sio0 at 0x3f8-0x3ff irq 4 on isa
Apr 15 22:37:46 atlantis /kernel: sio0: type 16550A
Apr 15 22:37:46 atlantis /kernel: sio1 at 0x2f8-0x2ff irq 3 on isa
Apr 15 22:37:46 atlantis /kernel: sio1: type 16550A
Apr 15 22:37:46 atlantis /kernel: lpt0 at 0x378-0x37f irq 7 on isa
Apr 15 22:37:46 atlantis /kernel: lpt0: Interrupt-driven port
Apr 15 22:37:46 atlantis /kernel: lp0: TCP/IP capable interface
Apr 15 22:37:46 atlantis /kernel: fdc0 at 0x3f0-0x3f7 irq 6 drq 2 on isa
Apr 15 22:37:46 atlantis /kernel: fdc0: NEC 72065B
Apr 15 22:37:46 atlantis /kernel: fd0: 1.44MB 3.5in
Apr 15 22:37:46 atlantis /kernel: fd1: 1.2MB 5.25in
Apr 15 22:37:46 atlantis /kernel: npx0 on motherboard
Apr 15 22:37:46 atlantis /kernel: npx0: INT 16 interface
Apr 15 22:37:46 atlantis /kernel: sb0 at 0x220 irq 5 drq 1 on isa
Apr 15 22:37:47 atlantis /kernel: sb0: <SoundBlaster 16 4.5>
Apr 15 22:37:47 atlantis /kernel: sbxvi0 at 0x0 drq 5 on isa
Apr 15 22:37:47 atlantis /kernel: sbxvi0: <SoundBlaster 16 4.5>
Apr 15 22:37:47 atlantis /kernel: sbmidi0 at 0x330 on isa
Apr 15 22:37:47 atlantis /kernel:  <SoundBlaster MPU-401>
Apr 15 22:37:47 atlantis /kernel: imasks: bio c0000840, tty c003009a, net c003009a
Apr 15 22:37:47 atlantis /kernel: BIOS Geometries:
Apr 15 22:37:47 atlantis /kernel:  0:0104fe3f 0..260=261 cylinders, 0..254=255 heads, 1..63=63 sectors
Apr 15 22:37:47 atlantis /kernel:  1:0082fe3f 0..130=131 cylinders, 0..254=255 heads, 1..63=63 sectors
Apr 15 22:37:47 atlantis /kernel:  0 accounted for
Apr 15 22:37:47 atlantis /kernel: Device configuration finished.
Apr 15 22:37:47 atlantis /kernel: Considering FFS root f/s.
Apr 15 22:37:47 atlantis /kernel: configure() finished.
Apr 15 22:37:47 atlantis /kernel: sd0s1: type 0x6, start 63, end = 931769, size 931707 : OK
Apr 15 22:37:47 atlantis /kernel: sd0s2: type 0x5, start 931770, end = 2377619, size 1445850 : OK
Apr 15 22:37:47 atlantis /kernel: sd0s3: type 0xa5, start 2377620, end = 4192964, size 1815345 : OK
Apr 15 22:37:47 atlantis /kernel: sd0s5: type 0x6, start 931833, end = 2377619, size 1445787 : OK
Apr 15 22:37:47 atlantis /kernel: sd2s1: type 0xa5, start 63, end = 4403510, size 4403448 
Apr 15 22:37:47 atlantis /kernel: sd2s1: C/H/S end 274/26/63 (467774) != end 4403510: invalid
Apr 15 22:37:48 atlantis lpd[113]: restarted
Apr 15 22:37:53 atlantis login: login on ttyv0 as hfwirth

END OF BOOT SEQUENCE

>Description:

	Adaptec hangs with 'timeout while idle' and similar messages
	The error seems to happen much more frequently while compiling
	something, ie. writing to the disk. Swapping operations (I have
	a memory file system mounted (see below) seem to trigger the bug
	too.
>How-To-Repeat:

	Every operation which causes a bit more disk traffic. As I am
	alone on this machine, disk traffic is never really heavy !
	Compiling a software package such as the kernel always triggers
	the bug.

>Fix:

	Unknown
>Audit-Trail:
>Unformatted:
>df
Filesystem  1K-blocks     Used    Avail Capacity iused   ifree  %iused  Mounted on
/dev/sd0a       29727    18489     8860    68%    1162    6516    15%   /
procfs              4        4        0   100%      30     310     9%   /proc
kernfs              1        1        0   100%       0       0   100%   /kern
mfs:20          15007        3    13804     0%       4    7674     0%   /tmp
/dev/sd0s3e    761351   546295   154148    78%   21145  163173    11%   /usr
/dev/sd2s1e   2015544  1289103   565198    70%   98248  393270    20%   /home

	The problem was worse before todays upgrade. The machine hanged
	every time and I had to reboot with the reset button.
	With todays changes the machine has the error frequently, but it
	recovers after it.

Here is the error log, all of these happened while compiling the kernel:

Apr 15 22:29:40 atlantis /kernel: sd0(ahc0:0:0): SCB 0x3 - timed out while idle, LASTPHASE == 0x1, SCSISIGI == 0x0
Apr 15 22:29:40 atlantis /kernel: SEQADDR = 0xa SCSISEQ = 0x12 SSTAT0 = 0x5 SSTAT1 = 0xa
Apr 15 22:29:40 atlantis /kernel: sd0(ahc0:0:0): Queueing an Abort SCB
Apr 15 22:29:40 atlantis /kernel: sd0(ahc0:0:0): Abort Message Sent
Apr 15 22:29:40 atlantis /kernel: sd0(ahc0:0:0): SCB 3 - Abort Completed.
Apr 15 22:29:40 atlantis /kernel: sd0(ahc0:0:0): no longer in timeout
Apr 15 22:31:16 atlantis /kernel: sd0(ahc0:0:0): SCB 0x0 - timed out while idle, LASTPHASE == 0x1, SCSISIGI == 0x0
Apr 15 22:31:16 atlantis /kernel: SEQADDR = 0x7 SCSISEQ = 0x12 SSTAT0 = 0x5 SSTAT1 = 0xa
Apr 15 22:31:16 atlantis /kernel: sd0(ahc0:0:0): Queueing an Abort SCB
Apr 15 22:31:16 atlantis /kernel: sd0(ahc0:0:0): Abort Message Sent
Apr 15 22:31:16 atlantis /kernel: sd0(ahc0:0:0): SCB 0 - Abort Completed.
Apr 15 22:31:16 atlantis /kernel: sd0(ahc0:0:0): no longer in timeout
Apr 15 22:32:32 atlantis /kernel: sd0(ahc0:0:0): SCB 0x0 - timed out while idle, LASTPHASE == 0x1, SCSISIGI == 0x0
Apr 15 22:32:32 atlantis /kernel: SEQADDR = 0x7 SCSISEQ = 0x12 SSTAT0 = 0x5 SSTAT1 = 0xa
Apr 15 22:32:32 atlantis /kernel: sd0(ahc0:0:0): Queueing an Abort SCB
Apr 15 22:32:32 atlantis /kernel: sd0(ahc0:0:0): Abort Message Sent
Apr 15 22:32:32 atlantis /kernel: sd0(ahc0:0:0): SCB 0 - Abort Completed.
Apr 15 22:32:32 atlantis /kernel: sd0(ahc0:0:0): no longer in timeout
Apr 15 22:32:34 atlantis /kernel: sd2(ahc0:2:0): SCB 0x2 - timed out while idle, LASTPHASE == 0x1, SCSISIGI == 0x0
Apr 15 22:32:34 atlantis /kernel: SEQADDR = 0x9 SCSISEQ = 0x12 SSTAT0 = 0x5 SSTAT1 = 0xa
Apr 15 22:32:34 atlantis /kernel: sd2(ahc0:2:0): Queueing an Abort SCB
Apr 15 22:32:34 atlantis /kernel: sd2(ahc0:2:0): Abort Message Sent
Apr 15 22:32:34 atlantis /kernel: sd2(ahc0:2:0): SCB 2 - Abort Completed.
Apr 15 22:32:34 atlantis /kernel: sd2(ahc0:2:0): no longer in timeout
Apr 15 22:33:26 atlantis /kernel: sd0(ahc0:0:0): SCB 0x0 - timed out while idle, LASTPHASE == 0x1, SCSISIGI == 0x0
Apr 15 22:33:26 atlantis /kernel: SEQADDR = 0x9 SCSISEQ = 0x12 SSTAT0 = 0x5 SSTAT1 = 0xa
Apr 15 22:33:26 atlantis /kernel: sd0(ahc0:0:0): Queueing an Abort SCB
Apr 15 22:33:26 atlantis /kernel: sd0(ahc0:0:0): Abort Message Sent
Apr 15 22:33:26 atlantis /kernel: sd0(ahc0:0:0): SCB 0 - Abort Completed.
Apr 15 22:33:26 atlantis /kernel: sd0(ahc0:0:0): no longer in timeout
Apr 15 22:33:34 atlantis /kernel: sd2(ahc0:2:0): SCB 0x2 - timed out while idle, LASTPHASE == 0x1, SCSISIGI == 0x0
Apr 15 22:33:34 atlantis /kernel: SEQADDR = 0x7 SCSISEQ = 0x12 SSTAT0 = 0x5 SSTAT1 = 0xa
Apr 15 22:33:34 atlantis /kernel: sd2(ahc0:2:0): Queueing an Abort SCB
Apr 15 22:33:34 atlantis /kernel: sd2(ahc0:2:0): Abort Message Sent
Apr 15 22:33:34 atlantis /kernel: sd2(ahc0:2:0): SCB 2 - Abort Completed.
Apr 15 22:33:34 atlantis /kernel: sd2(ahc0:2:0): no longer in timeout
Apr 15 22:33:38 atlantis /kernel: sd0(ahc0:0:0): SCB 0x0 - timed out while idle, LASTPHASE == 0x1, SCSISIGI == 0x0
Apr 15 22:33:38 atlantis /kernel: SEQADDR = 0x9 SCSISEQ = 0x12 SSTAT0 = 0x5 SSTAT1 = 0xa
Apr 15 22:33:38 atlantis /kernel: sd0(ahc0:0:0): Queueing an Abort SCB
Apr 15 22:33:38 atlantis /kernel: sd0(ahc0:0:0): Abort Message Sent
Apr 15 22:33:38 atlantis /kernel: sd0(ahc0:0:0): SCB 0 - Abort Completed.
Apr 15 22:33:38 atlantis /kernel: sd0(ahc0:0:0): no longer in timeout

END OF ERROR LOG

The error seems to be on both unix disks sd0 and sd2 (sd1 is purely DOS/WIN95 and 
therefore not mounted).

This sort of errors never occured while I was using FreeBSD-2.1.7-STABLE.
Since switching to 2.2-STABLE (about two weeks ago) the system is unreliable
and because of this error I cannot really use it. 

I have problems with the second Quantum ATLAS and DOS/WIN95, I cannot access
it properly under DOS or Win95. I wrote to Adaptec, but got no usable
answer. I think there is a bios problem, but it did not affect 2.1.7-STABLE
so I think it has nothing to do with this bug.

I am thinking of dumping this sorry excuse for an SCSI Adapter, have you
any recommendations ?
  




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199704152102.XAA00577>