kern/108078: [hal]: Periodic crashes of system at working HAL

Andrew Muhametshin andrew at dobrohot.org
Sat Jan 20 08:17:12 UTC 2007


> Please, remove the nvidia driver from the system, and report whether the
> panics disappear.
Without the nvidia-driver(9746), the panic does not appear.
Crash of system, most often, happens at switching (Ctrl+Alt+F1.. F9) 
between the console and X (but not each time -- is sometimes switched 
normally, and another time there is a crash).

#############################################################################
### Crash at switching from the console back in X
#############################################################################
Fatal trap 12: page fault while in kernel mode
fault virtual address   = 0x1
fault code              = supervisor read, page not present
instruction pointer     = 0x20:0xc0492170
stack pointer           = 0x28:0xe69497e8
frame pointer           = 0x28:0xe6949814
code segment            = base 0x0, limit 0xfffff, type 0x1b
                        = DPL 0, pres 1, def32 1, gran 1
processor eflags        = interrupt enabled, resume, IOPL = 3
current process         = 1183 (Xorg)
trap number             = 12
panic: page fault
Uptime: 20h5m54s
Dumping 958 MB (2 chunks)
  chunk 0: 1MB (159 pages) ... ok
  chunk 1: 958MB (245232 pages) 942 926 910 894 878 862 846 830 814 798 
782 766 750 734 718 702 686 670 654 638 622 606 590 574 558 542 526 510 
494 478 462 446 430 414 398 382 366 350 334 318 302 286 270 254 238 222 
206 190 174 158 142 126 110 94 78 62 46 30 14

#0  doadump () at pcpu.h:165
165             __asm __volatile("movl %%fs:0,%0" : "=r" (td));
(kgdb) list *0xc0492170
0xc0492170 is in devfs_populate_loop 
(/usr/src/sys/fs/devfs/devfs_devs.c:408).
403                      */
404                     if (cleanup)
405                             continue;
406                     KASSERT((cdp->cdp_flags & CDP_ACTIVE), ("Bogons, 
I tell ya'!"));
407
408                     if (dm->dm_idx <= cdp->cdp_maxdirent &&
409                         cdp->cdp_dirents[dm->dm_idx] != NULL) {
410                             de = cdp->cdp_dirents[dm->dm_idx];
411                             KASSERT(cdp == de->de_cdp, 
("inconsistent cdp"));
412                             continue;
(kgdb) bt
#0  doadump () at pcpu.h:165
#1  0xc04fb9b4 in boot (howto=260) at /usr/src/sys/kern/kern_shutdown.c:409
#2  0xc04fbce6 in panic (fmt=0xc06c60f6 "%s") at 
/usr/src/sys/kern/kern_shutdown.c:565
#3  0xc06a4b7c in trap_fatal (frame=0xe69497a8, eva=0) at 
/usr/src/sys/i386/i386/trap.c:837
#4  0xc06a4882 in trap_pfault (frame=0xe69497a8, usermode=0, eva=1) at 
/usr/src/sys/i386/i386/trap.c:745
#5  0xc06a444d in trap (frame=
      {tf_fs = 8, tf_es = 40, tf_ds = 40, tf_edi = -426468376, tf_esi = 
-989282304, tf_ebp = -426469356, tf_isp = -426469420, tf_ebx = 0, tf_edx 
= 0, tf_ecx = -992924288, tf_eax = 1, tf_trapno = 12, tf_err = 0, tf_eip 
= -1068949136, tf_cs = 32, tf_eflags = 2175639, tf_esp = -1059772343, 
tf_ss = -426469360}) at /usr/src/sys/i386/i386/trap.c:435
#6  0xc0690a0a in calltrap () at /usr/src/sys/i386/i386/exception.s:139
#7  0xc0492170 in devfs_populate_loop (dm=0xc4d12d80, cleanup=0) at 
/usr/src/sys/fs/devfs/devfs_devs.c:408
#8  0xc0492385 in devfs_populate (dm=0xc4d12d80) at 
/usr/src/sys/fs/devfs/devfs_devs.c:486
#9  0xc0494a8e in devfs_lookupx (ap=0x1, dm_unlock=0xe6949920) at 
/usr/src/sys/fs/devfs/devfs_vnops.c:615
#10 0xc0494cdc in devfs_lookup (ap=0xe694999c) at 
/usr/src/sys/fs/devfs/devfs_vnops.c:666
#11 0xc06b5138 in VOP_LOOKUP_APV (vop=0xc06f24e0, a=0xe694999c) at 
vnode_if.c:99
#12 0xc055d84b in lookup (ndp=0xe6949bc0) at vnode_if.h:56
#13 0xc055cfe8 in namei (ndp=0xe6949bc0) at 
/usr/src/sys/kern/vfs_lookup.c:211
#14 0xc0575a47 in vn_open_cred (ndp=0xe6949bc0, flagp=0xe6949cc0, 
cmode=32, cred=0xc5e94580, fdidx=12)
    at /usr/src/sys/kern/vfs_vnops.c:183
#15 0xc0575733 in vn_open (ndp=0xc4d12d80, flagp=0x1, cmode=1, fdidx=1) 
at /usr/src/sys/kern/vfs_vnops.c:91
#16 0xc056c7a8 in kern_open (td=0xc5395c00, path=0x1 <Address 0x1 out of 
bounds>, pathseg=UIO_SYSSPACE, flags=3,
    mode=-1077943776) at /usr/src/sys/kern/vfs_syscalls.c:1009
#17 0xc056c6a6 in open (td=0x1, uap=0xe6949d04) at 
/usr/src/sys/kern/vfs_syscalls.c:973
#18 0xc06a4f22 in syscall (frame=
      {tf_fs = 59, tf_es = 59, tf_ds = 59, tf_edi = 0, tf_esi = 
137482240, tf_ebp = -1077943624, tf_isp = -426467996, tf_ebx = 
136396288, tf_edx = 12, tf_ecx = -1077944208, tf_eax = 5, tf_trapno = 0, 
tf_err = 2, tf_eip = 674088487, tf_cs = 51, tf_eflags = 2110102, tf_esp 
= -1077943844, tf_ss = 59}) at /usr/src/sys/i386/i386/trap.c:983
#19 0xc0690a5f in Xint0x80_syscall () at 
/usr/src/sys/i386/i386/exception.s:200
#20 0x00000033 in ?? ()
Previous frame inner to this frame (corrupt stack?)





More information about the freebsd-bugs mailing list