Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 5 Oct 1998 01:41:33 -0500
From:      Yura Socolov <yura@binary.net>
To:        freebsd-current@FreeBSD.ORG
Subject:   3.0-ELF and if_de crashes
Message-ID:  <19981005014133.A21212@binary.net>

next in thread | raw e-mail | index | archive | help
I'm experiencing a 100% reproducible crashes on a fresh ELF 3.0.

The box itself runs very smoothly, and without problems at all, 
it can make world, it can do 1.5M mysql queries per day, etc. The prblems
start as soon as i try to cvsup anything.

Originally it was a 980928-BETA installed over the net, then i manually
downloaded 981002-BETA sources and made world, and now it's a freshly 
cvsup'ed and recompiled -current as of couple of hours ago.

Before, as soon as i tried to cvsup anything, it would randomly
hang, reboot or panic at various places down the download. Now, with
the fresh -current it is mostly a panic. Only seldom it is a reboot
or a hang.

It happens only with cvsup, ftp'ing large files, regular ssh sessions, 
etc, etc all works fine. It happens both with dynamically linked
cvsup compiled from ports and a statically linked one, downloaded 
from ftp.freebsd.org/pub/FreeBSD/CVSup/ .

All the panics now are exactly the same, at exact same place [see stack
trace below].

The ethernet card is 21140-AF based Netgear FA 310-TX Rev C6.1, and it's 
pretty much brand new.

Otherwise, the box is pretty much a vanilla box, no SCSI, no softupdates,
no fancy stuff at all [see dmesg output below].

Notably, if i config kernel with -g, cvsup sometimes  does manage to
go through fine, and that is how i was able to download the fresh sources,
but sometimes it still fails equally miserably.

I am not sure whether if_de needs to be updated, but i have that card
working fine in an a.aout -current box, and several 2.2.7-stable boxes,
and as far as i can tell if_de.c and pmap.h have not  changed a lot 
recentely...

Perhaps i'm just missing something and something else is causing this,
any ideas are certainly appreciated. 

See all relevant info below, if i'm forgetting something, or any 
additional information is needed, please let me know.

Thank you for your time.

-- yu


IdlePTD 2166784
initial pcb at 1ec754
panicstr: page fault
panic messages:
---
Fatal trap 12: page fault while in kernel mode
fault virtual address   = 0xefccccd8
fault code              = supervisor read, page not present
instruction pointer     = 0x8:0xf018df89
stack pointer           = 0x10:0xf01dbd30
frame pointer           = 0x10:0xf01dbd64
code segment            = base 0x0, limit 0xfffff, type 0x1b
                        = DPL 0, pres 1, def32 1, gran 1
processor eflags        = interrupt enabled, resume, IOPL = 0
current process         = Idle
interrupt mask          = net tty bio cam 
trap number             = 12
panic: page fault

syncing disks... 

Fatal trap 12: page fault while in kernel mode
fault virtual address   = 0xefccccd8
fault code              = supervisor read, page not present
instruction pointer     = 0x8:0xf018dfdd
stack pointer           = 0x10:0xf01db830
frame pointer           = 0x10:0xf01db864
code segment            = base 0x0, limit 0xfffff, type 0x1b
			= DPL 0, pres 1, def32 1, gran 1
processor eflags        = interrupt enabled, resume, IOPL = 0
current process         = Idle
interrupt mask          = net tty 
trap number             = 12
panic: page fault

dumping to dev 20001, offset 458752
dump 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 
---
#0  boot (howto=260) at ../../kern/kern_shutdown.c:268
268                     dumppcb.pcb_cr3 = rcr3();
(kgdb) where
#0  boot (howto=260) at ../../kern/kern_shutdown.c:268
#1  0xf01157eb in panic (fmt=0xf01bcc5f "page fault")
    at ../../kern/kern_shutdown.c:430
#2  0xf01bd86d in trap_fatal (frame=0xf01db7f4) at ../../i386/i386/trap.c:879
#3  0xf01bd300 in trap_pfault (frame=0xf01db7f4, usermode=0)
    at ../../i386/i386/trap.c:772
