Bug #1329

Program received signal SIGSEGV, Segmentation fault.

Added by shackra about 7 years ago. Updated over 6 years ago.

Status:Closed Start date:07/07/2011
Priority:Urgent Due date:
Assignee:kervala % Done:

100%

Category:OS: GNU/Linux
Target version:-

Description

hello!

i have a little problem with the compiled version of the Ryzom client, it crashes :(, i am using Parabola GNU/Linux for 64Bits (an Arch GNU/Linux derivate), i compiled all the librarys from the mercurial repository of Kervala (hg clone http://hg.kervala.net/packaging/) and all the dependencies for Arch.

there is the output from GDB:

jorge@Abril:/usr/local/games$ gdb ryzom_client
GNU gdb (GDB) 7.2
Copyright (C) 2010 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/local/games/ryzom_client...done.
(gdb) run
Starting program: /usr/local/games/ryzom_client 
[Thread debugging using libthread_db enabled]
[New Thread 0x7fffefc23700 (LWP 6194)]

Program received signal SIGSEGV, Segmentation fault.
0x0000000100000000 in ?? ()
(gdb) bt
#0  0x0000000100000000 in ?? ()
#1  0x00007ffff2b284a1 in XML_Parse () from /usr/lib/libxmlparse.so.0
#2  0x00007fffec5de9ec in ?? () from /usr/lib/xorg/modules/dri/i965_dri.so
#3  0x00007fffec5ebd9d in ?? () from /usr/lib/xorg/modules/dri/i965_dri.so
#4  0x00007fffec5dc0af in ?? () from /usr/lib/xorg/modules/dri/i965_dri.so
#5  0x00007fffee9479c7 in ?? () from /usr/lib/libGL.so.1
#6  0x00007fffee924a29 in ?? () from /usr/lib/libGL.so.1
#7  0x00007fffee921948 in ?? () from /usr/lib/libGL.so.1
#8  0x00007fffee921aed in glXChooseVisual () from /usr/lib/libGL.so.1
#9  0x00007fffeebbe051 in NL3D::CDriverGL::setDisplay (this=0x1f99e60, wnd=0, 
    mode=..., show=false, resizeable=<value optimized out>)
    at /home/jorge/.ryzom_sc/ryzom/code/nel/src/3d/driver/opengl/driver_opengl_window.cpp:1063
#10 0x00007ffff6bb2a1e in NL3D::CDriverUser::setDisplay (this=0x1cc4a60, 
    wnd=0, mode=<value optimized out>, show=false, resizeable=true)
    at /home/jorge/.ryzom_sc/ryzom/code/nel/src/3d/driver_user.cpp:237
#11 0x00007ffff6bb0f90 in NL3D::CDriverUser::setDisplay (this=0x1cc4a60, 
    mode=..., show=false, resizeable=true)
    at /home/jorge/.ryzom_sc/ryzom/code/nel/src/3d/driver_user.cpp:228
#12 0x00000000007d9a64 in prelogInit ()
    at /home/jorge/.ryzom_sc/ryzom/code/ryzom/client/src/init.cpp:886
#13 0x000000000067e051 in main (argc=<value optimized out>, 
    argv=<value optimized out>)
---Type <return> to continue, or q <return> to quit---
    at /home/jorge/.ryzom_sc/ryzom/code/ryzom/client/src/client.cpp:555

there is the output of uname -a:

Linux 2.6.39-LIBRE #1 SMP PREEMPT Fri Jul 1 06:30:01 UTC 2011 x86_64 Intel(R) Core(TM) i3 CPU M 330 @ 2.13GHz GenuineIntel GNU/Linux

regards!

glxinfo.txt (14.5 kB) Magnifier shackra, 07/17/2011 09:27 pm

Pantallazo-1.png (1.4 MB) shackra, 08/13/2011 12:00 am

History

#1 Updated by shackra about 7 years ago

i post a little more, just my hardware information (maybe it can help!):

jorge@Abril:~$ sudo lspci -nnk
00:00.0 Host bridge [0600]: Intel Corporation Core Processor DRAM Controller [8086:0044] (rev 12)
    Subsystem: Toshiba America Info Systems Device [1179:ff40]
    Kernel driver in use: agpgart-intel
    Kernel modules: intel-agp
