Date: Wed, 1 Nov 2000 21:37:22 -0800 (PST) From: rzubairov@snos.ru To: freebsd-gnats-submit@FreeBSD.org Subject: kern/22494: Fatal trap 12: page fault while in kernel mode. Point to syscall xl_newbuf. The same was and in the version 3.3 stable ! Message-ID: <20001102053722.A033D37B4CF@hub.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 22494
>Category: kern
>Synopsis: Fatal trap 12: page fault while in kernel mode. Point to syscall xl_newbuf. The same was and in the version 3.3 stable !
>Confidential: no
>Severity: critical
>Priority: high
>Responsible: freebsd-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Wed Nov 01 21:40:00 PST 2000
>Closed-Date:
>Last-Modified:
>Originator: Ravil Zubairov
>Release: FreeBSD v4.1 RELEASE
>Organization:
JSC "Salavatnefteorgsintez"
>Environment:
FreeBSD bug.snos.ru 4.1-RELEASE FreeBSD 4.1-RELEASE #0: Wed Nov 1 09:59:55 YEKT 2000 toor@bug.sno
s.ru:/usr/src/sys/compile/bug.snos.ru i386
Hardware:
HP Vectra VE8, PII 350 MHz, 128 MB RAM, 3GB HDD
Ethernet 3Com, 3c905B-TX.
>Description:
------------------------------------------------------------------
the config file of kernel
------------------------------------------------------------------
#
# GENERIC -- Generic kernel configuration file for FreeBSD/i386
#
# For more information on this file, please read the handbook section on
# Kernel Configuration Files:
#
# http://www.FreeBSD.org/handbook/kernelconfig-config.html
#
# The handbook is also available locally in /usr/share/doc/handbook
# if you've installed the doc distribution, otherwise always see the
# FreeBSD World Wide Web server (http://www.FreeBSD.org/) for the
# latest information.
#
# An exhaustive list of options and more detailed explanations of the
# device lines is also present in the ./LINT configuration file. If you are
# in doubt as to the purpose or necessity of a line, check first in LINT.
#
# $FreeBSD: src/sys/i386/conf/GENERIC,v 1.246.2.8 2000/07/20 02:51:02 msmith Exp $
machine i386
cpu I386_CPU
cpu I486_CPU
cpu I586_CPU
cpu I686_CPU
ident bug
maxusers 100
makeoptions DEBUG=-g #Build kernel with gdb(1) debug symbols
options MATH_EMULATE #Support for x87 emulation
options INET #InterNETworking
options INET6 #IPv6 communications protocols
options FFS #Berkeley Fast Filesystem
options FFS_ROOT #FFS usable as root device [keep this!]
options SOFTUPDATES #Enable FFS soft updates support
options MFS #Memory Filesystem
options MD_ROOT #MD is a potential root device
options NFS #Network Filesystem
options NFS_ROOT #NFS usable as root device, NFS required
options MSDOSFS #MSDOS Filesystem
options CD9660 #ISO 9660 Filesystem
options CD9660_ROOT #CD-ROM usable as root, CD9660 required
options PROCFS #Process filesystem
options COMPAT_43 #Compatible with BSD 4.3 [KEEP THIS!]
options SCSI_DELAY=15000 #Delay (in ms) before probing SCSI
options UCONSOLE #Allow users to grab the console
options USERCONFIG #boot -c editor
options VISUAL_USERCONFIG #visual boot -c editor
options KTRACE #ktrace(1) support
options SYSVSHM #SYSV-style shared memory
options SYSVMSG #SYSV-style message queues
options SYSVSEM #SYSV-style semaphores
options P1003_1B #Posix P1003_1B real-time extensions
options _KPOSIX_PRIORITY_SCHEDULING
options ICMP_BANDLIM #Rate limit bad replies
options KBD_INSTALL_CDEV # install a CDEV entry in /dev
#Added by Zubairov R. 12.10.2000
options NMBCLUSTERS=8192
# To make an SMP kernel, the next two are needed
#options SMP # Symmetric MultiProcessor Kernel
#options APIC_IO # Symmetric (APIC) I/O
# Optionally these may need tweaked, (defaults shown):
#options NCPU=2 # number of CPUs
#options NBUS=4 # number of busses
#options NAPIC=1 # number of IO APICs
#options NINTR=24 # number of INTs
device isa
device eisa
device pci
# Floppy drives
device fdc0 at isa? port IO_FD1 irq 6 drq 2
device fd0 at fdc0 drive 0
device fd1 at fdc0 drive 1
# ATA and ATAPI devices
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
#options ATA_ENABLE_ATAPI_DMA #Enable DMA on ATAPI devices
# SCSI Controllers
#device ahb # EISA AHA1742 family
#device ahc # AHA2940 and onboard AIC7xxx devices
#device amd # AMD 53C974 (Teckram DC-390(T))
#device dpt # DPT Smartcache - See LINT for options!
#device isp # Qlogic family
#device ncr # NCR/Symbios Logic
#device sym # NCR/Symbios Logic (newer chipsets)
#options SYM_SETUP_LP_PROBE_MAP=0x40
# Allow ncr to attach legacy NCR devices when
# both sym and ncr are configured
device adv0 at isa?
device adw
device bt0 at isa?
device aha0 at isa?
device aic0 at isa?
# SCSI peripherals
device scbus # SCSI bus (required)
#device da # Direct Access (disks)
#device sa # Sequential Access (tape etc)
#device cd # CD
#device pass # Passthrough device (direct SCSI access)
# RAID controllers
#device ida # Compaq Smart RAID
#device amr # AMI MegaRAID
#device mlx # Mylex DAC960 family
#device twe # 3ware Escalade
# atkbdc0 controls both the keyboard and the PS/2 mouse
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?
# splash screen/screen saver
# Remarked by Zubairov R. 01.11.2000
# pseudo-device splash
# syscons is the default console driver, resembling an SCO console
device sc0 at isa? flags 0x100
# Enable this and PCVT_FREEBSD for pcvt vt220 compatible console driver
#device vt0 at isa?
#options XSERVER # support for X server on a vt console
#options FAT_CURSOR # start with block cursor
# If you have a ThinkPAD, uncomment this along with the rest of the PCVT lines
#options PCVT_SCANSET=2 # IBM keyboards are non-std
# Floating point support - do not disable.
device npx0 at nexus? port IO_NPX irq 13
# Power management support (see LINT for more options)
device apm0 at nexus? disable flags 0x20 # Advanced Power Management
# PCCARD (PCMCIA) support
device card
#device pcic0 at isa? irq 10 port 0x3e0 iomem 0xd0000
#device pcic1 at isa? irq 11 port 0x3e2 iomem 0xd4000 disable
# Serial (COM) ports
# device sio0 at isa? port IO_COM1 flags 0x10 irq 4
# device sio1 at isa? port IO_COM2 irq 3
# device sio2 at isa? disable port IO_COM3 irq 5
# device sio3 at isa? disable port IO_COM4 irq 9
# Parallel port
# 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 vpo # Requires scbus and da
# PCI Ethernet NICs.
#device de # DEC/Intel DC21x4x (``Tulip'')
#device fxp # Intel EtherExpress PRO/100B (82557, 82558)
#device tx # SMC 9432TX (83c170 ``EPIC'')
#device vx # 3Com 3c590, 3c595 (``Vortex'')
#device wx # Intel Gigabit Ethernet Card (``Wiseman'')
# PCI Ethernet NICs that use the common MII bus controller code.
device miibus # MII bus support
#device dc # DEC/Intel 21143 and various workalikes
#device rl # RealTek 8129/8139
#device sf # Adaptec AIC-6915 (``Starfire'')
#device sis # Silicon Integrated Systems SiS 900/SiS 7016
#device ste # Sundance ST201 (D-Link DFE-550TX)
#device tl # Texas Instruments ThunderLAN
#device vr # VIA Rhine, Rhine II
#device wb # Winbond W89C840F
device xl # 3Com 3c90x (``Boomerang'', ``Cyclone'')
# ISA Ethernet NICs.
device ed0 at isa? port 0x280 irq 10 iomem 0xd8000
device ex
device ep
# WaveLAN/IEEE 802.11 wireless NICs. Note: the WaveLAN/IEEE really
# exists only as a PCMCIA device, so there is no ISA attatement needed
# and resources will always be dynamically assigned by the pccard code.
device wi
# Aironet 4500/4800 802.11 wireless NICs. Note: the declaration below will
# work for PCMCIA and PCI cards, as well as ISA cards set to ISA PnP
# mode (the factory default). If you set the switches on your ISA
# card for a manually chosen I/O address and IRQ, you must specify
# those paremeters here.
device an
# Xircom Ethernet
#device xe
# The probe order of these is presently determined by i386/isa/isa_compat.c.
device ie0 at isa? port 0x300 irq 10 iomem 0xd0000
device fe0 at isa? port 0x300
device le0 at isa? port 0x300 irq 5 iomem 0xd0000
device lnc0 at isa? port 0x280 irq 10 drq 0
device cs0 at isa? port 0x300
device sn0 at isa? port 0x300 irq 10
# Pseudo devices - the number indicates how many units to allocated.
pseudo-device loop # Network loopback
pseudo-device ether # Ethernet support
# pseudo-device sl 1 # Kernel SLIP
# pseudo-device ppp 1 # Kernel PPP
pseudo-device tun # Packet tunnel.
pseudo-device pty # Pseudo-ttys (telnet etc)
pseudo-device md # Memory "disks"
pseudo-device gif 4 # IPv6 and IPv4 tunneling
pseudo-device faith 1 # IPv6-to-IPv4 relaying (translation)
# The `bpf' pseudo-device enables the Berkeley Packet Filter.
# Be aware of the administrative consequences of enabling this!
pseudo-device bpf #Berkeley packet filter
# USB support
# device uhci # UHCI PCI->USB interface
# device ohci # OHCI PCI->USB interface
# device usb # USB Bus (required)
# device ugen # Generic
# device uhid # "Human Interface Devices"
# device ukbd # Keyboard
# device ulpt # Printer
# device umass # Disks/Mass storage - Requires scbus and da
# device ums # Mouse
# USB Ethernet, requires mii
# device aue # ADMtek USB ethernet
# device cue # CATC USB ethernet
# device kue # Kawasaki LSI USB ethernet
------------------------------------------------------------------
end of config file
------------------------------------------------------------------
------------------------------------------------------------------
This is the kgdb results
------------------------------------------------------------------
GNU gdb 4.18
Copyright 1998 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "i386-unknown-freebsd"...
IdlePTD 3485696
initial pcb at 2d0440
panicstr: page fault
panic messages:
---
Fatal trap 12: page fault while in kernel mode
fault virtual address = 0xffff7800
fault code = supervisor read, page not present
instruction pointer = 0x8:0xc02055fc
stack pointer = 0x10:0xc02aee84
frame pointer = 0x10:0xc02aee90
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
trap number = 12
panic: page fault
syncing disks... 7 7
done
Uptime: 23h16m2s
dumping to dev #wd/1, offset 352256
dump ata0: resetting devices .. done
128 127 126 125 124 123 122 121 120 119 118 117 116 115 114 113 112 111 110 109 108 107 106 105 104 10
3 102 101 100 99 98 97 96 95 94 93 92 91 90 89 88 87 86 85 84 83 82 81 80 79 78 77 76 75 74 73 72 71 7
0 69 68 67 66 65 64 63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 47 46 45 44 43 42 41 40 39 38 37 3
6 35 34 33 32 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=256) at ../../kern/kern_shutdown.c:302
302 dumppcb.pcb_cr3 = rcr3();
(kgdb) where
#0 boot (howto=256) at ../../kern/kern_shutdown.c:302
#1 0xc015a68c in poweroff_wait (junk=0xc02a5aaf, howto=0) at ../../kern/kern_shutdown.c:552
#2 0xc02608c5 in trap_fatal (frame=0xc02aee44, eva=4294932480) at ../../i386/i386/trap.c:927
#3 0xc026059d in trap_pfault (frame=0xc02aee44, usermode=0, eva=4294932480)
at ../../i386/i386/trap.c:820
#4 0xc026016f in trap (frame={tf_fs = -1061355504, tf_es = -1040908272, tf_ds = -1066008560,
tf_edi = -1062526720, tf_esi = 6686720, tf_ebp = -1070928240, tf_isp = -1070928272,
tf_ebx = -1062526720, tf_edx = -1066102784, tf_ecx = -34816, tf_eax = 520535, tf_trapno = 12,
tf_err = 0, tf_eip = -1071622660, tf_cs = 8, tf_eflags = 66054, tf_esp = -1040878384,
tf_ss = -1061987584}) at ../../i386/i386/trap.c:426
#5 0xc02055fc in xl_newbuf (sc=0xc1f57000, c=0xc1f574d0) at ../../pci/if_xl.c:1651
#6 0xc02057c4 in xl_rxeof (sc=0xc1f57000) at ../../pci/if_xl.c:1752
#7 0xc0205e9c in xl_intr (arg=0xc1f57000) at ../../pci/if_xl.c:1971
(kgdb) up 5
#5 0xc02055fc in xl_newbuf (sc=0xc1f57000, c=0xc1f574d0) at ../../pci/if_xl.c:1651
1651 MCLGET(m_new, M_DONTWAIT);
(kgdb) list
1646 printf("xl%d: no memory for rx list -- "
1647 "packet dropped!\n", sc->xl_unit);
1648 return(ENOBUFS);
1649 }
1650
1651 MCLGET(m_new, M_DONTWAIT);
1652 if (!(m_new->m_flags & M_EXT)) {
1653 printf("xl%d: no memory for rx list -- "
1654 "packet dropped!\n", sc->xl_unit);
1655 m_freem(m_new);
(kgdb) quit
--------------------------------------------------
end of kgdb
--------------------------------------------------
>How-To-Repeat:
In the host run the program for discover IP addreses and ARP addresses
and Windows host names (samba)our network. Sometimes system crash ( ~ 1,2 times in week).
>Fix:
I do not know.
This error was in my FreeBSD v3.3 stable (see the bugs Problem Report kern/20671 at 16 aug. 2000)
>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?20001102053722.A033D37B4CF>
