kern/133670: 8.0-CURRENT panics due to gnome-settings-daemon

Ashish SHUKLA wahjava at gmail.com
Sun Apr 12 13:20:06 PDT 2009


>Number:         133670
>Category:       kern
>Synopsis:       8.0-CURRENT panics due to gnome-settings-daemon
>Confidential:   no
>Severity:       serious
>Priority:       low
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Sun Apr 12 20:20:05 UTC 2009
>Closed-Date:
>Last-Modified:
>Originator:     Ashish SHUKLA
>Release:        FreeBSD 8.0-CURRENT amd64
>Organization:
N/A
>Environment:
System: FreeBSD chateau.d.lf 8.0-CURRENT FreeBSD 8.0-CURRENT #3: Sun Apr 12 21:26:49 IST 2009 root at chateau.d.lf:/usr/obj/usr/src/sys/CHATEAU amd64


>Description:
After portupgrade-ing to GNOME 2.26 today, I'm not able to boot into
GNOME. As soon as gnome-settings-daemon gets started, I get a kernel
panic.

With kernel "FreeBSD 8.0-CURRENT #2: Wed Apr  8 09:26:34 IST 2009" I
get following panic

,----
| 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 "amd64-marcel-freebsd"...  
| (kgdb) core-file /var/crash/vmcore.0
| 
| Unread portion of the kernel message buffer:
| Kernel page fault with the following non-sleepable locks held:
| exclusive sleep mutex 32 (UMA zone) r = 0 (0xffffff007f66cd30) locked @ /usr/src/sys/vm/uma_core.c:1990
| KDB: stack backtrace:
| db_trace_self_wrapper() at db_trace_self_wrapper+0x2a
| _witness_debugger() at _witness_debugger+0x49
| witness_warn() at witness_warn+0x2b9
| trap() at trap+0x3c1
| calltrap() at calltrap+0x8
| --- trap 0xc, rip = 0xffffffff805fc390, rsp = 0xfffffffe8f1e07d0, rbp = 0xfffffffe8f1e07f0 ---
| uma_dbg_alloc() at uma_dbg_alloc+0x19
| uma_zalloc_arg() at uma_zalloc_arg+0x2b4
| malloc() at malloc+0x7f
| sodupsockaddr() at sodupsockaddr+0x1b
| uipc_bind() at uipc_bind+0x407
| kern_bind() at kern_bind+0xed
| bind() at bind+0x3a
| syscall() at syscall+0x1bf
| Xfast_syscall() at Xfast_syscall+0xd0
| --- syscall (104, FreeBSD ELF64, bind), rip = 0x8021f854c, rsp = 0x7fffffffe1d8, rbp = 0x18 ---
| 
| 
| Fatal trap 12: page fault while in kernel mode
| cpuid = 0; apic id = 00
| fault virtual address   = 0x7c
| fault code              = supervisor read data, page not present
| instruction pointer     = 0x20:0xffffffff805fc390
| stack pointer           = 0x28:0xfffffffe8f1e07d0
| frame pointer           = 0x28:0xfffffffe8f1e07f0
| code segment            = base 0x0, limit 0xfffff, type 0x1b
|                         = DPL 0, pres 1, long 1, def32 0, gran 1
| processor eflags        = interrupt enabled, resume, IOPL = 0
| current process         = 1451 (pulseaudio)
| lock order reversal: (Giant after non-sleepable)
|  1st 0xffffff007f66cd30 32 (UMA zone) @ /usr/src/sys/vm/uma_core.c:1990
|  2nd 0xffffffff80966960 Giant (Giant) @ /usr/src/sys/dev/kbdmux/kbdmux.c:1044
| KDB: stack backtrace:
| panic: from debugger
| cpuid = 0
| Uptime: 2m55s
| Physical memory: 2025 MB
| Dumping 210 MB: 195 179 163 147 131 115 99 83 67 51 35 19 3
| 
| Reading symbols from /boot/kernel/geom_journal.ko...Reading symbols from /boot/kernel/geom_journal.ko.symbols...done.
| done.
| Loaded symbols for /boot/kernel/geom_journal.ko
| Reading symbols from /boot/kernel/snd_ds1.ko...Reading symbols from /boot/kernel/snd_ds1.ko.symbols...done.
| done.
| Loaded symbols for /boot/kernel/snd_ds1.ko
| Reading symbols from /boot/kernel/sound.ko...Reading symbols from /boot/kernel/sound.ko.symbols...done.
| done.
| Loaded symbols for /boot/kernel/sound.ko
| Reading symbols from /boot/kernel/snd_hda.ko...Reading symbols from /boot/kernel/snd_hda.ko.symbols...done.
| done.
| Loaded symbols for /boot/kernel/snd_hda.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 /usr/local/modules/fuse.ko...done.
| Loaded symbols for /usr/local/modules/fuse.ko
| Reading symbols from /boot/kernel/blank_saver.ko...Reading symbols from /boot/kernel/blank_saver.ko.symbols...done.
| done.
| Loaded symbols for /boot/kernel/blank_saver.ko
| Reading symbols from /boot/kernel/i915.ko...Reading symbols from /boot/kernel/i915.ko.symbols...done.
| done.
| Loaded symbols for /boot/kernel/i915.ko
| Reading symbols from /boot/kernel/drm.ko...Reading symbols from /boot/kernel/drm.ko.symbols...done.
| done.
| Loaded symbols for /boot/kernel/drm.ko
| #0  doadump () at pcpu.h:223
| 223     pcpu.h: No such file or directory.
|         in pcpu.h
| (kgdb) bt
| #0  doadump () at pcpu.h:223
| #1  0xffffffff80408512 in boot (howto=260) at /usr/src/sys/kern/kern_shutdown.c:420
| #2  0xffffffff804089c0 in panic (fmt=Variable "fmt" is not available.
| ) at /usr/src/sys/kern/kern_shutdown.c:576
| #3  0xffffffff801aa217 in db_panic (addr=Variable "addr" is not available.
| ) at /usr/src/sys/ddb/db_command.c:478
| #4  0xffffffff801aa6a1 in db_command (last_cmdp=0xffffffff809338a0, cmd_table=Variable "cmd_table" is not available.
| ) at /usr/src/sys/ddb/db_command.c:445
| #5  0xffffffff801aa8e9 in db_command_loop () at /usr/src/sys/ddb/db_command.c:498
| #6  0xffffffff801ac747 in db_trap (type=Variable "type" is not available.
| ) at /usr/src/sys/ddb/db_main.c:229
| #7  0xffffffff80435eb2 in kdb_trap (type=12, code=0, tf=0xfffffffe8f1e0720) at /usr/src/sys/kern/subr_kdb.c:534
| #8  0xffffffff80641d40 in trap_fatal (frame=0xfffffffe8f1e0720, eva=Variable "eva" is not available.
| ) at /usr/src/sys/amd64/amd64/trap.c:840
| #9  0xffffffff80642ac1 in trap (frame=0xfffffffe8f1e0720) at /usr/src/sys/amd64/amd64/trap.c:338
| #10 0xffffffff8061ea93 in calltrap () at /usr/src/sys/amd64/amd64/exception.S:223
| #11 0xffffffff805fc390 in uma_dbg_alloc (zone=0xffffff007f66be00, slab=0xffffff000158eca0, item=0xffffff000158e420) at /usr/src/sys/vm/uma_dbg.c:235
| #12 0xffffffff805fbb37 in uma_zalloc_arg (zone=0xffffff007f66be00, udata=0x0, flags=2) at /usr/src/sys/vm/uma_core.c:1991
| #13 0xffffffff803f7dfe in malloc (size=Variable "size" is not available.
| ) at uma.h:305
| #14 0xffffffff8046765c in sodupsockaddr (sa=0xffffff00033f2300, mflags=Variable "mflags" is not available.
| ) at /usr/src/sys/kern/uipc_socket.c:3112
| #15 0xffffffff80472cef in uipc_bind (so=Variable "so" is not available.
| ) at /usr/src/sys/kern/uipc_usrreq.c:472
| #16 0xffffffff8046f3bc in kern_bind (td=0xffffff002a9b0380, fd=Variable "fd" is not available.
| ) at /usr/src/sys/kern/uipc_syscalls.c:236
| #17 0xffffffff8046f424 in bind (td=0xffffff002a9b0380, uap=0xfffffffe8f1e0c00) at /usr/src/sys/kern/uipc_syscalls.c:206
| #18 0xffffffff8064225e in syscall (frame=0xfffffffe8f1e0c90) at /usr/src/sys/amd64/amd64/trap.c:977
| #19 0xffffffff8061ed20 in Xfast_syscall () at /usr/src/sys/amd64/amd64/exception.S:364
| #20 0x00000008021f854c in ?? ()
`----

After posting to freebsd-gnome@[1] and I tried with the latest kernel
"FreeBSD 8.0-CURRENT #3: Sun Apr 12 21:26:49 IST 2009" it still
panics:

,----
| 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 "amd64-marcel-freebsd"...
| (kgdb) core-file /var/crash/vmcore.1
| 
| Unread portion of the kernel message buffer:
| Kernel page fault with the following non-sleepable locks held:
| exclusive sleep mutex 32 (UMA zone) r = 0 (0xffffff007f66cd30) locked @ /usr/src/sys/vm/uma_core.c:1990
| KDB: stack backtrace:
| db_trace_self_wrapper() at db_trace_self_wrapper+0x2a
| _witness_debugger() at _witness_debugger+0x49
| witness_warn() at witness_warn+0x2ba
| trap() at trap+0x3c1
| calltrap() at calltrap+0x8
| --- trap 0xc, rip = 0xffffffff805fd490, rsp = 0xfffffffe8f2349e0, rbp = 0xfffffffe8f234a00 ---
| uma_dbg_alloc() at uma_dbg_alloc+0x19
| uma_zalloc_arg() at uma_zalloc_arg+0x2b4
| malloc() at malloc+0x7f
| getsockaddr() at getsockaddr+0x37
| connect() at connect+0x24
| syscall() at syscall+0x1bf
| Xfast_syscall() at Xfast_syscall+0xd0
| --- syscall (98, FreeBSD ELF64, connect), rip = 0x800d35e9c, rsp = 0x7fffffffdf28, rbp = 0x7fffffffe0b0 ---
| 
| 
| Fatal trap 12: page fault while in kernel mode
| cpuid = 0; apic id = 00
| fault virtual address   = 0x7c
| fault code              = supervisor read data, page not present
| instruction pointer     = 0x20:0xffffffff805fd490
| stack pointer           = 0x28:0xfffffffe8f2349e0
| frame pointer           = 0x28:0xfffffffe8f234a00
| code segment            = base 0x0, limit 0xfffff, type 0x1b
|                         = DPL 0, pres 1, long 1, def32 0, gran 1
| processor eflags        = interrupt enabled, resume, IOPL = 0
| current process         = 1394 (initial thread)
| panic: from debugger
| cpuid = 0
| Uptime: 4m19s
| Physical memory: 2025 MB
| Dumping 218 MB: 203 187 171 155 139 123 107 91 75 59 43 27 11
| 
| Reading symbols from /boot/kernel/geom_journal.ko...Reading symbols from /boot/kernel/geom_journal.ko.symbols...done.
| done.
| Loaded symbols for /boot/kernel/geom_journal.ko
| Reading symbols from /boot/kernel/snd_ds1.ko...Reading symbols from /boot/kernel/snd_ds1.ko.symbols...done.
| done.
| Loaded symbols for /boot/kernel/snd_ds1.ko
| Reading symbols from /boot/kernel/sound.ko...Reading symbols from /boot/kernel/sound.ko.symbols...done.
| done.
| Loaded symbols for /boot/kernel/sound.ko
| Reading symbols from /boot/kernel/snd_hda.ko...Reading symbols from /boot/kernel/snd_hda.ko.symbols...done.
| done.
| Loaded symbols for /boot/kernel/snd_hda.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 /usr/local/modules/fuse.ko...done.
| Loaded symbols for /usr/local/modules/fuse.ko
| Reading symbols from /boot/kernel/blank_saver.ko...Reading symbols from /boot/kernel/blank_saver.ko.symbols...done.
| done.
| Loaded symbols for /boot/kernel/blank_saver.ko
| Reading symbols from /boot/kernel/i915.ko...Reading symbols from /boot/kernel/i915.ko.symbols...done.
| done.
| Loaded symbols for /boot/kernel/i915.ko
| Reading symbols from /boot/kernel/drm.ko...Reading symbols from /boot/kernel/drm.ko.symbols...done.
| done.
| Loaded symbols for /boot/kernel/drm.ko
| #0  doadump () at pcpu.h:223
| 223     pcpu.h: No such file or directory.
|         in pcpu.h
| (kgdb) bt
| #0  doadump () at pcpu.h:223
| #1  0xffffffff80409252 in boot (howto=260) at /usr/src/sys/kern/kern_shutdown.c:420
| #2  0xffffffff80409700 in panic (fmt=Variable "fmt" is not available.
| ) at /usr/src/sys/kern/kern_shutdown.c:576
| #3  0xffffffff801aa447 in db_panic (addr=Variable "addr" is not available.
| ) at /usr/src/sys/ddb/db_command.c:478
| #4  0xffffffff801aa8d1 in db_command (last_cmdp=0xffffffff809349a0, cmd_table=Variable "cmd_table" is not available.
| ) at /usr/src/sys/ddb/db_command.c:445
| #5  0xffffffff801aab19 in db_command_loop () at /usr/src/sys/ddb/db_command.c:498
| #6  0xffffffff801ac977 in db_trap (type=Variable "type" is not available.
| ) at /usr/src/sys/ddb/db_main.c:229
| #7  0xffffffff80436dd2 in kdb_trap (type=12, code=0, tf=0xfffffffe8f234930) at /usr/src/sys/kern/subr_kdb.c:534
| #8  0xffffffff80642e90 in trap_fatal (frame=0xfffffffe8f234930, eva=Variable "eva" is not available.
| ) at /usr/src/sys/amd64/amd64/trap.c:840
| #9  0xffffffff80643c11 in trap (frame=0xfffffffe8f234930) at /usr/src/sys/amd64/amd64/trap.c:338
| #10 0xffffffff8061fbe3 in calltrap () at /usr/src/sys/amd64/amd64/exception.S:223
| #11 0xffffffff805fd490 in uma_dbg_alloc (zone=0xffffff007f66be00, slab=0xffffff000158eca0, item=0xffffff000158e4c0) at /usr/src/sys/vm/uma_dbg.c:235
| #12 0xffffffff805fcc37 in uma_zalloc_arg (zone=0xffffff007f66be00, udata=0x0, flags=2) at /usr/src/sys/vm/uma_core.c:1991
| #13 0xffffffff803f8b3e in malloc (size=Variable "size" is not available.
| ) at uma.h:305
| #14 0xffffffff8046d40f in getsockaddr (namp=0xfffffffe8f234b30, uaddr=0x7fffffffdf60 <Address 0x7fffffffdf60 out of bounds>, len=31) at /usr/src/sys/kern/uipc_syscalls.c:1664
| #15 0xffffffff80470e41 in connect (td=0xffffff0003b4aa80, uap=0xfffffffe8f234c00) at /usr/src/sys/kern/uipc_syscalls.c:520
| #16 0xffffffff806433ae in syscall (frame=0xfffffffe8f234c90) at /usr/src/sys/amd64/amd64/trap.c:977
| #17 0xffffffff8061fe70 in Xfast_syscall () at /usr/src/sys/amd64/amd64/exception.S:364
| #18 0x0000000800d35e9c in ?? ()
`----

Note: I've stopped avahi-daemon prior to these panics, as ddb was
having some problem dumping core while avahi-daemon was running.

References:
[1]  http://lists.freebsd.org/pipermail/freebsd-gnome/2009-April/022048.html
>How-To-Repeat:
1. Boot into gdm
2. Switch to TTY and stop avahi-daemon service.
3. Switch back to gdm screen
4. Enter username and password and immediately switch to TTY.
5. The kernel panics.
>Fix:



>Release-Note:
>Audit-Trail:
>Unformatted:


More information about the freebsd-bugs mailing list