Posted by
Xerxes Rånby on
Jun 27, 2015; 9:26pm
URL: https://forum.jogamp.org/JOGL-on-ODROID-XU3-Lite-tp4034217p4034770.html
By looking at your backtrace gives a hint that we may have a bug in jogl,
OR that mesa3d has corrupted the heap after the driver failed to initialize,
all we know is that we can see mismatch of malloc and free "a corrupt heap"
when we continue execution efter mesa3d failed to initialize.
I can reproduce this bug on a ODROID-C rev 3 and will check if we can safely detect that the driver has failed.
comments inline below:
andreas_dr wrote
libGL error: MESA-LOADER: malformed or no PCI ID <----- this indicate that the mesa3d driver is initializing
...
libGL error: failed to load driver: exynos <------ the mesa3d driver failed to initialize
*** Error in `/usr/bin/java': free(): corrupted unsorted chunks: 0xa180e7f8 *** <----- this may be a bug on our side that we keep on probing the libGL despite that it failed to initialize. it can also be a corrupt heap caused by mesa3d cleanup.
Backtrace:
(gdb) bt
...
#4 0xb6ee7022 in malloc_printerr (action=1, str=0xb6f61a9c "free(): corrupted unsorted chunks", ptr=<optimized out>) at malloc.c:4996
#5 0xb6ee7a48 in _int_free (av=<optimized out>, p=<optimized out>, have_lock=0) at malloc.c:3840
#6 0xa27429d6 in XFree () from /usr/lib/arm-linux-gnueabihf/libX11.so.6
#7 0xa1fac368 in Java_jogamp_opengl_x11_glx_GLX_dispatch_1glXChooseVisual ()
from /tmp/jogamp_0000/file_cache/jln4091126271820588169/jln3781205514237873832/libjogl_desktop.so
...
Any ideas?
On the ODROID-C Rev 3 we have a similar crash scenario, that the crash trigger directly after mesa3d libGL has failed to initialize the GPU. crashes seen in the JVM is also an indication of a corrupt heap.
libGL error: MESA-LOADER: malformed or no PCI ID
libGL error: dlopen /usr/lib/arm-linux-gnueabihf/dri/mali_drm_dri.so failed (/usr/lib/arm-linux-gnueabihf/dri/mali_drm_dri.so: cannot open shared object file: No such file or directory)
libGL error: dlopen ${ORIGIN}/dri/mali_drm_dri.so failed (${ORIGIN}/dri/mali_drm_dri.so: cannot open shared object file: No such file or directory)
libGL error: dlopen /usr/lib/dri/mali_drm_dri.so failed (/usr/lib/dri/mali_drm_dri.so: cannot open shared object file: No such file or directory)
libGL error: unable to load driver: mali_drm_dri.so
libGL error: driver pointer missing
libGL error: failed to load driver: mali_drm
# A fatal error has been detected by the Java Runtime Environment:
..
# V [libjvm.so+0x343158] Klass::search_secondary_supers(Klass*) const+0x10
...
#3 0xa4ccd36c in Java_jogamp_nativewindow_x11_X11Lib_XRenderFindVisualFormat1 ()
from /tmp/jogamp_0000/file_cache/jln4489495869428337977/jln7893739557114247018/libnativewindow_x11.so