Date: Fri, 06 Apr 2001 13:55:46 -0400 From: "T. William Wells" <bill@twwells.com> To: FreeBSD-gnats-submit@freebsd.org Subject: kern/26384: dc driver hangs in dc_rxeof Message-ID: <E14laSY-000Bc8-00@twwells.com>
next in thread | raw e-mail | index | archive | help
>Number: 26384
>Category: kern
>Synopsis: dc driver hangs in dc_rxeof
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: freebsd-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Fri Apr 06 11:00:09 PDT 2001
>Closed-Date:
>Last-Modified:
>Originator: T. William Wells
>Release: FreeBSD 4.3-RC i386
>Organization:
>Environment:
System: FreeBSD twwells.com 4.3-RC FreeBSD 4.3-RC #3: Tue Apr 3 00:32:08 EDT 2001 root@twwells.com:/usr/obj/usr/src/sys/TWWELLS i386
Copyright (c) 1992-2001 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
The Regents of the University of California. All rights reserved.
FreeBSD 4.3-RC #3: Tue Apr 3 00:32:08 EDT 2001
root@twwells.com:/usr/obj/usr/src/sys/TWWELLS
Timecounter "i8254" frequency 1193182 Hz
Timecounter "TSC" frequency 350796143 Hz
CPU: AMD-K6(tm) 3D processor (350.80-MHz 586-class CPU)
Origin = "AuthenticAMD" Id = 0x580 Stepping = 0
Features=0x8001bf<FPU,VME,DE,PSE,TSC,MSR,MCE,CX8,MMX>
AMD Features=0x80000800<SYSCALL,3DNow!>
real memory = 134201344 (131056K bytes)
avail memory = 127873024 (124876K bytes)
Preloaded elf kernel "kernel" at 0xc02b9000.
Preloaded userconfig_script "/boot/kernel.conf" at 0xc02b909c.
npx0: <math processor> on motherboard
npx0: INT 16 interface
pcib0: <AcerLabs M1541 (Aladdin-V) PCI host bridge> on motherboard
pci0: <PCI bus> on pcib0
pcib1: <AcerLabs M5243 PCI-PCI bridge> at device 1.0 on pci0
pci1: <PCI bus> on pcib1
chip1: <AcerLabs M15x3 Power Management Unit> at device 3.0 on pci0
isab0: <AcerLabs M1533 portable PCI-ISA bridge> at device 7.0 on pci0
isa0: <ISA bus> on isab0
dc0: <LC82C115 PNIC II 10/100BaseTX> port 0xd800-0xd8ff mem 0xdf000000-0xdf0000ff irq 10 at device 10.0 on pci0
dc0: Ethernet address: 00:a0:cc:e2:ff:24
miibus0: <MII bus> on dc0
dcphy0: <Intel 21143 NWAY media interface> on miibus0
dcphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
pci0: <S3 ViRGE DX/GX graphics accelerator> at 11.0 irq 11
atapci0: <AcerLabs Aladdin ATA33 controller> port 0xd400-0xd40f irq 0 at device 15.0 on pci0
ata1: at 0x170 irq 15 on atapci0
pca0 at port 0x40 on isa0
atkbdc0: <Keyboard controller (i8042)> at port 0x60,0x64 on isa0
atkbd0: <AT Keyboard> flags 0x1 irq 1 on atkbdc0
kbd0 at atkbd0
psm0: <PS/2 Mouse> irq 12 on atkbdc0
psm0: model Generic PS/2 mouse, device ID 0
vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
sc0: <System console> at flags 0x100 on isa0
sc0: VGA <16 virtual consoles, flags=0x300>
sio0 at port 0x3f8-0x3ff irq 4 flags 0x10 on isa0
sio0: type 16550A
sio1 at port 0x2f8-0x2ff irq 3 on isa0
sio1: type 16550A
ppc0: <Parallel port> at port 0x378-0x37f irq 7 on isa0
ppc0: SMC-like chipset (ECP/EPP/PS2/NIBBLE) in COMPATIBLE mode
ppc0: FIFO with 16/16/7 bytes threshold
plip0: <PLIP network interface> on ppbus0
lpt0: <Printer> on ppbus0
lpt0: Interrupt-driven port
ppi0: <Parallel I/O> on ppbus0
fdc0: <NEC 72065B or clone> at port 0x3f0-0x3f5,0x3f7 irq 6 drq 2 on isa0
fdc0: FIFO enabled, 8 bytes threshold
fd0: <1440-KB 3.5" drive> on fdc0 drive 0
aha0 at port 0x330-0x333 irq 9 drq 6 on isa0
aha0: AHA-1540/1542 64 head BIOS FW Rev. 0.8 (ID=41) SCSI Host Adapter, SCSI ID 7, 16 CCBs
IP packet filtering initialized, divert enabled, rule-based forwarding disabled, default to deny, logging limited to 1000 packets/entry by default
DUMMYNET initialized (010124)
acd0: CDROM <SAMSUNG CD-ROM SCR-3231> at ata1-master using PIO4
Waiting 2 seconds for SCSI devices to settle
Mounting root from ufs:/dev/da0s1a
da0 at aha0 bus 0 target 0 lun 0
da0: <QUANTUM FIREBALL SE8.4S PJ0A> Fixed Direct Access SCSI-2 device
da0: 3.300MB/s transfers
da0: 8191MB (16777215 512 byte sectors: 64H 32S/T 8191C)
makeoptions DEBUG=-g
options DDB
machine i386
cpu I486_CPU
cpu I586_CPU
cpu I686_CPU
ident BILL
maxusers 64
options CD9660 #ISO 9660 Filesystem
options CD9660_ROOT #CD-ROM usable as root, CD9660 required
options COMPAT_43 #Compatible with BSD 4.3 [KEEP THIS!]
options DUMMYNET
options FFS #Berkeley Fast Filesystem
options FFS_ROOT #FFS usable as root device [keep this!]
options ICMP_BANDLIM #Rate limit bad replies
options INCLUDE_CONFIG_FILE # Include this file in kernel
options INET #InterNETworking
options IPDIVERT #divert sockets
options IPFIREWALL #firewall
options IPFIREWALL_VERBOSE #print information about dropped packets
options IPFIREWALL_VERBOSE_LIMIT=1000 #limit verbosity
options IPSTEALTH #support for stealth forwarding
options KBD_INSTALL_CDEV # install a CDEV entry in /dev
options KTRACE #kernel tracing
options NO_F00F_HACK #Not a Pentium!
options P1003_1B #Posix P1003_1B real-time extensions
options PROCFS #Process filesystem
options SCSI_DELAY=2000 #Delay (in ms) before probing SCSI
options SOFTUPDATES #Enable FFS soft updates support
options SYSVMSG #SYSV-style message queues
options SYSVSEM #SYSV-style semaphores
options SYSVSHM #SYSV-style shared memory
options UCONSOLE #Allow users to grab the console
options USERCONFIG #boot -c editor
options VISUAL_USERCONFIG #visual boot -c editor
options _KPOSIX_PRIORITY_SCHEDULING
device isa
device pci
device npx0 at nexus? port IO_NPX irq 13
device pca0 at isa? port IO_TIMER1
device atkbdc0 at isa? port IO_KBD
device atkbd0 at atkbdc? irq 1 flags 0x1
device psm0 at atkbdc? irq 12
device vga0 at isa?
device sc0 at isa? flags 0x100
options SC_KERNEL_CONS_ATTR="(FG_WHITE|BG_BLACK)"
options SC_KERNEL_CONS_REV_ATTR="(FG_YELLOW|BG_BLACK)"
options SC_NORM_ATTR="(FG_WHITE|BG_BLUE)"
options SC_NORM_REV_ATTR="(FG_YELLOW|BG_BLUE)"
device sio0 at isa? port IO_COM1 flags 0x10 irq 4
device sio1 at isa? port IO_COM2 irq 3
device ppc0 at isa? irq 7
device ppbus # Parallel port bus (required)
device lpt # Printer
device plip # TCP/IP over parallel
device ppi # Parallel port interface device
device fdc0 at isa? port IO_FD1 irq 6 drq 2
device fd0 at fdc0 drive 0
device fd1 at fdc0 drive 1
device ata0 at isa? port IO_WD1 irq 14
device ata1 at isa? port IO_WD2 irq 15
device ata
device atadisk # ATA disk drives
device atapicd # ATAPI CDROM drives
device atapifd # ATAPI floppy drives
device atapist # ATAPI tape drives
options ATA_STATIC_ID #Static device numbering
device miibus # MII bus support
device dc # DEC/Intel 21143 and various workalikes
device pcm
pseudo-device bpf 4 # Berkeley packet filter
pseudo-device ether # Ethernet support
pseudo-device gzip #Exec gzipped a.out's
pseudo-device loop # Network loopback
pseudo-device pty 64 # Pseudo-ttys (telnet etc)
pseudo-device speaker #Play IBM BASIC-style noises out your speaker
pseudo-device splash # splash screen/screen saver
pseudo-device tun # Packet tunnel.
pseudo-device vn #Vnode driver (turns a file into a device)
>Description:
My system hangs while doing large incoming data transfers via dc0. I
can break into the debugger but I can't do anything else.
Here's a backtrace.
#14 0xc019787b in dc_rxeof (sc=0xc095f000) at /usr/src/sys/pci/if_dc.c:2365
#15 0xc0197edf in dc_intr (arg=0xc095f000) at /usr/src/sys/pci/if_dc.c:2640
#16 0xc020aa92 in slow_copyin ()
#17 0xc015d248 in sosend (so=0xc3d03480, addr=0x0, uio=0xc420fed8, top=0x0,
control=0x0, flags=0, p=0xc3fa73c0) at /usr/src/sys/kern/uipc_socket.c:585
#18 0xc015178c in soo_write (fp=0xc09dbd00, uio=0xc420fed8, cred=0xc0a69180,
flags=0, p=0xc3fa73c0) at /usr/src/sys/kern/sys_socket.c:81
#19 0xc014e3b1 in dofilewrite (p=0xc3fa73c0, fp=0xc09dbd00, fd=3,
buf=0x8145004, nbyte=135088, offset=-1, flags=0)
at /usr/src/sys/sys/file.h:163
#20 0xc014e26a in write (p=0xc3fa73c0, uap=0xc420ff80)
at /usr/src/sys/kern/sys_generic.c:329
#21 0xc020c27d in syscall2 (frame={tf_fs = 47, tf_es = 47, tf_ds = 47,
tf_edi = 134684360, tf_esi = -1077939264, tf_ebp = -1077939324,
tf_isp = -1004470316, tf_ebx = 135088, tf_edx = 134682404, tf_ecx = 3,
tf_eax = 4, tf_trapno = 0, tf_err = 2, tf_eip = 672976284, tf_cs = 31,
tf_eflags = 642, tf_esp = -1077939368, tf_ss = 47})
at /usr/src/sys/i386/i386/trap.c:1150
#22 0xc01ffe65 in Xint0x80_syscall ()
#23 0x804ef42 in ?? ()
#24 0x804c7aa in ?? ()
#25 0x804c111 in ?? ()
#26 0x804af05 in ?? ()
I went into the debugger to see where things were going. It went
through the dc_rxeof loop indefinitely, without ever exiting. In
each iteration, ether_input got called. Beyond that, I'm clueless. :)
>How-To-Repeat:
Start this and wait:
while :; do scp /usr/tmp/root.tmp twwells.com:/usr/tmp/root.tmp; done
>Fix:
None known.
>Release-Note:
>Audit-Trail:
>Unformatted:
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-bugs" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?E14laSY-000Bc8-00>
