Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 13 Jul 1998 11:12:38 -0600 (MDT)
From:      "Kenneth D. Merry" <ken@plutotech.com>
To:        current@FreeBSD.ORG
Subject:   panic in the dec driver
Message-ID:  <199807131712.LAA03753@panzer.plutotech.com>

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

--ELM900349958-3657-0_
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit


	I got a panic today in the DEC driver, and I was wondering if
anyone has seen anything similar.  Here's a stack trace:

========================================================================
tulip_txput (sc=0xf08b5800, m=0xf0538f00) at machine/pmap.h:172
(kgdb) where
#0  tulip_txput (sc=0xf08b5800, m=0xf0538f00) at machine/pmap.h:172
#1  0xf01cb4ad in tulip_ifstart_one (ifp=0xf08b5818) at ../../pci/if_de.c:4843
#2  0xf017965c in ether_output (ifp=0xf08b5818, m0=0xf0536000, dst=0xf336cb70, 
    rt0=0xf08e7f00) at ../../net/if_ethersubr.c:385
#3  0xf018b6f8 in ip_output (m0=0xf0536000, opt=0x0, ro=0xf336cb6c, flags=0, 
    imo=0x0) at ../../netinet/ip_output.c:532
#4  0xf018ff11 in tcp_output (tp=0xf336cba0) at ../../netinet/tcp_output.c:695
#5  0xf0190f4f in tcp_timers (tp=0xf336cba0, timer=0)
    at ../../netinet/tcp_timer.c:295
#6  0xf0190d64 in tcp_slowtimo () at ../../netinet/tcp_timer.c:151
#7  0xf014bdc3 in pfslowtimo (arg=0x0) at ../../kern/uipc_domain.c:235
#8  0xf013bb63 in softclock () at ../../kern/kern_timeout.c:124
========================================================================

	And here's the snippet of code in question from pmap.h:

static __inline vm_offset_t
pmap_kextract(vm_offset_t va)
{
	vm_offset_t pa;
	if ((pa = (vm_offset_t) PTD[va >> PDRSHIFT]) & PG_PS) {
		pa = (pa & ~(NBPDR - 1)) | (va & (NBPDR - 1));
	} else {
		pa = *(vm_offset_t *)vtopte(va);
		pa = (pa & PG_FRAME) | (va & PAGE_MASK);
	}
	return pa;
}

	The kernel is a CAM kernel based on source from Saturday.  (July 11th)
This is *not* a CAM problem, however, since I can reproduce the behavior that
leads to the panic on a stock current kernel.

	I think it's dying in vtopte().

	The way I reproduce this is:

machine A:	P6/233, 128MB RAM, Adaptec 2940, Intel 82558
machine B: 	P5/133, 32MB RAM, Adaptec 2940, DEC 21140-based card

both machines are running -current + CAM as of Saturday

- rlogin from machine A to machine B
- do a find . -print on machine B
- find process hangs almost immediately, in the 'ttywri' state.
- I can still do things on the console, and I can still do network I/O to
  and from the box even.
- if I do one more keystroke in the rlogin session (xterm), machine B locks
  up hard.  Numlock doesn't work, ctl-alt-esc doesn't work, ctl-alt-del
  doesn't work.
- I waited a while, and then got the above panic

	I can reproduce this at will on machine B.  I've attached the
kernel config file and dmesg output.

	I previously had a kernel based on sources from July 6th on the
machine.  That kernel worked just fine.  I know that Peter Wemm made a small
change to the DEC driver on July 8th, but I'm not positive that it's the
source of the problem.

	I have tried disabling, the ipfw code and the snp device, with the
idea that they might be contributing to the problem.  That made no
difference.  The next step is to put an Intel card in and see if I get the
same behavior with the fxp driver.  I'm trying to track down a spare card
now...

	Anyway, if anyone has seen similar behavior, let me know.

Ken
-- 
Kenneth Merry
ken@plutotech.com

--ELM900349958-3657-0_
Content-Type: text/plain; charset=ISO-8859-1
Content-Disposition: attachment; filename=bladerunner
Content-Description: bladerunner
Content-Transfer-Encoding: 7bit