00:02.0 VGA compatible controller [0300]: Intel Corporation Core Processor Integrated Graphics Controller [8086:0046] (rev 12)
    Subsystem: Toshiba America Info Systems Device [1179:ff40]
    Kernel driver in use: i915
    Kernel modules: i915
00:16.0 Communication controller [0780]: Intel Corporation 5 Series/3400 Series Chipset HECI Controller [8086:3b64] (rev 06)
    Subsystem: Toshiba America Info Systems Device [1179:ff40]
00:1a.0 USB Controller [0c03]: Intel Corporation 5 Series/3400 Series Chipset USB2 Enhanced Host Controller [8086:3b3c] (rev 06)
    Subsystem: Toshiba America Info Systems Device [1179:ff40]
    Kernel driver in use: ehci_hcd
    Kernel modules: ehci-hcd
00:1b.0 Audio device [0403]: Intel Corporation 5 Series/3400 Series Chipset High Definition Audio [8086:3b56] (rev 06)
    Subsystem: Toshiba America Info Systems Device [1179:ff44]
    Kernel driver in use: HDA Intel
    Kernel modules: snd-hda-intel
00:1c.0 PCI bridge [0604]: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 1 [8086:3b42] (rev 06)
    Kernel driver in use: pcieport
    Kernel modules: shpchp
00:1c.1 PCI bridge [0604]: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 2 [8086:3b44] (rev 06)
    Kernel driver in use: pcieport
    Kernel modules: shpchp
00:1c.3 PCI bridge [0604]: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 4 [8086:3b48] (rev 06)
    Kernel driver in use: pcieport
    Kernel modules: shpchp
00:1c.5 PCI bridge [0604]: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 6 [8086:3b4c] (rev 06)
    Kernel driver in use: pcieport
    Kernel modules: shpchp
00:1d.0 USB Controller [0c03]: Intel Corporation 5 Series/3400 Series Chipset USB2 Enhanced Host Controller [8086:3b34] (rev 06)
    Subsystem: Toshiba America Info Systems Device [1179:ff40]
    Kernel driver in use: ehci_hcd
    Kernel modules: ehci-hcd
00:1e.0 PCI bridge [0604]: Intel Corporation 82801 Mobile PCI Bridge [8086:2448] (rev a6)
00:1f.0 ISA bridge [0601]: Intel Corporation Mobile 5 Series Chipset LPC Interface Controller [8086:3b09] (rev 06)
    Subsystem: Toshiba America Info Systems Device [1179:ff40]
    Kernel modules: iTCO_wdt
00:1f.2 SATA controller [0106]: Intel Corporation 5 Series/3400 Series Chipset 4 port SATA AHCI Controller [8086:3b29] (rev 06)
    Subsystem: Toshiba America Info Systems Device [1179:ff40]
    Kernel driver in use: ahci
    Kernel modules: ahci
00:1f.6 Signal processing controller [1180]: Intel Corporation 5 Series/3400 Series Chipset Thermal Subsystem [8086:3b32] (rev 06)
    Subsystem: Toshiba America Info Systems Device [1179:ff40]
    Kernel driver in use: intel ips
    Kernel modules: intel_ips
01:00.0 SD Host controller [0805]: Ricoh Co Ltd MMC/SD Host Controller [1180:e822] (rev 01)
    Subsystem: Toshiba America Info Systems Device [1179:ff40]
    Kernel driver in use: sdhci-pci
    Kernel modules: sdhci-pci
01:00.1 System peripheral [0880]: Ricoh Co Ltd Memory Stick Host Controller [1180:e230] (rev 01)
    Subsystem: Toshiba America Info Systems Device [1179:ff40]
01:00.2 System peripheral [0880]: Ricoh Co Ltd Device [1180:e852] (rev 01)
    Subsystem: Toshiba America Info Systems Device [1179:ff40]
02:00.0 Ethernet controller [0200]: Atheros Communications Inc. AR242x / AR542x Wireless Network Adapter (PCI-Express) [168c:001c] (rev 01)
    Subsystem: Foxconn International, Inc. Device [105b:e00d]
    Kernel driver in use: ath5k
    Kernel modules: ath5k
