gegl segv
This discussion is connected to the gimp-user-list.gnome.org mailing list which is provided by the GIMP developers and not related to gimpusers.com.
This is a read-only list on gimpusers.com so this discussion thread is read-only, too.
gegl segv | damianc | 10 Jan 22:11 |
gegl segv | damianc | 24 Jan 10:06 |
gegl segv | damianc | 30 Jan 17:22 |
gegl segv | damianc | 03 Feb 00:03 |
gegl segv | Jehan Pagès | 04 Feb 11:14 |
gegl segv | Jehan Pagès | 04 Feb 11:18 |
gegl segv | damianc | 06 Feb 14:01 |
gegl segv | damianc | 14 Feb 19:57 |
- postings
- 6
gegl segv
I'm having some difficulty building gimp 2.94 from the current development tarballs. In fact I have the same issue with git latest:
uname -a Linux onion 4.4.36-8-default #1 SMP Fri Dec 9 16:18:38 UTC 2016 (3ec5648) x86_64 x86_64 x86_64 GNU/Linux
I build babl, gegl,then libmypaint without errors.
`make gimp` fails at creating icons
make[3]: Entering directory '/data/gimp_29/build/gimp-2.9.4/icons/Symbolic'
GEN gimp-core-pixbufs.gresource.xml
GEN gimp-core-pixbufs.c
GEN gimp-icon-pixbufs.gresource.xml
GEN gimp-icon-pixbufs.c
make[3]: Leaving directory '/data/gimp_29/build/gimp-2.9.4/icons/Symbolic'
Making all in Symbolic-Inverted
make[3]: Entering directory '/data/gimp_29/build/gimp-2.9.4/icons/Symbolic-Inverted'
mkdir -p `dirname 12/gimp-close.png`; /data/gimp_29/install/bin/gegl ../../icons/Symbolic/12/gimp-close.png -o 12/gimp-close.png -- gegl:invert-gamma
/bin/sh: line 1: 5349 Segmentation fault (core dumped) /data/gimp_29/install/bin/gegl ../../icons/Symbolic/12/gimp-close.png -o 12/gimp-close.png -- gegl:invert-gamma
Makefile:2175: recipe for target '12/gimp-close.png' failed
make[3]: *** [12/gimp-close.png] Error 139
make[3]: Leaving directory '/data/gimp_29/build/gimp-2.9.4/icons/Symbolic-Inverted'
Makefile:621: recipe for target 'all-recursive' failed
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory '/data/gimp_29/build/gimp-2.9.4/icons'
Makefile:795: recipe for target 'all-recursive' failed
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/data/gimp_29/build/gimp-2.9.4'
Makefile:696: recipe for target 'all' failed
make: *** [all] Error 2
running gegl on the command line SEGVs
I tried building on my laptop (also OpenSUSE leap 42.2) and it builds without error.
running 'valgrind gegl ../gimp/icons/Symbolic/12/gimp-linked.png invert-gamma` gives me:
==5401== Memcheck, a memory error detector
==5401== Copyright (C) 2002-2015, and GNU GPL'd, by Julian Seward et al.
==5401== Using Valgrind-3.11.0 and LibVEX; rerun with -h for copyright info
==5401== Command: gegl ../gimp/icons/Symbolic/12/gimp-linked.png invert-gamma
==5401==
==5401== Use of uninitialised value of size 8
==5401== at 0x756917D: strtok_r (in /lib64/libc-2.22.so)
==5401== by 0x5AADBA8: babl_init_db (babl-cache.c:344)
==5401== by 0x4E6666E: gegl_post_parse_hook (gegl-init.c:635)
==5401== by 0x722BAA6: g_option_context_parse (in /usr/lib64/libglib-2.0.so.0.4800.2)
==5401== by 0x4E66019: gegl_init (gegl-init.c:251)
==5401== by 0x4021B8: main (gegl.c:99)
==5401==
==5401== Use of uninitialised value of size 8
==5401== at 0x75691AD: strtok_r (in /lib64/libc-2.22.so)
==5401== by 0x5AADBA8: babl_init_db (babl-cache.c:344)
==5401== by 0x4E6666E: gegl_post_parse_hook (gegl-init.c:635)
==5401== by 0x722BAA6: g_option_context_parse (in /usr/lib64/libglib-2.0.so.0.4800.2)
==5401== by 0x4E66019: gegl_init (gegl-init.c:251)
==5401== by 0x4021B8: main (gegl.c:99)
==5401==
==5401== Conditional jump or move depends on uninitialised value(s)
==5401== at 0x75691B0: strtok_r (in /lib64/libc-2.22.so)
==5401== by 0x5AADBA8: babl_init_db (babl-cache.c:344)
==5401== by 0x4E6666E: gegl_post_parse_hook (gegl-init.c:635)
==5401== by 0x722BAA6: g_option_context_parse (in /usr/lib64/libglib-2.0.so.0.4800.2)
==5401== by 0x4E66019: gegl_init (gegl-init.c:251)
==5401== by 0x4021B8: main (gegl.c:99)
==5401==
==5401== Warning: set address range perms: large range [0x200000000, 0x700000000) (noaccess)
==5401== Warning: set address range perms: large range [0x900000000, 0xb00000000) (noaccess)
(gegl:5401): GEGL-gegl-xml.c-WARNING **: Unable to obtain absolute path for parameter path
==5401== Syscall param writev(vector[...]) points to uninitialised byte(s) ==5401== at 0x75C756D: ??? (in /lib64/libc-2.22.so) ==5401== by 0xE52166D: ??? (in /usr/lib64/libxcb.so.1.1.0) ==5401== by 0xE521A50: ??? (in /usr/lib64/libxcb.so.1.1.0) ==5401== by 0xE521AD0: xcb_writev (in /usr/lib64/libxcb.so.1.1.0) ==5401== by 0x1DA6DB85: _XSend (in /usr/lib64/libX11.so.6.3.0) ==5401== by 0x1DA6E067: _XReply (in /usr/lib64/libX11.so.6.3.0) ==5401== by 0x1DA69D9C: XSync (in /usr/lib64/libX11.so.6.3.0) ==5401== by 0x2FF8F767: X11_SetGammaRamp (in /usr/lib64/libSDL-1.2.so.0.11.4) ==5401== by 0x2FF9199A: X11_CreateWindow (in /usr/lib64/libSDL-1.2.so.0.11.4) ==5401== by 0x2FF91CA8: X11_SetVideoMode (in /usr/lib64/libSDL-1.2.so.0.11.4) ==5401== by 0x2FF82781: SDL_SetVideoMode (in /usr/lib64/libSDL-1.2.so.0.11.4) ==5401== by 0x2FD4A9BB: process (sdl-display.c:101) ==5401== Address 0x14b17d23 is 19 bytes inside a block of size 16,384 alloc'd ==5401== at 0x4C2B250: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==5401== by 0x1DA5E793: XOpenDisplay (in /usr/lib64/libX11.so.6.3.0) ==5401== by 0x2FF91EFE: X11_VideoInit (in /usr/lib64/libSDL-1.2.so.0.11.4) ==5401== by 0x2FF8247A: SDL_VideoInit (in /usr/lib64/libSDL-1.2.so.0.11.4) ==5401== by 0x2FF5C71B: SDL_InitSubSystem (in /usr/lib64/libSDL-1.2.so.0.11.4) ==5401== by 0x2FF5C793: SDL_Init (in /usr/lib64/libSDL-1.2.so.0.11.4) ==5401== by 0x2FD4AAD3: init_sdl (sdl-display.c:53) ==5401== by 0x2FD4AAD3: process (sdl-display.c:92) ==5401== by 0x4EA987D: gegl_operation_sink_process (gegl-operation-sink.c:96) ==5401== by 0x4EB47B8: gegl_processor_work (gegl-processor.c:822) ==5401== by 0x4EADDA1: gegl_node_process (gegl-node.c:1698) ==5401== by 0x402849: main (gegl.c:230) ==5401==
^C
any ideas where I might look for inspiriation?
TIA
- postings
- 6
gegl segv
Update:
It seems I have a heisenbug. If I run 'gegl --list-all' on the command line it SEGVs, however it runs without error under gdb, valgrind or strace. Adding in a few g_message lines it seems it happens at g_module_open() in gegl_module_open() when trying to open svg-load.so. I'm guessing it's not necessarily this code which is at fault as memory could have been stomped on elsewhere, but I'm a bit stuck as to how to progress further.
- postings
- 6
gegl segv
I can't say I'm much the wiser yet, but running 'LD_DEBUG=libs gegl --list-all' gives me the following amongst the outut:
...
28806: calling init: /usr/lib64/libX11.so.6
28806:
28806:
28806: calling init: /usr/lib64/libXext.so.6
28806:
28806:
28806: calling init: /usr/X11R6/lib64/libGL.so.1
28806:
28806: /lib64/libpthread.so.0: error: symbol lookup error: undefined symbol: pthread_setname_np, version GLIBC_2.2.5 (fatal)
...
28806:
28806: calling init: /usr/lib64/libnvidia-glsi.so.375.26
28806:
28806:
28806: calling init: /usr/X11R6/lib64/libEGL_nvidia.so.0
28806:
28806: /lib64/libpthread.so.0: error: symbol lookup error: undefined symbol: pthread_setname_np, version GLIBC_2.2.5 (fatal)
...
28806: calling init: /usr/lib64/libxcb.so.1
28806:
28806:
28806: calling init: /usr/lib64/libX11.so.6
28806:
28806:
28806: calling init: /usr/lib64/libXext.so.6
28806:
28806:
28806: calling init: /usr/X11R6/lib64/libGL.so.1
28806:
28806: /lib64/libpthread.so.0: error: symbol lookup error: undefined symbol: pthread_setname_np, version GLIBC_2.2.5 (fatal)
followed by a segmentation fault.
Am I right in thinking the proprietary nvidia drivers may be the issue here?
- postings
- 6
gegl segv
I can confirm that gegl runs fine with the nouveau driver and segfaults with the proprietary video drivers. Inly it seems with nouveau my monitor isn't detected properly so I can either have one or the other
gegl segv
Hi,
Could you open a bug report? https://bugzilla.gnome.org/enter_bug.cgi?product=GEGL This will likely be more efficient than on the gimp-user mailing list. :-) Thanks!
Jehan
On Fri, Feb 3, 2017 at 1:03 AM, damianc wrote:
I can confirm that gegl runs fine with the nouveau driver and segfaults with the proprietary video drivers. Inly it seems with nouveau my monitor isn't detected properly so I can either have one or the other
-- damianc (via www.gimpusers.com/forums) _______________________________________________ gimp-user-list mailing list
List address: gimp-user-list@gnome.org List membership: https://mail.gnome.org/mailman/listinfo/gimp-user-list List archives: https://mail.gnome.org/archives/gimp-user-list
ZeMarmot open animation film http://film.zemarmot.net Patreon: https://patreon.com/zemarmot Tipeee: https://www.tipeee.com/zemarmot
gegl segv
Hi,
Could you open a bug report? https://bugzilla.gnome.org/enter_bug.cgi?product=GEGL This will likely be more efficient than on the gimp-user mailing list. :-) Thanks!
Jehan
On Fri, Feb 3, 2017 at 1:03 AM, damianc wrote:
I can confirm that gegl runs fine with the nouveau driver and segfaults with the proprietary video drivers. Inly it seems with nouveau my monitor isn't detected properly so I can either have one or the other
-- damianc (via www.gimpusers.com/forums) _______________________________________________ gimp-user-list mailing list
List address: gimp-user-list@gnome.org List membership: https://mail.gnome.org/mailman/listinfo/gimp-user-list List archives: https://mail.gnome.org/archives/gimp-user-list
ZeMarmot open animation film http://film.zemarmot.net Patreon: https://patreon.com/zemarmot Tipeee: https://www.tipeee.com/zemarmot
- postings
- 6
gegl segv
Thanks for the pointer Jehan, I'll do that
Hi,
Could you open a bug report? https://bugzilla.gnome.org/enter_bug.cgi?product=GEGL This will likely be more efficient than on the gimp-user mailing list. :-)
Thanks!Jehan
- postings
- 6
gegl segv
If anyone else runs up against this the fix is to preload the libraries in the right order:
export LD_PRELOAD="/path-to/libpthread.so /path-to/libGL.so"