#
# GENERIC -- Generic machine with WD/AHx/NCR/BTx family disks
#
# For more information read the handbook part System Administration -> 
# Configuring the FreeBSD Kernel -> The Configuration File. 
# The handbook is available in /usr/share/doc/handbook or online as
# latest version from the FreeBSD World Wide Web server 
# <URL:http://www.FreeBSD.ORG/>;
#
# An exhaustive list of options and more detailed explanations of the 
# device lines is present in the ./LINT configuration file. If you are 
# in doubt as to the purpose or necessity of a line, check first in LINT.
#
#	$Id: GENERIC,v 1.77.2.1 1996/12/21 02:10:50 se Exp $

machine		"i386"
# cpu		"I386_CPU"
# cpu		"I486_CPU"
cpu		"I586_CPU"
cpu		"I686_CPU"
ident		bladerunner
maxusers	64

options		INET			#InterNETworking
options		FFS			#Berkeley Fast Filesystem
options		NFS			#Network Filesystem
options		UNION			#Union filesystem
options		MFS			#Memory File System
options		MSDOSFS			#MSDOS Filesystem
options		"CD9660"		#ISO 9660 Filesystem
options		PROCFS			#Process filesystem
options		"COMPAT_43"		#Compatible with BSD 4.3 [KEEP THIS!]
options		SCSI_DELAY=3		#Be pessimistic about Joe SCSI device
options		UCONSOLE		#Allow users to grab the console
# options		USERCONFIG		#boot -c editor
# options		VISUAL_USERCONFIG	#visual boot -c editor
#options		CHILD_MAX=128
#options		OPEN_MAX=128
options		SYSVSHM
options		SYSVSEM
options		SYSVMSG
options		KTRACE
options		MROUTING
options		IPFIREWALL
options		IPFIREWALL_VERBOSE
options		"IPFIREWALL_VERBOSE_LIMIT=100"
options		IPDIVERT
options		DEVFS
# options		"MAXMEM=(128*1024)"
options		MAXCONS=16
options		AHC_ALLOW_MEMIO
options		COMPAT_LINUX
options		DDB
#options		CDDEBUG
#options		NO_SCHEDULE_MODS
options		"CAM_MAX_HIGHPOWER=8"
options		"CHANGER_MIN_BUSY_SECONDS=3"
options		"CHANGER_MAX_BUSY_SECONDS=11"
options		"MSGBUF_SIZE=32768"

config		kernel	root on da0
# config		kernel	root on da0

controller	isa0
# controller	eisa0
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
# tape		ft0	at fdc0 drive 2

# A single entry for any of these controllers (ncr, ahb, ahc, amd) is
# sufficient for any number of installed devices.
controller	ahc0
controller	adv0
controller	adv1	at isa? port ? cam irq ?

controller	scbus0

device		da0

device		cd0	#Only need one of these, the code dynamically grows

# Ken's passthrough SCSI driver
device		pass0

device		sa0

device		ch0

# controller	snd0
# device		gus0 at isa? vector gusintr
# device		gus0 at isa? port 0x220 irq 11 drq 1 flags 0x3 vector gusintr


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

# Mandatory, don't remove
device		npx0	at isa? port "IO_NPX" irq 13 vector npxintr

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

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

# Order is important here due to intrusive probes, do *not* alphabetize
# this list of network interfaces until the probes have been fixed.
# Right now it appears that the ie0 must be probed before ep0. See
# revision 1.20 of this file.
device de0
device fxp0
# device vx0

# device ed0 at isa? port 0x280 net irq  5 iomem 0xd8000 vector edintr

pseudo-device	loop
pseudo-device	ether
pseudo-device	sl	1
# ijppp uses tun instead of ppp device
#pseudo-device	ppp	1
pseudo-device	tun	3
pseudo-device	pty	128
pseudo-device	gzip		# Exec gzipped a.out's
pseudo-device	bpfilter	4
pseudo-device	snp	3
pseudo-device	vn

