Date: Sat, 19 Aug 2006 23:59:36 +0200 From: Pieter de Goeje <pieter@degoeje.nl> To: freebsd-amd64@freebsd.org Subject: Panic on 6.1REL using linux compat Message-ID: <200608192359.36462.pieter@degoeje.nl>
next in thread | raw e-mail | index | archive | help
--Boundary-00=_In45Ev6gZ6wHkTC Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Content-Disposition: inline The box in question is a dual core athlon64, running 6.1-RELEASE-p3 amd64 with SMP enabled. The box has been panicing every month or so, and i've obtained a crashdump the last time. The primary use for the box is hosting Half-Life Dedicated Servers, using linux compatibility. One of them was the current process seen in the panic below. Backtrace: Fatal trap 12: page fault while in kernel mode cpuid = 1; apic id = 01 fault virtual address = 0x48 fault code = supervisor read, page not present instruction pointer = 0x8:0xffffffff8023d923 stack pointer = 0x10:0xffffffffa79c9620 frame pointer = 0x10:0x4 code segment = base 0x0, limit 0xfffff, type 0x1b = DPL 0, pres 1, long 1, def32 0, gran 1 processor eflags = interrupt enabled, resume, IOPL = 0 current process = 74823 (hlds_amd) trap number = 12 panic: page fault cpuid = 1 Uptime: 14d14h36m48s Dumping 1023 MB (2 chunks) chunk 0: 1MB (156 pages) ... ok chunk 1: 1023MB (261808 pages) 1007 991 975 959 943 927 911 895 879 863 847 831 815 799 783 767 751 735 719 703 687 671 655 639 623 607 591 575 559 543 527 511 495 479 463 447 431 415 399 383 367 351 335 319 303 287 271 255 239 223 207 191 175 159 143 127 111 95 79 63 47 31 15 #0 doadump () at pcpu.h:172 172 __asm __volatile("movq %%gs:0,%0" : "=r" (td)); (kgdb) backtrace #0 doadump () at pcpu.h:172 #1 0x8888888888888889 in ?? () #2 0xffffffff801f97d7 in boot (howto=260) at /usr/src/sys/kern/kern_shutdown.c:402 #3 0xffffffff801f9e71 in panic (fmt=0xffffff000a44abe0 "") at /usr/src/sys/kern/kern_shutdown.c:558 #4 0xffffffff803350ff in trap_fatal (frame=0xffffff000a44abe0, eva=18446742974534823936) at /usr/src/sys/amd64/amd64/trap.c:660 #5 0xffffffff8033541f in trap_pfault (frame=0xffffffffa79c9570, usermode=0) at /usr/src/sys/amd64/amd64/trap.c:573 #6 0xffffffff803356d3 in trap (frame= {tf_rdi = 72, tf_rsi = 0, tf_rdx = 72, tf_rcx = 0, tf_r8 = -1098734541056, tf_r9 = 50, tf_rax = 144, tf_rbx = -1098734541056, tf_rbp = 4, tf_r10 = -1098734541056, tf_r11 = -2144558112, tf_r12 = -1098734541056, tf_r13 = -1099503775744, tf_r14 = 0, tf_r15 = 1, tf_trapno = 12, tf_addr = 72, tf_flags = -2144884788, tf_err = 0, tf_rip = -2145134301, tf_cs = 8, tf_rflags = 66054, tf_rsp = -1482910152, tf_ss = 0}) at /usr/src/sys/amd64/amd64/trap.c:352 #7 0xffffffff80321acb in calltrap () at /usr/src/sys/amd64/amd64/exception.S:168 #8 0xffffffff8023d923 in m_length (m0=0x48, last=0x0) at /usr/src/sys/kern/uipc_mbuf.c:1173 #9 0xffffffff8023d94b in m_fixhdr (m0=0xffffff002e516700) at /usr/src/sys/kern/uipc_mbuf.c:1161 #10 0xffffffff8023d9ac in m_defrag (m0=0xffffff002e516700, how=1) at /usr/src/sys/kern/uipc_mbuf.c:1204 #11 0xffffffff802ca056 in rl_start_locked (ifp=0xffffff0000093000) at /usr/src/sys/pci/if_rl.c:1390 #12 0xffffffff802ca425 in rl_start (ifp=0xffffff0000093000) at /usr/src/sys/pci/if_rl.c:1427 #13 0xffffffff80280268 in ether_output_frame (ifp=0xffffff0000093000, m=0xffffff002e516700) at /usr/src/sys/net/if_ethersubr.c:406 #14 0xffffffff802804de in ether_output (ifp=0xffffff0000093000, m=0xffffff002e516700, dst=0xffffff00007f7180, rt0=0x0) at /usr/src/sys/net/if_ethersubr.c:359 #15 0xffffffff80297d8a in ip_output (m=0xffffff002e516700, opt=0xffffffffa79c9810, ro=0xffffffffa79c9810, flags=33, imo=0xffffff002f64bc00, inp=0xffffff00110e2720) at /usr/src/sys/netinet/ip_output.c:777 #16 0xffffffff802a9082 in udp_send (so=0x48, flags=0, m=0x90, addr=0x40, control=0x20, td=0x82) at /usr/src/sys/netinet/udp_usrreq.c:903 #17 0xffffffff8023f3ae in sosend (so=0xffffff00246df268, addr=0xffffff000bad2630, uio=0xffffffffa79c99b0, top=0xffffff00114f6000, control=0x0, flags=0, td=0xffffff000a44abe0) at /usr/src/sys/kern/uipc_socket.c:836 #18 0xffffffff80246dd9 in kern_sendit (td=0xffffff000a44abe0, s=4, mp=0xffffffffa79c9b20, flags=0, control=0x0, segflg=102) at /usr/src/sys/kern/uipc_syscalls.c:772 #19 0xffffffff803697a8 in linux_sendit (td=0xffffff000a44abe0, s=4, mp=0xffffffffa79c9b20, flags=0, segflg=UIO_USERSPACE) at /usr/src/sys/compat/linux/linux_socket.c:405 #20 0xffffffff8036a4e1 in linux_socketcall (td=0xffffff000a44abe0, args=0x0) at /usr/src/sys/compat/linux/linux_socket.c:897 #21 0xffffffff803582dd in ia32_syscall (frame= {tf_rdi = 4, tf_rsi = 1, tf_rdx = 675516088, tf_rcx = 4294946784, tf_r8 = 0, tf_r9 = 0, tf_rax = 102, tf_rbx = 11, tf_rbp = 4294948312, tf_r10 = 0, tf_r11 = 0, tf_r12 = 0, tf_r13 = 0, tf_r14 = 0, tf_r15 = 0, tf_trapno = 22, tf_addr = 0, tf_flags = 0, tf_err = 2, tf_rip = 67163744---Type <return> to continue, or q <return> to quit--- 8, tf_cs = 27, tf_rflags = 582, tf_rsp = 4294946776, tf_ss = 35}) at /usr/src/sys/amd64/ia32/ia32_syscall.c:186 #22 0xffffffff80321e9d in Xint0x80_syscall () at ia32_exception.S:64 #23 0x0000000028085fc8 in ?? () Previous frame inner to this frame (corrupt stack?) (kgdb) list *0xffffffff8023d923 0xffffffff8023d923 is in m_length (/usr/src/sys/kern/uipc_mbuf.c:1175). 1170 u_int len; 1171 1172 len = 0; 1173 for (m = m0; m != NULL; m = m->m_next) { 1174 len += m->m_len; 1175 if (m->m_next == NULL) 1176 break; 1177 } 1178 if (last != NULL) 1179 *last = m; (kgdb) quit I think this has something to do with the box being SMP or 64bit, because I have hosted the same software on a non SMP (i386) box, without the crashes. I'm also using debug.mpsafenet=0 in loader.conf, because I'm experiencing packet corruption sometimes without it (in linux programs). This dump was obtained while using a realtek 8139C NIC, but the onboard (sk) nick exhibited the same problem, so I don't think the NIC is the source of the panic. I've also tested the memory using memtest86+, no errors found. If there's anything I can do to help debug the problem, please say so :) Attached is the dmesg. Regards, Pieter de Goeje --Boundary-00=_In45Ev6gZ6wHkTC Content-Type: text/plain; charset="us-ascii"; name="dmesg" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="dmesg" Copyright (c) 1992-2006 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 6.1-RELEASE-p3 #4: Thu Aug 3 02:37:35 CEST 2006 pyotr@unforgiven.student.utwente.nl:/usr/obj/usr/src/sys/UNFORGIVEN WARNING: MPSAFE network stack disabled, expect reduced performance. Timecounter "i8254" frequency 1193182 Hz quality 0 CPU: AMD Athlon(tm) 64 X2 Dual Core Processor 3800+ (2002.57-MHz K8-class CPU) Origin = "AuthenticAMD" Id = 0x20f32 Stepping = 2 Features=0x178bfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,MMX,FXSR,SSE,SSE2,HTT> Features2=0x1<SSE3> AMD Features=0xe2500800<SYSCALL,NX,MMX+,FFXSR,LM,3DNow+,3DNow> AMD Features2=0x3<LAHF,CMP> Cores per package: 2 real memory = 1073414144 (1023 MB) avail memory = 1028812800 (981 MB) ACPI APIC Table: <A M I OEMAPIC > FreeBSD/SMP: Multiprocessor System Detected: 2 CPUs cpu0 (BSP): APIC ID: 0 cpu1 (AP): APIC ID: 1 MADT: Forcing active-low polarity and level trigger for SCI ioapic0 <Version 0.3> irqs 0-23 on motherboard acpi0: <A M I OEMXSDT> on motherboard acpi0: Power Button (fixed) Timecounter "ACPI-fast" frequency 3579545 Hz quality 1000 acpi_timer0: <24-bit timer at 3.579545MHz> port 0x808-0x80b on acpi0 cpu0: <ACPI CPU> on acpi0 cpu1: <ACPI CPU> on acpi0 pcib0: <ACPI Host-PCI bridge> port 0xcf8-0xcff on acpi0 pci0: <ACPI PCI bus> on pcib0 pcib1: <ACPI PCI-PCI bridge> at device 1.0 on pci0 pci1: <ACPI PCI bus> on pcib1 pci0: <network, ethernet> at device 10.0 (no driver attached) pci0: <display, VGA> at device 11.0 (no driver attached) rl0: <RealTek 8139 10/100BaseTX> port 0xb400-0xb4ff mem 0xfbd00000-0xfbd000ff irq 17 at device 12.0 on pci0 miibus0: <MII bus> on rl0 rlphy0: <RealTek internal media interface> on miibus0 rlphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto rl0: Ethernet address: 00:c0:26:10:03:6a rl0: [GIANT-LOCKED] atapci0: <VIA 6420 SATA150 controller> port 0xd400-0xd407,0xd000-0xd003,0xc800-0xc807,0xc400-0xc403,0xc000-0xc00f,0xb800-0xb8ff irq 20 at device 15.0 on pci0 ata2: <ATA channel 0> on atapci0 ata3: <ATA channel 1> on atapci0 atapci1: <VIA 8237 UDMA133 controller> port 0x1f0-0x1f7,0x3f6,0x170-0x177,0x376,0xfc00-0xfc0f at device 15.1 on pci0 ata0: <ATA channel 0> on atapci1 ata1: <ATA channel 1> on atapci1 pci0: <serial bus, USB> at device 16.0 (no driver attached) pci0: <serial bus, USB> at device 16.1 (no driver attached) pci0: <serial bus, USB> at device 16.2 (no driver attached) pci0: <serial bus, USB> at device 16.3 (no driver attached) pci0: <serial bus, USB> at device 16.4 (no driver attached) isab0: <PCI-ISA bridge> at device 17.0 on pci0 isa0: <ISA bus> on isab0 acpi_button0: <Power Button> on acpi0 acpi_button1: <Sleep Button> on acpi0 sio0: configured irq 4 not in bitmap of probed irqs 0 sio0: port may not be enabled sio0: <16550A-compatible COM port> port 0x3f8-0x3ff irq 4 flags 0x10 on acpi0 sio0: type 16550A, console orm0: <ISA Option ROM> at iomem 0xc0000-0xc7fff on isa0 atkbdc0: <Keyboard controller (i8042)> at port 0x60,0x64 on isa0 sc0: <System console> at flags 0x100 on isa0 sc0: VGA <16 virtual consoles, flags=0x100> sio1: configured irq 3 not in bitmap of probed irqs 0 sio1: port may not be enabled vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0 Timecounters tick every 1.000 msec ad0: 19595MB <MAXTOR 6L020J1 A93.0500> at ata0-master UDMA133 acd0: CDRW <Hewlett-Packard CD-Writer Plus 9100/1.0c> at ata1-master UDMA33 SMP: AP CPU #1 Launched! Trying to mount root from ufs:/dev/ad0s1a WARNING: / was not properly dismounted WARNING: /tmp was not properly dismounted WARNING: /usr was not properly dismounted WARNING: /var was not properly dismounted --Boundary-00=_In45Ev6gZ6wHkTC--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200608192359.36462.pieter>