#4  0xf01bcf97 in trap (frame={tf_es = 16, tf_ds = 16, tf_edi = 16, 
    tf_esi = 775108963, tf_ebp = -266487708, tf_isp = -266487780, 
    tf_ebx = 859006071, tf_edx = 0, tf_ecx = -256764320, tf_eax = 209718, 
    tf_trapno = 12, tf_err = 0, tf_eip = -266805283, tf_cs = 8, 
    tf_eflags = 66070, tf_esp = -256763904, tf_ss = -262998528})
    at ../../i386/i386/trap.c:396
#5  0xf018dfdd in tulip_txput (sc=0xf0b21800, m=0xf04ee800)
    at machine/pmap.h:171
#6  0xf018e571 in tulip_ifstart_one (ifp=0xf0b21818) at ../../pci/if_de.c:4851
#7  0xf01439ec in ether_output (ifp=0xf0b21818, m0=0xf052f600, dst=0xf04db2d0, 
    rt0=0xf0b98300) at ../../net/if_ethersubr.c:388
#8  0xf0150944 in ip_output (m0=0xf052f600, opt=0x0, ro=0xf3bf792c, flags=0, 
    imo=0x0) at ../../netinet/ip_output.c:535
#9  0xf0155079 in tcp_output (tp=0xf3bf7960) at ../../netinet/tcp_output.c:695
#10 0xf0153931 in tcp_input (m=0xf050b480, iphlen=20)
    at ../../netinet/tcp_input.c:1360
#11 0xf014f424 in ip_input (m=0xf050b480) at ../../netinet/ip_input.c:645
#12 0xf014f483 in ipintr () at ../../netinet/ip_input.c:672
#13 0xf01b4f91 in swi_net_next ()
#14 0xf012e9bd in getblk (vp=0xf3d7e240, blkno=524656, size=8192, slpflag=0, 
    slptimeo=0) at ../../kern/vfs_bio.c:1437
#15 0xf012d211 in bread (vp=0xf3d7e240, blkno=524656, size=8192, cred=0x0, 
    bpp=0xf01dbb60) at ../../kern/vfs_bio.c:281
#16 0xf0197590 in ffs_update (vp=0xf3d7cd00, access=0xf01dbbc8, 
    modify=0xf01dbbc8, waitfor=0) at ../../ufs/ffs/ffs_inode.c:102
#17 0xf019c089 in ffs_fsync (ap=0xf01dbc04) at ../../ufs/ffs/ffs_vnops.c:252
#18 0xf019a46b in ffs_sync (mp=0xf0b43200, waitfor=2, cred=0xf0b1fa00, 
    p=0xf02044c4) at vnode_if.h:499
#19 0xf01360c7 in sync (p=0xf02044c4, uap=0x0) at ../../kern/vfs_syscalls.c:527
#20 0xf01153c2 in boot (howto=256) at ../../kern/kern_shutdown.c:201
#21 0xf01157eb in panic (fmt=0xf01bcc5f "page fault")
    at ../../kern/kern_shutdown.c:430
#22 0xf01bd86d in trap_fatal (frame=0xf01dbcf4) at ../../i386/i386/trap.c:879
#23 0xf01bd300 in trap_pfault (frame=0xf01dbcf4, usermode=0)
    at ../../i386/i386/trap.c:772
#24 0xf01bcf97 in trap (frame={tf_es = 16, tf_ds = 16, tf_edi = 204, 
      tf_esi = 775108963, tf_ebp = -266486428, tf_isp = -266486500, 
      tf_ebx = 859006071, tf_edx = 0, tf_ecx = -256765600, tf_eax = 209718, 
      tf_trapno = 12, tf_err = 0, tf_eip = -266805367, tf_cs = 8, 
      tf_eflags = 66070, tf_esp = -256763904, tf_ss = -263330432})
    at ../../i386/i386/trap.c:396
#25 0xf018df89 in tulip_txput (sc=0xf0b21800, m=0xf050ba80)
    at machine/pmap.h:171
#26 0xf018e571 in tulip_ifstart_one (ifp=0xf0b21818) at ../../pci/if_de.c:4851
#27 0xf01439ec in ether_output (ifp=0xf0b21818, m0=0xf04de580, dst=0xf04db2d0, 
    rt0=0xf0b98300) at ../../net/if_ethersubr.c:388