--ELM900349958-3657-0_
Content-Type: text/plain; charset=ISO-8859-1
Content-Disposition: attachment; filename=br.dmesg
Content-Description: br.dmesg
Content-Transfer-Encoding: 7bit

Copyright (c) 1992-1998 FreeBSD Inc.
Copyright (c) 1982, 1986, 1989, 1991, 1993
	The Regents of the University of California. All rights reserved.
FreeBSD 3.0-CURRENT #0: Mon Jul 13 10:10:19 MDT 1998
    ken@roadwarrior.plutotech.com:/usr/home/ken/perforce/cam/sys/compile/bladerunner
Calibrating clock(s) ... TSC clock: 132207328 Hz, i8254 clock: 1193540 Hz
CLK_USE_I8254_CALIBRATION not specified - using default frequency
Timecounter "i8254"  frequency 1193182 Hz  cost 2533 ns
CLK_USE_TSC_CALIBRATION not specified - using old calibration method
Timecounter "TSC"  frequency 132168541 Hz  cost 173 ns
CPU: Pentium/P54C (132.17-MHz 586-class CPU)
  Origin = "GenuineIntel"  Id = 0x52b  Stepping=11
  Features=0x1bf<FPU,VME,DE,PSE,TSC,MSR,MCE,CX8>
real memory  = 33554432 (32768K bytes)
Physical memory chunk(s):
0x00001000 - 0x0009efff, 647168 bytes (158 pages)
0x00299000 - 0x01ff7fff, 30797824 bytes (7519 pages)
avail memory = 30150656 (29444K bytes)
Found BIOS32 Service Directory header at 0xf00f6f10
Entry = 0xf6f20 (0xf00f6f20)  Rev = 0  Len = 1
PCI BIOS entry at 0x6f41
Other BIOS signatures found:
ACPI: 00000000
$PnP: 000f9500
DEVFS: ready for devices
pci_open(1):	mode 1 addr port (0x0cf8) is 0x8000384c
pci_open(1a):	mode1res=0x80000000 (0x80000000)
pci_cfgcheck:	device 0 [class=060000] [hdr=00] is there (id=122d8086)
Probing for devices on PCI bus 0:
found->	vendor=0x8086, dev=0x122d, revid=0x02
	class=06-00-00, hdrtype=0x00, mfdev=0
chip0: <Intel 82437FX PCI cache memory controller> rev 0x02 on pci0.0.0
	CPU Inactivity timer:  clocks
	Peer Concurrency: enabled
	CPU-to-PCI Write Bursting: enabled
	PCI Streaming: enabled
	Bus Concurrency: enabled
	Cache: 256K pipelined-burst secondary; L1 enabled
	DRAM: no memory hole, 66 MHz refresh
	Read burst timing: x-2-2-2/x-3-3-3
	Write burst timing: x-3-3-3
	RAS-CAS delay: 3 clocks
found->	vendor=0x8086, dev=0x122e, revid=0x02
	class=06-01-00, hdrtype=0x00, mfdev=1
chip1: <Intel 82371FB PCI to ISA bridge> rev 0x02 on pci0.7.0
	I/O Recovery Timing: 8-bit 8 clocks, 16-bit 4 clocks
	Extended BIOS: disabled
	Lower BIOS: disabled
	Coprocessor IRQ13: enabled
	Mouse IRQ12: disabled
	Interrupt Routing: A: IRQ12, B: disabled, C: IRQ10, D: IRQ12
		MB0: disabled, MB1: disabled
found->	vendor=0x8086, dev=0x1230, revid=0x02
	class=01-01-80, hdrtype=0x00, mfdev=0
found->	vendor=0x9004, dev=0x8178, revid=0x00
	class=01-00-00, hdrtype=0x00, mfdev=0
	intpin=a, irq=12
	map[0]: type 4, range 32, base 0000f400, size  8
	map[1]: type 1, range 32, base ffbdd000, size 12