07:00.0 Ethernet controller [0200]: Realtek Semiconductor Co., Ltd. RTL8101E/RTL8102E PCI Express Fast Ethernet controller [10ec:8136] (rev 02)
    Subsystem: Toshiba America Info Systems Device [1179:ff40]
    Kernel driver in use: r8169
    Kernel modules: r8169
3f:00.0 Host bridge [0600]: Intel Corporation Core Processor QuickPath Architecture Generic Non-core Registers [8086:2c62] (rev 02)
    Subsystem: Intel Corporation Device [8086:8086]
3f:00.1 Host bridge [0600]: Intel Corporation Core Processor QuickPath Architecture System Address Decoder [8086:2d01] (rev 02)
    Subsystem: Intel Corporation Device [8086:8086]
3f:02.0 Host bridge [0600]: Intel Corporation Core Processor QPI Link 0 [8086:2d10] (rev 02)
    Subsystem: Intel Corporation Device [8086:8086]
3f:02.1 Host bridge [0600]: Intel Corporation Core Processor QPI Physical 0 [8086:2d11] (rev 02)
    Subsystem: Intel Corporation Device [8086:8086]
3f:02.2 Host bridge [0600]: Intel Corporation Core Processor Reserved [8086:2d12] (rev 02)
    Subsystem: Intel Corporation Device [8086:8086]
3f:02.3 Host bridge [0600]: Intel Corporation Core Processor Reserved [8086:2d13] (rev 02)
    Subsystem: Intel Corporation Device [8086:8086]
jorge@Abril:~$ 

#2 Updated by rti about 7 years ago

LinuxDonald has the same problem... http://dev.ryzom.com/boards/18/topics/4791
Interesting is:

But the compiled version form your wiki is working.

Did you check OfficialRyzomClientLinux?

#3 Updated by shackra about 7 years ago

yes, when i was using a distribution based on Debian GNU/Linux, but, it crashes when you want to give an item to a trainer, so i compiled the client in that time and everything fine. Now on Parabola i have this issues.

that client (the official one) will not work because i dont have all the dependencies available in my system to run it :-/.

#4 Updated by LinuxDonald about 7 years ago

I´m now not alone with that problem :) ...... But where is the problem is it mesa? is it Arch Linux??

Here is my mesa bug report: https://bugs.freedesktop.org/show_bug.cgi?id=38471

#5 Updated by shackra about 7 years ago

i imitate you, so, i post the bug there too https://bugs.freedesktop.org/show_bug.cgi?id=39239 :)

#6 Updated by shackra about 7 years ago

I recompile some packages (the ones from the bug) to get packages with the Debug Symbol, so, i have more information about this bug:

Starting program: /usr/local/games/ryzom_client
[Thread debugging using libthread_db enabled]
[New Thread 0x7fffefc3c700 (LWP 13126)]
[Thread 0x7fffefc3c700 (LWP 13126) exited]

