Date: Mon, 5 Jan 2009 12:26:57 +0900 From: Pyun YongHyeon <pyunyh@gmail.com> To: Garrett Cooper <yanefbsd@gmail.com> Cc: Brandon Weisz <lists@avioc.org>, stable@freebsd.org Subject: Re: Panic in RELENG_7_1 with fxp(4) Message-ID: <20090105032657.GA1842@cdnetworks.co.kr> In-Reply-To: <3163F769-48B0-4CFC-8842-BBBDDAE78B51@gmail.com> References: <49600E2E.7070601@avioc.org> <3163F769-48B0-4CFC-8842-BBBDDAE78B51@gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, Jan 03, 2009 at 10:16:58PM -0800, Garrett Cooper wrote: > On Jan 3, 2009, at 5:17 PM, Brandon Weisz wrote: > > >After running 7-PRERELEASE from around November 25th, I upgraded > >today to find the system panics repeatably on RELENG_7_1 sources. I > >can boot back to the old kernel and it operates as expected. It > >seems to be related to fxp(4). > > > >FreeBSD didy.internal 7.1-RELEASE FreeBSD 7.1-RELEASE #0: Sat Jan 3 > >18:11:18 CST 2009 bweisz@didy.internal:/usr/obj/usr/src/sys/ > >DIDY i386 > > > >(19:00:35 bweisz@didy </usr/obj/usr/src/sys/DIDY>) 507 $ sudo kgdb > >kernel.debug /var/crash/vmcore.2 > >GNU gdb 6.1.1 [FreeBSD] > >Copyright 2004 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-marcel-freebsd"... > > > >Unread portion of the kernel message buffer: > > > > > >Fatal trap 12: page fault while in kernel mode > >cpuid = 0; apic id = 00 > >fault virtual address = 0x40c > >fault code = supervisor read, page not present > >instruction pointer = 0x20:0xc0a94510 > >stack pointer = 0x28:0xe677b878 > >frame pointer = 0x28:0xe677b88c > >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 = 843 (ntpd) > >trap number = 12 > >panic: page fault > >cpuid = 0 > >Uptime: 25s > >Physical memory: 995 MB > >Dumping 94 MB: 79 63 47 31 15 > > > >Reading symbols from /boot/kernel/vesa.ko...Reading symbols from / > >boot/kernel/vesa.ko.symbols...done. > >done. > >Loaded symbols for /boot/kernel/vesa.ko > >Reading symbols from /boot/kernel/accf_http.ko...Reading symbols > >from /boot/kernel/accf_http.ko.symbols...done. > >done. > >Loaded symbols for /boot/kernel/accf_http.ko > >Reading symbols from /boot/kernel/acpi.ko...Reading symbols from / > >boot/kernel/acpi.ko.symbols...done. > >done. > >Loaded symbols for /boot/kernel/acpi.ko > >Reading symbols from /boot/kernel/pflog.ko...Reading symbols from / > >boot/kernel/pflog.ko.symbols...done. > >done. > >Loaded symbols for /boot/kernel/pflog.ko > >Reading symbols from /boot/kernel/pf.ko...Reading symbols from /boot/ > >kernel/pf.ko.symbols...done. > >done. > >Loaded symbols for /boot/kernel/pf.ko > >Reading symbols from /boot/kernel/nullfs.ko...Reading symbols from / > >boot/kernel/nullfs.ko.symbols...done. > >done. > >Loaded symbols for /boot/kernel/nullfs.ko > >Reading symbols from /boot/kernel/logo_saver.ko...Reading symbols > >from /boot/kernel/logo_saver.ko.symbols...done. > >done. > >Loaded symbols for /boot/kernel/logo_saver.ko > >#0 doadump () at pcpu.h:196 > >196 __asm __volatile("movl %%fs:0,%0" : "=r" (td)); > >(kgdb) list *0xc0a94510 > >0xc0a94510 is in _bus_dmamap_sync (/usr/src/sys/i386/i386/ > >busdma_machdep.c:935). > >930 CTR4(KTR_BUSDMA, "%s: tag %p tag flags 0x%x op 0x%x " > >931 "performing bounce", __func__, op, dmat, > >dmat->flags); > >932 > >933 if (op & BUS_DMASYNC_PREWRITE) { > >934 while (bpage != NULL) { > >935 bcopy((void *)bpage->datavaddr, > >936 (void *)bpage->vaddr, > >937 bpage->datacount); > >938 bpage = STAILQ_NEXT(bpage, links); > >939 } > >(kgdb) bt > >#0 doadump () at pcpu.h:196 > >#1 0xc079c1b7 in boot (howto=260) at /usr/src/sys/kern/ > >kern_shutdown.c:418 > >#2 0xc079c489 in panic (fmt=Variable "fmt" is not available. > >) at /usr/src/sys/kern/kern_shutdown.c:574 > >#3 0xc0ab03bc in trap_fatal (frame=0xe677b838, eva=1036) at /usr/ > >src/sys/i386/i386/trap.c:939 > >#4 0xc0ab0640 in trap_pfault (frame=0xe677b838, usermode=0, > >eva=1036) at /usr/src/sys/i386/i386/trap.c:852 > >#5 0xc0ab0ffc in trap (frame=0xe677b838) at /usr/src/sys/i386/i386/ > >trap.c:530 > >#6 0xc0a96e6b in calltrap () at /usr/src/sys/i386/i386/exception.s: > >159 > >#7 0xc0a94510 in _bus_dmamap_sync (dmat=0xc4048880, map=0xc416e800, > >op=4) at /usr/src/sys/i386/i386/busdma_machdep.c:933 > >#8 0xc05cc3cd in fxp_start_body (ifp=0xc4163000) at /usr/src/sys/ > >dev/fxp/if_fxp.c:1396 > >#9 0xc05ccc77 in fxp_start (ifp=0xc4163000) at /usr/src/sys/dev/fxp/ > >if_fxp.c:1183 > >#10 0xc0830a89 in if_start (ifp=0xc4163000) at /usr/src/sys/net/if.c: > >2768 > >#11 0xc08374cb in ether_output_frame (ifp=0xc4163000, m=0xc43a5600) > >at /usr/src/sys/net/if_ethersubr.c:405 > >#12 0xc0837a7c in ether_output (ifp=0xc4163000, m=0xc43a5600, > >dst=0xc423b710, rt0=0xc4489364) at /usr/src/sys/net/if_ethersubr.c:374 > >#13 0xc087e115 in ip_output (m=0xc43a5600, opt=0x0, ro=0xe677bac4, > >flags=Variable "flags" is not available. > >) at /usr/src/sys/netinet/ip_output.c:554 > >#14 0xc08eb9b9 in udp_send (so=0xc46ef9c0, flags=0, m=0xc43a5600, > >addr=0xc4462ab0, control=0x0, td=0xc421f230) at /usr/src/sys/netinet/ > >udp_usrreq.c:1074 > >#15 0xc07f2546 in sosend_dgram (so=0xc46ef9c0, addr=0xc4462ab0, > >uio=0xe677bbe8, top=0xc43a5600, control=0x0, flags=Variable "flags" > >is not available. > >) at /usr/src/sys/kern/uipc_socket.c:1059 > >#16 0xc07efbef in sosend (so=0xc46ef9c0, addr=0xc4462ab0, > >uio=0xe677bbe8, top=0x0, control=0x0, flags=0, td=0xc421f230) at / > >usr/src/sys/kern/uipc_socket.c:1288 > >#17 0xc07f6ef6 in kern_sendit (td=0xc421f230, s=23, mp=0xe677bc64, > >flags=0, control=0x0, segflg=UIO_USERSPACE) at /usr/src/sys/kern/ > >uipc_syscalls.c:805 > >#18 0xc07fa141 in sendit (td=0xc421f230, s=23, mp=0xe677bc64, > >flags=0) at /usr/src/sys/kern/uipc_syscalls.c:742 > >#19 0xc07fa258 in sendto (td=0xc421f230, uap=0xe677bcfc) at /usr/src/ > >sys/kern/uipc_syscalls.c:857 > >#20 0xc0ab0995 in syscall (frame=0xe677bd38) at /usr/src/sys/i386/ > >i386/trap.c:1090 > >#21 0xc0a96ed0 in Xint0x80_syscall () at /usr/src/sys/i386/i386/ > >exception.s:255 > >#22 0x00000033 in ?? () > >Previous frame inner to this frame (corrupt stack?) > >(kgdb) > > > > > >I replaced the fxp(4) card with an old xl(4) card lying on my desk > >and the panics stopped. Is this a failing nic card or some other > >trigger? > > > >Brandon > > Memory serves me correctly an MFC was done not too long before 7.1 > release was setup. > I don't know what MFCes were done, at least I didn't MFC any changes I made. > Let's see what Pyun says... > I'm not sure what is root cause of this panic. If you can reliably reproduce the panic would you let me know? CURRENT has a couple of fixes for edge-cases as well as some new hardware features(TSO, VLAN hardware tagging and WOL etc). Would you try latest fxp(4) in HEAD? I think you can use cvsweb interface to get latest files. http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/dev/fxp/if_fxp.c http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/dev/fxp/if_fxpreg.h http://www.freebsd.org/cgi/cvsweb.cgi/src/sys/dev/fxp/if_fxpvar.h -- Regards, Pyun YongHyeon
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20090105032657.GA1842>