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>