Program received signal SIGSEGV, Segmentation fault.
0x0000000100000000 in ?? ()
#0 0x0000000100000000 in ?? ()
#1 0x00007ffff2b3504e in XML_Parse (parser=0x1fb2ca0,
s=0x7fffec826240 "<driinfo>\n<section>\n<description lang=\"en\" text=\"Performance\"/>\n<description lang=\"de\" text=\"Leistung\"/>\n<description lang=\"es\" text=\"Rendimiento\"/>\n<description lang=\"nl\" text=\"Prestatie\"/>\n<descript"..., len=8928, isFinal=1)
at xmlparse.c:860
#2 0x00007fffec6213db in driParseOptionInfo (info=0x1fb0e28, configOptions=<value optimized out>, nConfigOptions=11)
at ../common/xmlconfig.c:686
#3 0x00007fffec630dff in intelInitScreen2 (psp=0x1fb0c70) at intel_screen.c:515
#4 0x00007fffec61eb20 in dri2CreateNewScreen (scrn=0, fd=10, extensions=0x1fa9750, driver_configs=0x7fffffffd318, data=0x1faa8d0)
at ../common/dri_util.c:878
#5 0x00007fffee9623c5 in dri2CreateScreen (screen=0, priv=0x1fa8480) at dri2_glx.c:840
#6 0x00007fffee94236c in AllocAndFetchScreenConfigs (dpy=0x1f9b670) at glxext.c:765
#7 __glXInitialize (dpy=0x1f9b670) at glxext.c:865
#8 0x00007fffee93edb4 in GetGLXPrivScreenConfig (dpy=0x1f9b670, scrn=0, ppriv=0x7fffffffd4f8, ppsc=0x7fffffffd4f0) at glxcmds.c:130
#9 0x00007fffee93fd47 in glXChooseVisual (dpy=0x1f9b670, screen=0, attribList=0x7fffeee0ad40) at glxcmds.c:1160
#10 0x00007fffeebd8051 in NL3D::CDriverGL::setDisplay (this=0x1f9a030, wnd=0, mode=..., show=false, resizeable=<value optimized out>)
at /home/jorge/.ryzom_sc/ryzom/code/nel/src/3d/driver/opengl/driver_opengl_window.cpp:1063
#11 0x00007ffff6bb3a1e in NL3D::CDriverUser::setDisplay (this=0x1cc4bb0, wnd=0, mode=<value optimized out>, show=false, resizeable=true)
at /home/jorge/.ryzom_sc/ryzom/code/nel/src/3d/driver_user.cpp:237
#12 0x00007ffff6bb1f90 in NL3D::CDriverUser::setDisplay (this=0x1cc4bb0, mode=..., show=false, resizeable=true)
at /home/jorge/.ryzom_sc/ryzom/code/nel/src/3d/driver_user.cpp:228
#13 0x00000000007d9a64 in prelogInit () at /home/jorge/.ryzom_sc/ryzom/code/ryzom/client/src/init.cpp:886
#14 0x000000000067e051 in main (argc=<value optimized out>, argv=<value optimized out>)
at /home/jorge/.ryzom_sc/ryzom/code/ryzom/client/src/client.cpp:555

#7 Updated by LinuxDonald about 7 years ago

@devs is the Debug log now okay from shackra or should i add too an log with more debug infos? on Arch Linux

#8 Updated by kervala about 7 years ago

Please could you provide the list of your supported visuals with "glxinfo -l > glxinfo.txt" ? Thanks.

I just would like to check if visuals we are using are supported by your driver, but I suppose yes :(

#9 Updated by kervala about 7 years ago

  • Category changed from Client: General to OS: GNU/Linux

#10 Updated by Naush about 7 years ago

Because the Precompiled Version works for me but not the self compiled one :(

This line is very interesting.

ldd /usr/lib64/xorg/modules/dri/i965_dri.so

...
        libexpat.so.1 => /usr/lib64/libexpat.so.1 (0x00007fdd810a6000)
...

In your stack trace DRI module is linked with libxmlparse instead of libexpat.

To test this assertion you can gdb glxgears, CTRL+C, and type info shared. You should see expat.so in the result.

As a quick remedy you can try to build ryzom_client as static.

Waiting your feedback :)

#11 Updated by shackra about 7 years ago

kervala wrote:

Please could you provide the list of your supported visuals with "glxinfo -l > glxinfo.txt" ? Thanks.

I just would like to check if visuals we are using are supported by your driver, but I suppose yes :(

ok, i attach the file "glxinfo.txt" as you asked! :)

#12 Updated by shackra about 7 years ago

Naush wrote:

Because the Precompiled Version works for me but not the self compiled one :(

This line is very interesting.

ldd /usr/lib64/xorg/modules/dri/i965_dri.so

[...]
In your stack trace DRI module is linked with libxmlparse instead of libexpat.

To test this assertion you can gdb glxgears, CTRL+C, and type info shared. You should see expat.so in the result.

As a quick remedy you can try to build ryzom_client as static.

Waiting your feedback :)

ok, i gdbed the program glxgears, i do not press CTRL+C, just, i closed it, then i use "info shared" in gdb, this is the output!:

jorge@Abril:~/Escritorio$ gdb /usr/bin/glxgears
GNU gdb (GDB) 7.2
Copyright (C) 2010 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/glxgears...(no debugging symbols found)...done.
(gdb) run
Starting program: /usr/bin/glxgears 
[Thread debugging using libthread_db enabled]
Running synchronized to the vertical refresh.  The framerate should be
approximately the same as the monitor refresh rate.
298 frames in 5.0 seconds = 59.527 FPS
298 frames in 5.0 seconds = 59.531 FPS
XIO:  fatal IO error 11 (Resource temporarily unavailable) on X server ":0" 
      after 1513 requests (1513 known processed) with 0 events remaining.

Program exited with code 01.
(gdb) info shared
From                To                  Syms Read   Shared Object Library
0x00007ffff7ddfad0  0x00007ffff7df5704  Yes (*)     /lib/ld-linux-x86-64.so.2
(*): Shared library is missing debugging information.
(gdb) 

#13 Updated by ThibG about 7 years ago

This NOT a bug in any driver, the whole thing happens because of libwww, which provides its own XML parser (libxmlparse) using the same symbol names than libexpat.
A workaround would be to statically compile libwww in Ryzom, but the only real solution would be to get rid of libwww (which is deprecated and unmaintained, btw), although it's quite a bit of work.

#14 Updated by molator about 7 years ago

Same issue with a legacy Archlinux 2010 x86 coming from /usr/lib/libexpat.so.1
Will test ThibG solution.

#15 Updated by molator about 7 years ago

I've done some testing.

I tried to build the client using the legacy static libwww (the one provided by pacman) with no success.

Then i took libwww from kervala's repository, and built both static and shared libwww from source.
No success either building the client using the static libwww (from kervala's repository).
But, it's working using the shared libwww (from kervala's repository).

So the workaround:
- download libwww from kervala's repository
- chmod 755 configure
- configure --enable-shared=yes, make, make install

libwww is trashy but archlinux libwww is worse :)
My client is working, and i can connect to the devshard.