#28 0xf0150944 in ip_output (m0=0xf04de580, opt=0x0, ro=0xf3bf792c, flags=0, 
    imo=0x0) at ../../netinet/ip_output.c:535
#29 0xf0155079 in tcp_output (tp=0xf3bf7960) at ../../netinet/tcp_output.c:695
#30 0xf0153ebc in tcp_input (m=0xf04f2a80, iphlen=20)
    at ../../netinet/tcp_input.c:1755
#31 0xf014f424 in ip_input (m=0xf04f2a80) at ../../netinet/ip_input.c:645
#32 0xf014f483 in ipintr () at ../../netinet/ip_input.c:672
#33 0xf01b4f91 in swi_net_next ()
(kgdb) up 5
#5  0xf018dfdd in tulip_txput (sc=0xf0b21800, m=0xf04ee800)
    at machine/pmap.h:171
171                     pa = *(vm_offset_t *)vtopte(va);
(kgdb) up
#6  0xf018e571 in tulip_ifstart_one (ifp=0xf0b21818) at ../../pci/if_de.c:4851
4851            if ((m = tulip_txput(sc, m)) != NULL)
(kgdb) up
#7  0xf01439ec in ether_output (ifp=0xf0b21818, m0=0xf052f600, dst=0xf04db2d0, 
    rt0=0xf0b98300) at ../../net/if_ethersubr.c:388
388                     (*ifp->if_start)(ifp);
(kgdb) quit

[0:39] [divina:/usr/src/sys/compile/DIVINA] uname -a
FreeBSD divina.binary.net 3.0-BETA FreeBSD 3.0-BETA #1: Sun Oct  4 23:04:37 CDT 1998     yura@divina.binary.net:/usr/src/sys/compile/DIVINA  i386


[0:40] [divina:/usr/src/sys/compile/DIVINA] dmesg
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-BETA #1: Sun Oct  4 23:04:37 CDT 1998
yura@divina.binary.net:/usr/src/sys/compile/DIVINA
Timecounter "i8254"  frequency 1193182 Hz  cost 2524 ns
Timecounter "TSC"  frequency 200455179 Hz  cost 117 ns
CPU: AMD-K6tm w/ multimedia extensions (200.46-MHz 586-class CPU)
Origin = "AuthenticAMD"  Id = 0x562  Stepping=2
Features=0x8001bf<FPU,VME,DE,PSE,TSC,MSR,MCE,CX8,MMX>
real memory  = 33554432 (32768K bytes)
avail memory = 30650368 (29932K bytes)
Probing for devices on PCI bus 0:
chip0: <Intel 82439TX System Controller (MTXC)> rev 0x01 on pci0.0.0
chip1: <Intel 82371AB PCI to ISA bridge> rev 0x01 on pci0.7.0
ide_pci0: <Intel PIIX4 Bus-master IDE controller> rev 0x01 on pci0.7.1
chip2: <Intel 82371AB USB host controller> rev 0x01 int d irq 15 on pci0.7.2
chip3: <Intel 82371AB Power management controller> rev 0x01 on pci0.7.3
de0: <Digital 21140A Fast Ethernet> rev 0x22 int a irq 11 on pci0.10.0
de0: 21140A [10-100Mb/s] pass 2.2
de0: address 00:40:05:a2:c3:76
vga0: <S3 868 graphics accelerator> rev 0x00 int a irq 10 on pci0.11.0
Probing for devices on the ISA bus:
sc0 at 0x60-0x6f irq 1 on motherboard
sc0: VGA color <16 virtual consoles, flags=0x0>
sio0 at 0x3f8-0x3ff irq 4 on isa
sio0: type 16550A
sio1 at 0x2f8-0x2ff irq 3 on isa
sio1: type 16550A
wdc0 at 0x1f0-0x1f7 irq 14 flags 0x80ff80ff on isa
wdc0: unit 0 (wd0): <WDC AC32500H>, 32-bit, multi-block-16
wd0: 2441MB (4999680 sectors), 4960 cyls, 16 heads, 63 S/T, 512 B/S
npx0 on motherboard
npx0: INT 16 interface
changing root device to wd0s1a


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?19981005014133.A21212>