panic in g_conf_provider()

From: Pav Lucistnik <pav_at_oook.cz>
Date: 08 May 2003 23:03:58 +0000
Hi, I just got odd panic on -CURRENT from May 5. I typed this command
under normal user:

$ sysctl -a | grep dump

and system promptly panicked with:

Fatal trap 12: page fault while in kernel mode
fault virtual address   = 0x40
fault code              = supervisor read, page not present
instruction pointer     = 0x8:0xc01e4426
stack pointer           = 0x10:0xcd277bf8
frame pointer           = 0x10:0xcd277c14
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         = 2 (g_event)
trap number             = 12
panic: page fault

I can't reproduce it now, the given command works fine now. There was no
disc activity in background. Earlier today, I was using Smartmedia USB
card reader (da0 device over umass0), disconnected few hours ago.


(kgdb) bt
#0  doadump () at /usr/src/sys/kern/kern_shutdown.c:238
#1  0xc0216338 in boot (howto=256) at
/usr/src/sys/kern/kern_shutdown.c:370
#2  0xc021662b in panic () at /usr/src/sys/kern/kern_shutdown.c:543
#3  0xc0349db2 in trap_fatal (frame=0xcd277bb8, eva=0) at
/usr/src/sys/i386/i386/trap.c:834
#4  0xc0349a92 in trap_pfault (frame=0xcd277bb8, usermode=0, eva=64) at
/usr/src/sys/i386/i386/trap.c:748
#5  0xc034968d in trap (frame=
      {tf_fs = 24, tf_es = 16, tf_ds = 16, tf_edi = -1020581888, tf_esi
= -1070031968, tf_ebp = -853050348, tf_isp = -853050396, tf_ebx = 0,
tf_edx = 8192, tf_ecx = 4953, tf_eax = -1012442624, tf_trapno = 12,
tf_err = 0, tf_eip = -1071758298, tf_cs = 8, tf_eflags = 66178, tf_esp =
-1020581888, tf_ss = -1012442624}) at /usr/src/sys/i386/i386/trap.c:433
#6  0xc033a3c8 in calltrap () at {standard input}:96
#7  0xc01e4cd4 in g_conf_provider (sb=0xc0389ba0, pp=0x0) at
/usr/src/sys/geom/geom_dump.c:187
#8  0xc01e4e07 in g_conf_geom (sb=0xc32b2800, gp=0xc32b2800, pp=0x0,
cp=0x0) at /usr/src/sys/geom/geom_dump.c:218
#9  0xc01e4ea2 in g_conf_class (sb=0xc32b2800, mp=0xc3a75a00, gp=0x0,
pp=0x0, cp=0x0) at /usr/src/sys/geom/geom_dump.c:233
#10 0xc01e4f39 in g_conf_specific (sb=0xc32b2800, mp=0x0, gp=0x0,
pp=0x0, cp=0x0) at /usr/src/sys/geom/geom_dump.c:248
#11 0xc01e4f9d in g_confxml (p=0x0, flag=0) at
/usr/src/sys/geom/geom_dump.c:260
#12 0xc01e54b4 in one_event () at /usr/src/sys/geom/geom_event.c:179
#13 0xc01e5575 in g_run_events () at /usr/src/sys/geom/geom_event.c:199
#14 0xc01e63d5 in g_event_procbody () at
/usr/src/sys/geom/geom_kern.c:133
#15 0xc020365e in fork_exit (callout=0xc01e63b0 <g_event_procbody>,
arg=0x0, frame=0x0) at /usr/src/sys/kern/kern_fork.c:792


(kgdb) up 7
#7  0xc01e4cd4 in g_conf_provider (sb=0xc0389ba0, pp=0x0) at
/usr/src/sys/geom/geom_dump.c:187
187                     pp->geom->dumpconf(sb, "\t    ", pp->geom, NULL,
pp);


(kgdb) list
182             sbuf_printf(sb, "\t  <mediasize>%jd</mediasize>\n",
183                 (intmax_t)pp->mediasize);
184             sbuf_printf(sb, "\t  <sectorsize>%u</sectorsize>\n",
pp->sectorsize);
185             if (pp->geom->dumpconf != NULL) {
186                     sbuf_printf(sb, "\t  <config>\n");
187                     pp->geom->dumpconf(sb, "\t    ", pp->geom, NULL,
pp);
188                     sbuf_printf(sb, "\t  </config>\n");
189             }
190             sbuf_printf(sb, "\t</provider>\n");
191     }


(kgdb) print pp
$1 = (struct g_provider *) 0x0


(kgdb) up
#8  0xc01e4e07 in g_conf_geom (sb=0xc32b2800, gp=0xc32b2800, pp=0x0,
cp=0x0) at /usr/src/sys/geom/geom_dump.c:218
218                     g_conf_provider(sb, pp2);
(kgdb) list
213             }
214     
215             LIST_FOREACH(pp2, &gp->provider, provider) {
216                     if (pp != NULL && pp != pp2)
217                             continue;
218                     g_conf_provider(sb, pp2);
219             }
220             sbuf_printf(sb, "    </geom>\n");
221     }
222     


-- 
Pav Lucistnik <pav_at_oook.cz>
<Fufie> snow should be on the tv and in the mountains, not here
Received on Thu May 08 2003 - 14:04:19 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:37:07 UTC