Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 14 Nov 1998 16:43:54 -0800
From:      Bill Trost <trost@cloud.rain.com>
To:        scsi@FreeBSD.ORG
Subject:   tape hang problem
Message-ID:  <466.911090634@cloud.rain.com>

next in thread | raw e-mail | index | archive | help
I have one single (irreplaceable backup )-: ) tape that is causing my
system to hang (i.e., nothing is running, although the console tty
driver still responds) when it reaches block 24342 of the file on the
tape.  It is doing this with an Adaptec 2940 and a -current kernel from
12 Novemeber at 10:00 PST.  It was also doing it with an aic-based
SCSI card and a kernel that just predated CAM (as well as some earlier
predecessors).  The tape drive is an ARCHIVE Python.  Attached to the
end of this message is the complete dmesg output.

When the system hangs, it prints several messages like the following on
the console:

	(da0:ahc0:0:0:...) SCB 0x11 - timed out in datain phase, SCSISIGI == 0x44
		SEQADDR == 0x110,
		SSTATI == 0x2

It does this for several different SCB's, then starts saying

	swap_pager: indefinite wait buffer: device 0x30401, blkno 296, size 4096

which is presamably an indication that the entire SCSI bus (at least)
has collapsed (there is swap on da0).

Also I had to make the following change at the top of
/sys/pci/ahc_pci.c:ahc_pci_attach to make my particular SCSI card and
motherboard work together (this code is from Justin Gibbs, more or
less):

	u_int32_t csize_lattime = pci_conf_read(config_id, CSIZE_LATTIME);
	printf("csize_lattime = %lx\n", csize_lattime);
	csize_lattime &= ~CACHESIZE;
	pci_conf_write(config_id, CSIZE_LATTIME, csize_lattime);

I poked around with ddb after the hang occured, but what little I saw
did not suggest to me any particular problem (how do you find out the
interrupt mask under ddb, anyhow?).

In any case -- any ideas as to what is causing this problem, and better
yet, what to do about it?


	FreeBSD 3.0-BETA #2: Tue Oct 13 10:21:06 PDT 1998
	    x@grey.cloud.rain.com:/usr/src/sys/compile/GREY
	Timecounter "i8254"  frequency 1193182 Hz
	Timecounter "TSC"  frequency 89814501 Hz
	CPU: AMD-K5(tm) Processor (89.81-MHz 586-class CPU)
	  Origin = "AuthenticAMD"  Id = 0x514  Stepping=4
	  Features=0x21bf<FPU,VME,DE,PSE,TSC,MSR,MCE,CX8,PGE>
	real memory  = 33554432 (32768K bytes)
	config> quit
	avail memory = 30236672 (29528K bytes)
	Probing for devices on PCI bus 0:
	chip0: <Intel 82439> rev 0x03 on pci0.0.0
	chip1: <Intel 82371SB PCI to ISA bridge> rev 0x01 on pci0.7.0
	ide_pci0: <Intel PIIX3 Bus-master IDE controller> rev 0x00 on pci0.7.1
	ahc0: <Adaptec 2940 Ultra SCSI adapter> rev 0x01 int a irq 7 on pci0.17.0
	csize_lattime = 4004
	ahc0: aic7880 Single Channel A, SCSI Id=7, 16/255 SCBs
	vga0: <Trident model 9660 VGA-compatible display device> rev 0xd3 int a irq 10 on pci0.20.0
	Probing for devices on the ISA bus:
	sc0 at 0x60-0x6f irq 1 on motherboard
	sc0: VGA color <16 virtual consoles, flags=0x0>
	ed0 not found at 0x280
	ed1 at 0x300-0x31f irq 5 on isa
	ed1: address 00:40:05:11:50:43, type NE2000 (16 bit) 
	sio0 at 0x3f8-0x3ff irq 4 on isa
	sio0: type 16550A
	sio1 at 0x2f8-0x2ff irq 3 on isa
	sio1: type 16550A
	lpt0 at 0x378-0x37f irq 7 on isa
	lpt0: Interrupt-driven port
	lp0: TCP/IP capable interface
	fdc0 at 0x3f0-0x3f7 irq 6 drq 2 on isa
	fdc0: FIFO enabled, 8 bytes threshold
	fd0: 1.44MB 3.5in
	wdc0 at 0x1f0-0x1f7 irq 14 on isa
	wdc0: unit 0 (wd0): <WDC AC31000H>
	wd0: 1033MB (2116800 sectors), 2100 cyls, 16 heads, 63 S/T, 512 B/S
	wdc1 at 0x170-0x177 irq 15 on isa
	wdc1: unit 0 (wd2): <WDC AC2850F>
	wd2: 814MB (1667232 sectors), 1654 cyls, 16 heads, 63 S/T, 512 B/S
	npx0 on motherboard
	npx0: INT 16 interface
	ccd0-1: Concatenated disk drivers
	Waiting 3 seconds for SCSI devices to settle
	sa0 at ahc0 bus 0 target 4 lun 0
	sa0: <ARCHIVE Python 28388-XXX 4AFA> Removable Sequential Access SCSI2 device 
	sa0: 5.0MB/s transfers (5.0MHz, offset 15)
	da0 at ahc0 bus 0 target 0 lun 0
	da0: <SEAGATE ST11910N 8044> Fixed Direct Access SCSI2 device 
	da0: 10.0MB/s transfers (10.0MHz, offset 15), Tagged Queueing Enabled
	da0: 1682MB (3445129 512 byte sectors: 255H 63S/T 214C)
	changing root device to da0s2a
	cd0 at ahc0 bus 0 target 2 lun 0
	cd0: <SONY CD-ROM CDU-76S 1.1c> Removable CD-ROM SCSI2 device 
	cd0: 5.681MB/s transfers (5.681MHz, offset 15)
	cd0: Attempt to query device size failed: NOT READY, Medium not present
	WARNING: / was not properly dismounted
	(da1:ahc0:0:1:0): SCB 0x4 - timed out while idle, LASTPHASE == 0x1, SCSISIGI == 0x0
	SEQADDR == 0xb
	SSTAT1 == 0xa
	(da1:ahc0:0:1:0): Queuing a BDR SCB
	(da1:ahc0:0:1:0): Bus Device Reset Message Sent
	(da1:ahc0:0:1:0): no longer in timeout, status = 34b
	ahc0: Bus Device Reset on A:1. 1 SCBs aborted
	da1 at ahc0 bus 0 target 1 lun 0
	da1: <iomega jaz 1GB H.62> Removable Direct Access SCSI2 device 
	da1: 10.0MB/s transfers (10.0MHz, offset 15)
	da1: 1021MB (2091050 512 byte sectors: 64H 32S/T 1021C)
	ffs_mountfs: superblock updated for soft updates
	ffs_mountfs: superblock updated for soft updates

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-scsi" in the body of the message



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