FS#28077 - [gnome-games] quadrapassel and gnibbles segfault if run as a regular user

Attached to Project: Arch Linux
Opened by Timothy Keith (keithieopia) - Tuesday, 24 January 2012, 03:44 GMT
Last edited by Jan de Groot (JGC) - Thursday, 08 November 2012, 09:22 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To Ionut Biru (wonder)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Description:

quadrapassel and gnibbles segfault if they are run as a regular user. However, no segfaults when using sudo or simply running them as root.


Additional info:

$ dmesg | grep -i quadrapassel
[377024.146807] quadrapassel[4778]: segfault at ffff8006959389ce ip 00007ff9678fa435 sp 00007fff26de76f8 error 4 in libc-2.15.so[7ff9677d4000+199000]

$ dmesg | grep -i gnibbles
[376421.043211] gnibbles[4744]: segfault at ffff80625d716e0e ip 00007f9d49b6b490 sp 00007fff806eb668 error 4 in libc-2.15.so[7f9d49a45000+199000]


$ gdb gnibbles
GNU gdb (GDB) 7.3.1
Copyright (C) 2011 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-unknown-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /usr/bin/gnibbles...(no debugging symbols found)...done.
(gdb) set pagination 0
(gdb) run
Starting program: /usr/bin/gnibbles
[Thread debugging using libthread_db enabled]

Program received signal SIGSEGV, Segmentation fault.
0x00007fab13847435 in __memcpy_ssse3 () from /lib/libc.so.6
(gdb) bt
#0 0x00007fab13847435 in __memcpy_ssse3 () from /lib/libc.so.6
#1 0x00007fab10e70ae6 in ?? () from /usr/lib/libGL.so.1
#2 0x00007fab109f4a36 in ?? () from /usr/lib/libcogl.so.5
#3 0x00007fab109f328c in ?? () from /usr/lib/libcogl.so.5
#4 0x00007fab109d5059 in cogl_context_new_EXP () from /usr/lib/libcogl.so.5
#5 0x00007fab14d1cbee in ?? () from /usr/lib/libclutter-glx-1.0.so.0
#6 0x00007fab14d57ff5 in ?? () from /usr/lib/libclutter-glx-1.0.so.0
#7 0x00007fab14d641da in ?? () from /usr/lib/libclutter-glx-1.0.so.0
#8 0x00007fab14d6443d in ?? () from /usr/lib/libclutter-glx-1.0.so.0
#9 0x00007fab13d32300 in g_option_context_parse () from /usr/lib/libglib-2.0.so.0
#10 0x00007fab14d6550a in clutter_init () from /usr/lib/libclutter-glx-1.0.so.0
#11 0x00000000004097f1 in main ()
(gdb)


Steps to reproduce:
run "quadrapassel" or "gnibbles" with a non-root account
This task depends upon

Closed by  Jan de Groot (JGC)
Thursday, 08 November 2012, 09:22 GMT
Reason for closing:  Not a bug
Additional comments about closing:  Mixing 32bit DRI drivers with 64bit software doesn't work.
Comment by Jan de Groot (JGC) - Tuesday, 24 January 2012, 13:03 GMT
Could you attach the output of glxinfo, both run as normal user and root?
Comment by Timothy Keith (keithieopia) - Tuesday, 24 January 2012, 22:17 GMT
I think you're on to something based on the "direct rendering" line being "no" for a regular user and "yes" as root. Maybe it's a permissions issue and I need to be part of some unknown group? Also, if it helps I'm using xf86-video-intel

$ groups
wheel http video audio optical storage scanner power users vboxusers

EDIT: attached glxinfo as files instead of large copy-paste.
Comment by Greg (dolby) - Monday, 15 October 2012, 09:16 GMT
Is this still a problem?
Comment by Timothy Keith (keithieopia) - Monday, 15 October 2012, 15:34 GMT
Yes it is still segfaulting as a normal user, however it is throwing a more detailed error message about 64bit vs 32bit (I'm running 64bit):

libGL: OpenDriver: trying /usr/lib32/xorg/modules/dri/tls/i965_dri.so
libGL: OpenDriver: trying /usr/lib32/xorg/modules/dri/i965_dri.so
libGL error: dlopen /usr/lib32/xorg/modules/dri/i965_dri.so failed (/usr/lib32/xorg/modules/dri/i965_dri.so: wrong ELF class: ELFCLASS32)
libGL error: unable to load driver: i965_dri.so
libGL error: driver pointer missing
libGL error: failed to load driver: i965
libGL: OpenDriver: trying /usr/lib32/xorg/modules/dri/tls/swrast_dri.so
libGL: OpenDriver: trying /usr/lib32/xorg/modules/dri/swrast_dri.so
libGL error: dlopen /usr/lib32/xorg/modules/dri/swrast_dri.so failed (/usr/lib32/xorg/modules/dri/swrast_dri.so: wrong ELF class: ELFCLASS32)
libGL error: unable to load driver: swrast_dri.so
libGL error: failed to load driver: swrast

(quadrapassel:12601): Clutter-CRITICAL **: clutter_texture_set_cogl_texture: assertion `cogl_is_texture (cogl_tex)' failed
Segmentation fault
Comment by Greg (dolby) - Monday, 15 October 2012, 19:35 GMT
Can you report this to the gnome games devs?
Comment by Timothy Keith (keithieopia) - Wednesday, 07 November 2012, 20:08 GMT
The problem seems to be solved now. Found a old reference in my .bashrc that when removed solved the issues:

export LIBGL_DRIVERS_PATH=/usr/lib32/xorg/modules/dri

Specifically this forum post helped:

https://bbs.archlinux.org/viewtopic.php?pid=1178868#p1178868

Loading...