Date: Tue, 27 Jul 2004 23:29:21 -0600 From: Scott Long <scottl@samsco.org> To: Alex Vasylenko <lxv@omut.org> Cc: current@freebsd.org Subject: Re: panic: page fault in sched_rem(td=0x0) Message-ID: <410739B1.1070209@samsco.org> In-Reply-To: <20040728052609.GA27806@tadpole.intranet> References: <20040728052609.GA27806@tadpole.intranet>
next in thread | previous in thread | raw e-mail | index | archive | help
Thanks for the report. I think this is related to other similar panics and deadlocks that have been seen recently. Have you tried turning off PREEMPTION in /sys/i386/include/param.h? Scott Alex Vasylenko wrote: > hardware: i386/SMP > build: FreeBSD 5.2-CURRENT #3: Mon Jul 26 01:52:59 EDT 2004 > kernel config: http://www.omut.org/~lxv/GENERIC-S > dmesg: http://www.omut.org/~lxv/dmesg.tadpole > > src/sys/kern/sched_ule.c,v 1.118 > src/sys/kern/kern_switch.c,v 1.73 > src/sys/kern/kern_kse.c,v 1.186 > > # gdb6 -k kernel.debug.1 vmcore.1 > GNU gdb 20040720 [GDB v6.x for 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-portbld-freebsd5.2"... > panic: page fault > panic messages: > --- > Fatal trap 12: page fault while in kernel mode > cpuid = 1; apic id = 01 > fault virtual address = 0x20 > fault code = supervisor read, page not present > instruction pointer = 0x8:0xc052e462 > stack pointer = 0x10:0xd6152948 > frame pointer = 0x10:0xd6152960 > code segment = base 0x0, limit 0xfffff, type 0x1b > = DPL 0, pres 1, def32 1, gran 1 > processor eflags = resume, IOPL = 0 > current process = 75006 (firefox-bin) > trap number = 12 > panic: page fault > cpuid = 1; > KDB: stack backtrace: > kdb_backtrace(c06a7d0d,1,c0693b33,d615288c,100) at kdb_backtrace+0x2e > panic(c0693b33,c06bf532,d6152908,1,1) at panic+0x141 > trap_fatal(d6152908,20,1,f3,20) at trap_fatal+0x354 > trap(c1730018,d6150010,d6150010,0,c2434480) at trap+0x103 > calltrap() at calltrap+0x5 > --- trap 0xc, eip = 0xc052e462, esp = 0xd6152948, ebp = 0xd6152960 --- > sched_rem(c1fd76e0,1,c06a8182,14b,c1fd76e0) at sched_rem+0x12 > setrunqueue(c2bb5b00,c1ccbdb0,c06a597c,3e4,1c7d43cb) at setrunqueue+0xdc > thread_switchout(c1fd8420,2,c06a842e,129,67204fba) at thread_switchout+0x7d > mi_switch(1,0,c06aa450,198,2) at mi_switch+0x293 > sleepq_switch(c9247488,c06a6f68,17a,2,d6152a68) at sleepq_switch+0x141 > sleepq_wait(c9247488,0,c06a842e,e7,0) at sleepq_wait+0x11 > msleep(c9247488,c070e140,44,c06a247c,0) at msleep+0x44a > bwait(c9247488,44,c06a247c,2b3,0) at bwait+0x70 > spec_getpages(d6152b58,d6152b84,c060153f,d6152b58,129) at spec_getpages+0x1fd > spec_vnoperate(d6152b58,129,0,d6152b48,0) at spec_vnoperate+0x18 > ffs_getpages(d6152b9c,0,c06ba3d5,26b,c06f77e0) at ffs_getpages+0x63f > vnode_pager_getpages(c1ed5ef4,d6152c7c,6,0,d6152c40) at vnode_pager_getpages+0x94 > vm_fault(c1e22324,29246000,1,0,c1fd8420) at vm_fault+0x922 > trap_pfault(d6152d48,1,292466a0,27c,292466a0) at trap_pfault+0xe9 > trap(c065002f,2f,20002f,85a7358,85a73cc) at trap+0x201 > calltrap() at calltrap+0x5 > --- trap 0xc, eip = 0x292466a0, esp = 0xbfbfcfdc, ebp = 0xbfbfcfe8 --- > boot() called on cpu#1 > Uptime: 1d15h37m52s > Dumping 383 MB > 16 32 48 64 80 96 112 128 144 160 176 192 208 224 240 256 272 288 304 320 336 352 368 > --- > #0 doadump () at pcpu.h:159 > 159 pcpu.h: No such file or directory. > in pcpu.h > doadump () at pcpu.h:159 > 159 in pcpu.h > (kgdb) where > #0 doadump () at pcpu.h:159 > #1 0xc051a1f1 in boot (howto=260) at /usr/src/sys/kern/kern_shutdown.c:392 > #2 0xc051a5dd in panic (fmt=0xc0693b33 "%s") at /usr/src/sys/kern/kern_shutdown.c:554 > #3 0xc0668d04 in trap_fatal (frame=0xd6152908, eva=0) at /usr/src/sys/i386/i386/trap.c:812 > #4 0xc0668373 in trap (frame={tf_fs = -1049427944, tf_es = -703266800, tf_ds = -703266800, tf_edi = 0, tf_esi = -1035778944, tf_ebp = -703256224, tf_isp = -703256268, tf_ebx = 0, tf_edx = -1040353568, tf_ecx = 1, tf_eax = -1040353568, tf_trapno = 12, tf_err = 0, tf_eip = -1068309406, tf_cs = 8, tf_eflags = 2162838, tf_esp = -1067013674, tf_ss = -703255224}) at /usr/src/sys/i386/i386/trap.c:247 > #5 0xc065472a in calltrap () at /usr/src/sys/i386/i386/exception.s:140 > #6 0xc1730018 in ?? () > #7 0xd6150010 in ?? () > #8 0xd6150010 in ?? () > #9 0x00000000 in ?? () > #10 0xc2434480 in ?? () > #11 0xd6152960 in ?? () > #12 0xd6152934 in ?? () > #13 0x00000000 in ?? () > #14 0xc1fd76e0 in ?? () > #15 0x00000001 in ?? () > #16 0xc1fd76e0 in ?? () > #17 0x0000000c in ?? () > #18 0x00000000 in ?? () > #19 0xc052e462 in sched_rem (td=0x0) at /usr/src/sys/kern/sched_ule.c:1656 > #20 0xc0520c7c in setrunqueue (td=0xc2bb5b00) at /usr/src/sys/kern/kern_switch.c:362 > #21 0xc0506fed in thread_switchout (td=0xc1fd8420) at /usr/src/sys/kern/kern_kse.c:1020 > #22 0xc0522363 in mi_switch (flags=477971403, newtd=0x0) at /usr/src/sys/kern/kern_synch.c:351 > #23 0xc053d4e1 in sleepq_switch (wchan=0x0) at /usr/src/sys/kern/subr_sleepqueue.c:412 > #24 0xc053d711 in sleepq_wait (wchan=0x0) at /usr/src/sys/kern/subr_sleepqueue.c:516 > #25 0xc0521f6a in msleep (ident=0xc9247488, mtx=0xc070e140, priority=68, wmesg=0x0, timo=0) at /usr/src/sys/kern/kern_synch.c:240 > #26 0xc056bbf0 in bwait (bp=0xc9247488, pri=68 'D', wchan=0xc06a247c "spread") at /usr/src/sys/kern/vfs_bio.c:3770 > #27 0xc04dcead in spec_getpages (ap=0xd6152b58) at /usr/src/sys/fs/specfs/spec_vnops.c:755 > #28 0xc04db9d8 in spec_vnoperate (ap=0x0) at /usr/src/sys/fs/specfs/spec_vnops.c:118 > #29 0xc060153f in ffs_getpages (ap=0xd6152b9c) at vnode_if.h:1317 > #30 0xc062d454 in vnode_pager_getpages (object=0xc1ed5ef4, m=0x0, count=24576, reqpage=0) at vnode_if.h:1317 > #31 0xc0613982 in vm_fault (map=0xc1e22324, vaddr=690249728, fault_type=1 '\001', fault_flags=0) at vm_pager.h:122 > #32 0xc06688b9 in trap_pfault (frame=0xd6152d48, usermode=1, eva=690251424) at /usr/src/sys/i386/i386/trap.c:707 > #33 0xc0668471 in trap (frame={tf_fs = -1067122641, tf_es = 47, tf_ds = 2097199, tf_edi = 140145496, tf_esi = 140145612, tf_ebp = -1077948440, tf_isp = -703255180, tf_ebx = 691666224, tf_edx = 137897984, tf_ecx = 140145496, tf_eax = 137897984, tf_trapno = 12, tf_err = 4, tf_eip = 690251424, tf_cs = 31, tf_eflags = 2163330, tf_esp = -1077948452, tf_ss = 47}) at /usr/src/sys/i386/i386/trap.c:316 > #34 0xc065472a in calltrap () at /usr/src/sys/i386/i386/exception.s:140 > #35 0xc065002f in bios32_init (junk=---Can't read userspace from dump, or kernel process---) at /usr/src/sys/i386/i386/bios.c:139 > Previous frame inner to this frame (corrupt stack?) > (kgdb) > _______________________________________________ > freebsd-current@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-current > To unsubscribe, send any mail to "freebsd-current-unsubscribe@freebsd.org"
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?410739B1.1070209>