ahc0: <Adaptec 2940 Ultra SCSI adapter> rev 0x00 int a irq 12 on pci0.17.0
ahc0: Reading SEEPROM...done.
ahc0: internal SE 50 cable is present, internal SE 68 cable is present
ahc0: external SE cable not present
ahc0: BIOS eeprom is present
ahc0: SE High byte termination Enabled
ahc0: aic7880 Wide Channel A, SCSI Id=7, 16/255 SCBs
ahc0: Downloading Sequencer Program... 419 instructions downloaded
found->	vendor=0x1011, dev=0x0009, revid=0x12
	class=02-00-00, hdrtype=0x00, mfdev=0
	intpin=a, irq=10
	map[0]: type 4, range 32, base 0000f880, size  7
	map[1]: type 1, range 32, base ffbdef80, size  7
de0: <Digital 21140 Fast Ethernet> rev 0x12 int a irq 10 on pci0.18.0
de0: 21140 [10-100Mb/s] pass 1.2
de0: address 00:40:05:21:04:a3
bpf: de0 attached
found->	vendor=0x1002, dev=0x4758, revid=0x03
	class=03-00-00, hdrtype=0x00, mfdev=0
	map[0]: type 1, range 32, base fe000000, size 24
vga0: <ATI Mach64-GX graphics accelerator> rev 0x03 on pci0.19.0
found->	vendor=0x9004, dev=0x8178, revid=0x00
	class=01-00-00, hdrtype=0x00, mfdev=0
	intpin=a, irq=12
	map[0]: type 4, range 32, base 0000fc00, size  8
	map[1]: type 1, range 32, base ffbdf000, size 12
ahc1: <Adaptec 2940 Ultra SCSI adapter> rev 0x00 int a irq 12 on pci0.20.0
	using shared irq12.
ahc1: Reading SEEPROM...done.
ahc1: SE Low byte termination Enabled
ahc1: SE High byte termination Enabled
ahc1: aic7880 Wide Channel A, SCSI Id=7, 16/255 SCBs
ahc1: Resetting Channel A
ahc1: Downloading Sequencer Program... 419 instructions downloaded
Probing for devices on the ISA bus:
sc0: the current keyboard controller command byte 0045
kbdio: DIAGNOSE status:0055
kbdio: TEST_KBD_PORT status:0000
kbdio: RESET_KBD return code:00fa
kbdio: RESET_KBD status:00aa
sc0: keyboard device ID: ab41
sc0 at 0x60-0x6f irq 1 on motherboard
sc0: BIOS video mode:3
sc0: VGA registers upon power-up
50 18 10 00 10 00 03 00 02 67 5f 4f 50 82 55 81 
bf 1f 00 4f 0d 0e 00 00 07 80 9c 8e 8f 28 1f 96 
b9 a3 ff 00 01 02 03 04 05 14 07 38 39 3a 3b 3c 
3d 3e 3f 0c 00 0f 08 00 00 00 00 00 10 0e 00 ff 
sc0: video mode:24
sc0: VGA registers in BIOS for mode:24
50 18 10 00 10 00 03 00 02 67 5f 4f 50 82 55 81 
bf 1f 00 4f 0d 0e 00 00 00 00 9c 8e 8f 28 1f 96 
b9 a3 ff 00 01 02 03 04 05 14 07 38 39 3a 3b 3c 
3d 3e 3f 0c 00 0f 08 00 00 00 00 00 10 0e 00 ff 
sc0: VGA registers to be used for mode:24
50 18 10 00 10 00 03 00 02 67 5f 4f 50 82 55 81 
bf 1f 00 4f 0d 0e 00 00 00 00 9c 8e 8f 28 1f 96 
b9 a3 ff 00 01 02 03 04 05 14 07 38 39 3a 3b 3c 
3d 3e 3f 0c 00 0f 08 00 00 00 00 00 10 0e 00 ff 
sc0: rows_offset:1
sc0: VGA color <16 virtual consoles, flags=0x0>
sio0: irq maps: 0x1 0x11 0x1 0x1
sio0 at 0x3f8-0x3ff irq 4 on isa
sio0: type 16550A
sio1: reserved for low-level i/o
sio1 not found at 0x2f8
lpt0: disabled, not probed.
lpt1: disabled, not probed.
fdc0 at 0x3f0-0x3f7 irq 6 drq 2 on isa
fd0: 1.44MB 3.5in
adv1: AdvanSys SCSI Host Adapter, SCSI ID 7, queue depth 16
adv1 at 0x110 irq 11 drq 5 on isa
npx0 on motherboard
npx0: INT 16 interface
i586_bzero() bandwidth = 110375275 bytes/sec
bzero() bandwidth = 86926286 bytes/sec
imasks: bio c0080040, tty c0070412, net c0070412
BIOS Geometries:
 0:03f13f20 0..1009=1010 cylinders, 0..63=64 heads, 1..32=32 sectors
 1:0104fe3f 0..260=261 cylinders, 0..254=255 heads, 1..63=63 sectors
 0 accounted for
