Date: Tue, 13 Jul 2004 15:10:25 -0400 From: Gerrit Nagelhout <gnagelhout@sandvine.com> To: "'current@freebsd.org'" <current@freebsd.org> Subject: SW_WDOG problem Message-ID: <FE045D4D9F7AED4CBFF1B3B813C85337054EC52F@mail.sandvine.com>
next in thread | raw e-mail | index | archive | help
Hi, Were are trying out the new software watchdog on current (from a couple of weeks ago) and are running into a panic within a panic. What happens is when the software watchdog tries to panic the system (with interrupts disabled), it manages to write out the core file, but then panics again in pmap_invalidate_range because interrupts are enabled. Any ideas on how to work around this? Thanks, Gerrit if (smp_started) { if (!(read_eflags() & PSL_I)) panic("%s: interrupts disabled", __func__); mtx_lock_spin(&smp_tlb_mtx); } else critical_enter(); backtrace(c0720347,2,c78e4550,14674,104) at backtrace+0x1c __panic(c07376ff,273,c07376e7,c06fccf0,d4574000) at __panic+0xc4 pmap_invalidate_range(c07b73c0,d4573000,d4574000) at pmap_invalidate_range+0x50 pmap_qenter(d4573000,e064d9f4,1,22,d4577000) at pmap_qenter+0x65 vm_hold_load_pages(d3b40c18,d4573000,d4577000,c7779000,d3b21110) at vm_hold_load_pages+0x17c allocbuf(d3b40c18,4000,4000,4000,200000a4) at allocbuf+0x3a3 geteblk(4000,c22619a0,c053dcae,c05a447d,e064dab0) at geteblk+0x52 ibwrite(d3b21110,e064dab0,c059a3bd,d3b21110,e064dae8) at ibwrite+0x25c bwrite(d3b21110,e064dae8,c05a4dd4,d3b21110,80012) at bwrite+0x1a bawrite(d3b21110,80012,0,c22619a0,c050b01d) at bawrite+0x1d vop_stdfsync(e064db3c,0,c7779000,e064db08,c050b01d) at vop_stdfsync+0x1d4 spec_fsync(e064db3c,e064db68,c065b373,e064db3c,30002) at spec_fsync+0x36 spec_vnoperate(e064db3c,30002,c0779560,0,c773c844) at spec_vnoperate+0x1d ffs_sync(c773c800,2,c225c100,c0779560,c773c800) at ffs_sync+0x423 sync(c0779560,0,c056fb5c,c070e65e,c056fc00) at sync+0x111 boot(100,0,28d,c071d938,100) at boot+0x1b6 __panic(c071d938,28d,c071d927,c076f7f4,c076ebd8) at __panic+0x24c watchdog_fire(e064dcac,c72cb880,e064dc3c,c06cf97f) at watchdog_fire+0xde hardclock(e064dcac,e064dc58,c06cf8ef,c06dbe6b,c740f280) at hardclock+0x14a clkintr(e064dcac,46,e064dc90,0,c22619a0) at clkintr+0xf4 intr_execute_handlers(c0770cc0,e064dcac,e064dca4,c06ca3a0,4) at intr_execute_handlers+0x90 atpic_handle_intr(0) at atpic_handle_intr+0xf4 Xatpic_intr0() at Xatpic_intr0+0x2a --- interrupt, eip = 0xc06cbeba, esp = 0xe064dcf0, ebp = 0xe064dcf0 --- cpu_idle_default(e064dd18,c0534870,1,0,0) at cpu_idle_default+0xa cpu_idle(1,0,0,0,c22606e0) at cpu_idle+0x2e idle_proc(0,e064dd48,9c000002,960e8fa,0) at idle_proc+0x20 fork_exit(c0534850,0,e064dd48) at fork_exit+0x7f fork_trampoline() at fork_trampoline+0xd
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?FE045D4D9F7AED4CBFF1B3B813C85337054EC52F>