#16 Updated by shackra about 7 years ago

i have the next problem :-|

jorge@Abril:~/.ryzom_sc/packaging/libwww$ make
 cd . && /bin/sh /home/jorge/.ryzom_sc/packaging/libwww/config/missing --run automake-1.9 --foreign 
/home/jorge/.ryzom_sc/packaging/libwww/config/missing: línea 46: automake-1.9: no se encontró la orden
WARNING: `automake-1.9' is needed, and you do not seem to have it handy on your
         system.  You might have modified some files without having the
         proper tools for further handling them.  Check the `README' file,
         it often tells you about the needed prerequirements for installing
         this package.  You may also peek at any GNU archive site, in case
         some other package would contain this missing `automake-1.9' program.
make: *** [Makefile.in] Error 1
jorge@Abril:~/.ryzom_sc/packaging/libwww$ 

Parabola GNU/Linux is too updated I think xD. I have to do a downgrade? :-/

#17 Updated by kervala about 7 years ago

shackra wrote:

i have the next problem :-|

[...]

Parabola GNU/Linux is too updated I think xD. I have to do a downgrade? :-/

You can try to launch ./autogen.sh (use chmod +x autogen.sh it's not already executable) to regenerate all automake scripts.

If it doesn't work, you can delete already generated files (those which begins with "generated automatically by").

And try again autogen.sh

#18 Updated by kervala about 7 years ago

  • Status changed from New to Assigned
  • Assignee set to kervala

I had to modify libwww CMake module to be able to compile Ryzom without depending on libwww package under Ubuntu so now we can force CMake to search for a static version of libwww. Simply use -DWITH_LIBWWW_STATIC=ON on cmake command.

Like ThibG suggested, it shouldn't conflict anymore with libexpat.

#19 Updated by shackra about 7 years ago

It's works :D

god Jena bless you, Kervala!! :D

#20 Updated by kervala about 7 years ago

shackra wrote:

It's works :D

god Jena bless you, Kervala!! :D

You're welcome :) Good to know it works.

#21 Updated by kervala almost 7 years ago

  • Status changed from Assigned to Resolved
  • % Done changed from 0 to 100

Applied in changeset commit:7489c21af94e.

#22 Updated by sfb over 6 years ago

  • Status changed from Resolved to Closed

Also available in: Atom PDF