Device configuration finished.
Intel Pentium F00F detected, installing workaround
DEVFS: ready to run
Linux-ELF exec handler installed
bpf: tun0 attached
bpf: tun1 attached
bpf: tun2 attached
bpf: sl0 attached
bpf: lo0 attached
IP packet filtering initialized, divert enabled, rule-based forwarding disabled, logging limited to 100 packets/entry
SCSI bus reset delivered. 0 SCBs aborted.
SCSI bus reset delivered. 0 SCBs aborted.
ahc1: Selection Timeout. 1 SCBs aborted
ahc0: Selection Timeout. 1 SCBs aborted
ahc1: Selection Timeout. 1 SCBs aborted
ahc0: Selection Timeout. 1 SCBs aborted
ahc1: Selection Timeout. 1 SCBs aborted
ahc0: Selection Timeout. 1 SCBs aborted
ahc0: Selection Timeout. 1 SCBs aborted
ahc1: Selection Timeout. 1 SCBs aborted
ahc0: Selection Timeout. 1 SCBs aborted
ahc1: Selection Timeout. 1 SCBs aborted
ahc0: Selection Timeout. 1 SCBs aborted
ahc1: Selection Timeout. 1 SCBs aborted
ahc0: Selection Timeout. 1 SCBs aborted
ahc1: Selection Timeout. 1 SCBs aborted
ahc0: Selection Timeout. 1 SCBs aborted
ahc1: Selection Timeout. 1 SCBs aborted
ahc0: Selection Timeout. 1 SCBs aborted
ahc1: Selection Timeout. 1 SCBs aborted
ahc0: Selection Timeout. 1 SCBs aborted
ahc0: target 3 synchronous at 10.0MHz, offset = 0x8
ahc0: target 3 using asynchronous transfers
ahc0: target 3 synchronous at 10.0MHz, offset = 0x8
ahc0: target 6 synchronous at 4.0MHz, offset = 0xf
ahc0: target 6 using asynchronous transfers
ahc0: target 6 synchronous at 4.0MHz, offset = 0xf
ahc0: target 5 synchronous at 5.0MHz, offset = 0xf
ahc0: target 1 synchronous at 20.0MHz, offset = 0xf
ahc0: target 0 using 16bit transfers
ahc0: target 0 synchronous at 10.0MHz, offset = 0x8
ahc1: Selection Timeout. 1 SCBs aborted
ahc1: Selection Timeout. 1 SCBs aborted
ahc1: Selection Timeout. 1 SCBs aborted
ahc1: Selection Timeout. 1 SCBs aborted
ahc1:A:3: refuses synchronous negotiation. Using asynchronous transfers
ahc1: target 4 synchronous at 4.0MHz, offset = 0xb
ahc1: target 4 using asynchronous transfers
ahc1: target 4 synchronous at 4.0MHz, offset = 0xb
sa0 at ahc0 bus 0 target 5 lun 0
sa0: <ARCHIVE Python 25601-XXX 2.63> Removable Sequential Access SCSI2 device 
sa0: 5.0MB/s transfers (5.0MHz, offset 15)
sa1 at ahc1 bus 0 target 4 lun 0
sa1: <EXABYTE EXB-8500-85Qanx0 0415> Removable Sequential Access SCSI2 device 
sa1: Serial Number 00263194  
sa1: 4.32MB/s transfers (4.32MHz, offset 11)
ahc0: target 3 using asynchronous transfers
pass0 at ahc0 bus 0 taahc0: target 3 synchronous at 10.0MHz, offset = 0x8
rget 0 lun 0
pass0: <SEAGATE ST31230W 0510> Fixed Direct Access SCSI2 device 
pasahc0: target 6 using asynchronous transfers
s0: Serial Number 00893659
pass0: 20.0MB/s transfers (10.0MHz, offset 8, 16bit), Tagged Queueing Enabled
ahc0: target 6 synchronous at 4.0MHz, offset = 0xf
pass1 at ahc0 bus 0 target 1 lun 0
pass1: <SEAGATE ST32155N 0318> Fixed Direct Access SCSI2 device 
pass1: Serial Number 005950490RF5DZ
pass1: 20.0MB/s transfers (20.0MHz, offset 15), Tagged Queueing Enabled
pass2 at ahc0 bus 0 target 3 lun 0
pass2: <PLEXTOR CD-R   PX-R412C 1.04> Removable CD-ROM SCSI2 device 
pass2: 10.0MB/s transfers (10.0MHz, offset 8)
pass3 at ahc0 bus 0 target 5 lun 0
pass3: <ARCHIVE Python 25601-XXX 2.63> Removable Sequential Access SCSI2 device 
pass3: 5.0MB/s transfers (5.0MHz, offset 15)
pass4 at ahc0 bus 0 target 6 lun 0
pass4: <PLEXTOR CD-ROM PX-4XCS 1.04> Removable CD-ROM SCSI2 device 
pass4: 4.32MB/s transfers (4.32MHz, offset 15)
pass5 at ahc1 bus 0 target 3 lun 0
pass5: <EXABYTE EXB-10i 2.6> Removable Changer SCSI2 device 
pass5: 3.300MB/s transfers
pass6 at ahc1 bus 0 target 4 lun 0
pass6: <EXABYTE EXB-8500-85Qanx0 0415> Removable Sequential Access SCSI2 device 
pass6: Serial Number 00263194  
pass6: 4.32MB/s transfers (4.32MHz, offset 11)
da1 at ahc0 bus 0 target 1 lun 0
da1: <SEAGATE ST32155N 0318> Fixed Direct Access SCSI2 device 
da1: Serial Number 005950490RF5DZ
da1: 20.0MB/s transfers (20.0MHz, offset 15), Tagged Queueing Enabled
da1: 2049MB (4197405 512 byte sectors: 255H 63S/T 261C)
da0 at ahc0 bus 0 target 0 lun 0
da0: <SEAGATE ST31230W 0510> Fixed Direct Access SCSI2 device 
da0: Serial Number 00893659
da0: 20.0MB/s transfers (10.0MHz, offset 8, 16bit), Tagged Queueing Enabled
da0: 1010MB (2069860 512 byte sectors: 64H 32S/T 1010C)
cd0 at ahc0 bus 0 target 3 lun 0
cd0: <PLEXTOR CD-R   PX-R412C 1.04> Removable CD-ROM SCSI2 device 
cd0: 10.0MB/s transfers (10.0MHz, offset 8)
cd0: Attempt to query device size failed: NOT READY, Medium not present
cd1 at ahc0 bus 0 target 6 lun 0
cd1: <PLEXTOR CD-ROM PX-4XCS 1.04> Removable CD-ROM SCSI2 device 
cd1: 4.32MB/s transfers (4.32MHz, offset 15)
cd1: Attempt to query device size failed: NOT READY, Medium not present
ch0 at ahc1 bus 0 target 3 lun 0
ch0: <EXABYTE EXB-10i 2.6> Removable Changer SCSI2 device 
ch0: 3.300MB/s transfers
ch0: 10 slots, 1 drive, 1 picker, 0 portals
Considering FFS root f/s.
changing root device to da0s1a
da0s1: type 0xa5, start 32, end = 2068479, size 2068448 : OK

--ELM900349958-3657-0_--

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



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