[fedora-java] jna and gstreamer-java on fedora

Wayne Meissner wmeissner at gmail.com
Mon Jul 21 15:47:59 UTC 2008


This is a bit of a stab in the dark, but check that the rpm build for
libffi has -DFFI_MMAP_EXEC_WRIT in CFLAGS for the build.

gst_object_unref() will do a C -> java callback, and if you're on a
system that disables the execute bit on normal malloc data (which
should be all of them these days), JNA callbacks will cause the jvm to
crash if libffi is not built to allocate the closure trampoline in
executable memory.

2008/7/22 Farkas Levente <lfarkas at lfarkas.org>:
> Andrew Overholt wrote:
>> * Farkas Levente <lfarkas at lfarkas.org> [2008-07-20 18:17]:
>>>     [junit] # An error report file with more information is saved as:
>>>     [junit] # /tmp/gstreamer-java/hs_err_pid12123.log
>>
>> What's in this file?  The JVM is most likely crashing due to something
>> wrong in the JNI code.
>
> attached.
>
>>> or should i've to package the jna provided by gstreamer-java  or
>>> reuild the original jna and not use the fedora one?
>>
>> This would be against the Fedora Packaging Guidelines.
>
> ok but currently the situation is:
> - not working with the jna in fedora,
> - working with the jna bundled with gstreamer-java,
> - working with the jna download from jna homepage.
> so dare i assume there is some problem with the fedora jna package?
>
> --
>   Levente                               "Si vis pacem para bellum!"
>
> --~--~---------~--~----~------------~-------~--~----~
> You received this message because you are subscribed to the Google Groups "gstreamer-java" group.
> To post to this group, send email to gstreamer-java at googlegroups.com
> To unsubscribe from this group, send email to gstreamer-java-unsubscribe at googlegroups.com
> For more options, visit this group at http://groups.google.com/group/gstreamer-java?hl=en
> -~----------~----~----~----~------~----~------~--~---
>
>
> #
> # An unexpected error has been detected by Java Runtime Environment:
> #
> #  SIGSEGV (0xb) at pc=0x6c9b4564, pid=5644, tid=1616784
> #
> # Java VM: OpenJDK Client VM (1.6.0-b09 mixed mode linux-x86)
> # Problematic frame:
> # C  0x6c9b4564
> #
> # If you would like to submit a bug report, please visit:
> #   http://icedtea.classpath.org/bugzilla
> # The crash happened outside the Java Virtual Machine in native code.
> # See problematic frame for where to report the bug.
> #
>
> ---------------  T H R E A D  ---------------
>
> Current thread (0x09feac00):  JavaThread "main" [_thread_in_native, id=5645, stack(0x0013a000,0x0018b000)]
>
> siginfo:si_signo=SIGSEGV: si_errno=0, si_code=1 (SEGV_MAPERR), si_addr=0x6c9b4564
>
> Registers:
> EAX=0x93ccd008, EBX=0x0654b67c, ECX=0x00000001, EDX=0x0a15b880
> ESP=0x00189a60, EBP=0x00189a8c, ESI=0x00000001, EDI=0x05e7a9a8
> EIP=0x6c9b4564, CR2=0x6c9b4564, EFLAGS=0x00010246
>
> Top of Stack: (sp=0x00189a60)
> 0x00189a60:   06517103 010e790c 0a35f838 00000001
> 0x00189a70:   09feb1c0 09feb1c0 fffffffe 0a35f83c
> 0x00189a80:   0689c258 0689c258 0a35f838 00189acc
> 0x00189a90:   0680409f 0a35f838 09feb1ac 00000000
> 0x00189aa0:   09feb1c0 00522b4c fffffffe 0000160d
> 0x00189ab0:   00000000 00000001 00000058 0071cb9e
> 0x00189ac0:   0689c258 0689c258 0a35f838 00189afc
> 0x00189ad0:   06805785 0a35f838 0a11b900 00000000
>
> Instructions: (pc=0x6c9b4564)
> 0x6c9b4554:
> [error occurred during error reporting (printing registers, top of stack, instructions near pc), id 0xb]
>
> Stack: [0x0013a000,0x0018b000],  sp=0x00189a60,  free space=318k
> Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
> C  0x6c9b4564
> C  [libgstreamer-0.10.so+0x1b09f]  gst_object_unref+0x8f
> C  [libgstreamer-0.10.so+0x1c785]  gst_object_sink+0x105
> C  [libffi.so.5+0x44c7]  ffi_call_SYSV+0x17
> C  [libffi.so.5+0x4306]  ffi_call+0x86
> C  [libjnidispatch.so+0x7b5e]
> C  [libjnidispatch.so+0x874b]  Java_com_sun_jna_Function_invokeVoid+0x3b
> v  ~BufferBlob::Interpreter
> v  ~BufferBlob::Interpreter
> v  ~BufferBlob::Interpreter
> v  ~BufferBlob::Interpreter
> v  ~BufferBlob::Interpreter
> v  ~BufferBlob::Interpreter
> v  ~BufferBlob::Interpreter
> v  ~BufferBlob::Interpreter
> v  ~BufferBlob::Interpreter
> v  ~BufferBlob::Interpreter
> v  ~BufferBlob::Interpreter
> v  ~BufferBlob::Interpreter
> v  ~BufferBlob::Interpreter
> v  ~BufferBlob::StubRoutines (1)
> V  [libjvm.so+0x193677]
> V  [libjvm.so+0x26c459]
> V  [libjvm.so+0x19294f]
> V  [libjvm.so+0x19c24a]
> V  [libjvm.so+0x1a752a]
> C  [java+0x2ef7]  JavaMain+0xe57
> C  [libpthread.so.0+0x632f]
>
> Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
> v  ~BufferBlob::Interpreter
> v  ~BufferBlob::Interpreter
> v  ~BufferBlob::Interpreter
> v  ~BufferBlob::Interpreter
> v  ~BufferBlob::Interpreter
> v  ~BufferBlob::Interpreter
> v  ~BufferBlob::Interpreter
> v  ~BufferBlob::Interpreter
> v  ~BufferBlob::Interpreter
> v  ~BufferBlob::Interpreter
> v  ~BufferBlob::Interpreter
> v  ~BufferBlob::Interpreter
> v  ~BufferBlob::Interpreter
> v  ~BufferBlob::StubRoutines (1)
>
> ---------------  P R O C E S S  ---------------
>
> Java Threads: ( => current thread )
>  0x0a05d800 JavaThread "Low Memory Detector" daemon [_thread_blocked, id=5651, stack(0x02f11000,0x02f62000)]
>  0x0a05ac00 JavaThread "CompilerThread0" daemon [_thread_blocked, id=5650, stack(0x09162000,0x091e3000)]
>  0x0a059800 JavaThread "Signal Dispatcher" daemon [_thread_blocked, id=5649, stack(0x08d42000,0x08d93000)]
>  0x0a045000 JavaThread "Finalizer" daemon [_thread_blocked, id=5648, stack(0x08625000,0x08676000)]
>  0x0a043c00 JavaThread "Reference Handler" daemon [_thread_blocked, id=5647, stack(0x04983000,0x049d4000)]
> =>0x09feac00 JavaThread "main" [_thread_in_native, id=5645, stack(0x0013a000,0x0018b000)]
>
> Other Threads:
>  0x0a040800 VMThread [stack: 0x0029b000,0x0031c000] [id=5646]
>  0x0a05ec00 WatcherThread [stack: 0x02f62000,0x02fe3000] [id=5652]
>
> VM state:not at safepoint (normal execution)
>
> VM Mutex/Monitor currently owned by a thread: None
>
> Heap
>  def new generation   total 960K, used 71K [0x940b0000, 0x941b0000, 0x96810000)
>  eden space 896K,   5% used [0x940b0000, 0x940bbb08, 0x94190000)
>  from space 64K,  38% used [0x941a0000, 0x941a6378, 0x941b0000)
>  to   space 64K,   0% used [0x94190000, 0x94190000, 0x941a0000)
>  tenured generation   total 4096K, used 350K [0x96810000, 0x96c10000, 0xb40b0000)
>   the space 4096K,   8% used [0x96810000, 0x96867988, 0x96867a00, 0x96c10000)
>  compacting perm gen  total 12288K, used 4141K [0xb40b0000, 0xb4cb0000, 0xb80b0000)
>   the space 12288K,  33% used [0xb40b0000, 0xb44bb4e8, 0xb44bb600, 0xb4cb0000)
> No shared spaces configured.
>
> Dynamic libraries:
> 00110000-00111000 r-xp 00110000 00:00 0          [vdso]
> 00111000-00138000 r-xp 00000000 fd:00 2849487    /lib/libm-2.8.so
> 00138000-00139000 r--p 00026000 fd:00 2849487    /lib/libm-2.8.so
> 00139000-0013a000 rw-p 00027000 fd:00 2849487    /lib/libm-2.8.so
> 0013a000-0013d000 ---p 0013a000 00:00 0
> 0013d000-0018b000 rwxp 0013d000 00:00 0
> 0018b000-00193000 r-xp 00000000 fd:00 2848904    /lib/librt-2.8.so
> 00193000-00194000 r--p 00007000 fd:00 2848904    /lib/librt-2.8.so
> 00194000-00195000 rw-p 00008000 fd:00 2848904    /lib/librt-2.8.so
> 00195000-0019b000 r-xp 00000000 fd:00 987005     /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/jre/lib/i386/native_threads/libhpi.so
> 0019b000-0019c000 rw-p 00006000 fd:00 987005     /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/jre/lib/i386/native_threads/libhpi.so
> 0019c000-001b2000 r-xp 00000000 fd:00 2849486    /lib/libnsl-2.8.so
> 001b2000-001b3000 r--p 00015000 fd:00 2849486    /lib/libnsl-2.8.so
> 001b3000-001b4000 rw-p 00016000 fd:00 2849486    /lib/libnsl-2.8.so
> 001b4000-001b6000 rw-p 001b4000 00:00 0
> 001b6000-001c0000 r-xp 00000000 fd:00 2848939    /lib/libnss_files-2.8.so
> 001c0000-001c1000 r--p 0000a000 fd:00 2848939    /lib/libnss_files-2.8.so
> 001c1000-001c2000 rw-p 0000b000 fd:00 2848939    /lib/libnss_files-2.8.so
> 001c2000-001ce000 r-xp 00000000 fd:00 987003     /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/jre/lib/i386/libverify.so
> 001ce000-001cf000 rw-p 0000b000 fd:00 987003     /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/jre/lib/i386/libverify.so
> 001cf000-001f1000 r-xp 00000000 fd:00 982992     /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/jre/lib/i386/libjava.so
> 001f1000-001f3000 rw-p 00022000 fd:00 982992     /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/jre/lib/i386/libjava.so
> 001f3000-001f9000 r-xp 00000000 fd:00 987004     /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/jre/lib/i386/libzip.so
> 001f9000-001fa000 rw-p 00006000 fd:00 987004     /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/jre/lib/i386/libzip.so
> 001fa000-001fd000 rwxp 001fa000 00:00 0
> 001fd000-0027a000 rwxp 001fd000 00:00 0
> 0027a000-00281000 rwxp 0027a000 00:00 0
> 00281000-0029b000 rwxp 00281000 00:00 0
> 0029b000-0029c000 ---p 0029b000 00:00 0
> 0029c000-0031c000 rwxp 0029c000 00:00 0
> 0031c000-00328000 r-xp 00000000 fd:00 1476757    /usr/lib/jna/libjnidispatch.so
> 00328000-00329000 rw-p 0000b000 fd:00 1476757    /usr/lib/jna/libjnidispatch.so
> 00329000-0032e000 r-xp 00000000 fd:00 720980     /usr/lib/libffi.so.5.0.2
> 0032e000-0032f000 rw-p 00005000 fd:00 720980     /usr/lib/libffi.so.5.0.2
> 0032f000-00333000 r-xp 00000000 fd:00 2848961    /lib/libgthread-2.0.so.0.1600.4
> 00333000-00334000 rw-p 00003000 fd:00 2848961    /lib/libgthread-2.0.so.0.1600.4
> 00334000-00337000 r-xp 00000000 fd:00 2848967    /lib/libgmodule-2.0.so.0.1600.4
> 00337000-00338000 rw-p 00002000 fd:00 2848967    /lib/libgmodule-2.0.so.0.1600.4
> 00338000-00352000 r-xp 00000000 fd:00 2849357    /lib/libselinux.so.1
> 00352000-00353000 r--p 00019000 fd:00 2849357    /lib/libselinux.so.1
> 00353000-00354000 rw-p 0001a000 fd:00 2849357    /lib/libselinux.so.1
> 00354000-00355000 r-xs 00000000 fd:00 5761566    /tmp/ffioYUUFK (deleted)
> 0035d000-00379000 r-xp 00000000 fd:00 2848893    /lib/ld-2.8.so
> 00379000-0037a000 r--p 0001c000 fd:00 2848893    /lib/ld-2.8.so
> 0037a000-0037b000 rw-p 0001d000 fd:00 2848893    /lib/ld-2.8.so
> 0037d000-004e0000 r-xp 00000000 fd:00 2848895    /lib/libc-2.8.so
> 004e0000-004e2000 r--p 00163000 fd:00 2848895    /lib/libc-2.8.so
> 004e2000-004e3000 rw-p 00165000 fd:00 2848895    /lib/libc-2.8.so
> 004e3000-004e6000 rw-p 004e3000 00:00 0
> 004e8000-004eb000 r-xp 00000000 fd:00 991669     /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/jre/lib/i386/jli/libjli.so
> 004eb000-004ec000 rw-p 00003000 fd:00 991669     /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/jre/lib/i386/jli/libjli.so
> 00513000-00516000 r-xp 00000000 fd:00 2848966    /lib/libdl-2.8.so
> 00516000-00517000 r--p 00002000 fd:00 2848966    /lib/libdl-2.8.so
> 00517000-00518000 rw-p 00003000 fd:00 2848966    /lib/libdl-2.8.so
> 0051a000-0052f000 r-xp 00000000 fd:00 2848900    /lib/libpthread-2.8.so
> 0052f000-00530000 r--p 00014000 fd:00 2848900    /lib/libpthread-2.8.so
> 00530000-00531000 rw-p 00015000 fd:00 2848900    /lib/libpthread-2.8.so
> 00531000-00533000 rw-p 00531000 00:00 0
> 00535000-00548000 r-xp 00000000 fd:00 2849507    /lib/libz.so.1.2.3
> 00548000-00549000 rw-p 00012000 fd:00 2849507    /lib/libz.so.1.2.3
> 00549000-008c6000 r-xp 00000000 fd:00 986982     /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/jre/lib/i386/client/libjvm.so
> 008c6000-008e5000 rw-p 0037d000 fd:00 986982     /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/jre/lib/i386/client/libjvm.so
> 008e5000-00d03000 rw-p 008e5000 00:00 0
> 00d03000-00dc3000 rwxp 00d03000 00:00 0
> 00dc3000-02d03000 rwxp 00dc3000 00:00 0
> 02d03000-02d04000 rwxp 02d03000 00:00 0
> 02d04000-02d16000 rwxp 02d04000 00:00 0
> 02d16000-02d19000 rwxp 02d16000 00:00 0
> 02d19000-02e03000 rwxp 02d19000 00:00 0
> 02e03000-02e09000 rwxp 02e03000 00:00 0
> 02e09000-02e23000 rwxp 02e09000 00:00 0
> 02e23000-02e27000 rwxp 02e23000 00:00 0
> 02e27000-02f11000 rwxp 02e27000 00:00 0
> 02f11000-02f14000 ---p 02f11000 00:00 0
> 02f14000-02f62000 rwxp 02f14000 00:00 0
> 02f62000-02f63000 ---p 02f62000 00:00 0
> 02f63000-02fe3000 rwxp 02f63000 00:00 0
> 040cf000-04218000 r-xp 00000000 fd:00 372277     /usr/lib/libxml2.so.2.6.32
> 04218000-0421d000 rw-p 00149000 fd:00 372277     /usr/lib/libxml2.so.2.6.32
> 0421d000-0421e000 rw-p 0421d000 00:00 0
> 04983000-04986000 ---p 04983000 00:00 0
> 04986000-049d4000 rwxp 04986000 00:00 0
> 05d99000-05e7a000 r-xp 00000000 fd:00 2848886    /lib/libglib-2.0.so.0.1600.4
> 05e7a000-05e7b000 rw-p 000e1000 fd:00 2848886    /lib/libglib-2.0.so.0.1600.4
> 0650c000-0654b000 r-xp 00000000 fd:00 2848962    /lib/libgobject-2.0.so.0.1600.4
> 0654b000-0654c000 rw-p 0003f000 fd:00 2848962    /lib/libgobject-2.0.so.0.1600.4
> 067e9000-0689a000 r-xp 00000000 fd:00 370777     /usr/lib/libgstreamer-0.10.so.0.16.0
> 0689a000-0689e000 rw-p 000b1000 fd:00 370777     /usr/lib/libgstreamer-0.10.so.0.16.0
> 08048000-08050000 r-xp 00000000 fd:00 987495     /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/jre/bin/java
> 08050000-08052000 rw-p 00007000 fd:00 987495     /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/jre/bin/java
> 08625000-08628000 ---p 08625000 00:00 0
> 08628000-08676000 rwxp 08628000 00:00 0
> 08d42000-08d45000 ---p 08d42000 00:00 0
> 08d45000-08d93000 rwxp 08d45000 00:00 0
> 09162000-09165000 ---p 09162000 00:00 0
> 09165000-091e3000 rwxp 09165000 00:00 0
> 09fe5000-0a3a6000 rw-p 09fe5000 00:00 0          [heap]
> 93ccd000-93cce000 rw-s 00000000 fd:00 5761566    /tmp/ffioYUUFK (deleted)
> 93cce000-93cd2000 r--s 00079000 fd:00 987022     /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/jre/lib/jsse.jar
> 93cd2000-93ce1000 r--s 0007a000 fd:00 5769549    /tmp/gstreamer-java/dist/gstreamer-java.jar
> 93ce1000-93ce4000 r--s 00017000 fd:00 6580034    /usr/share/java/jna-3.0.2.jar
> 93ce4000-93ced000 r--s 00065000 fd:00 986966     /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/jre/lib/ext/gnome-java-bridge.jar
> 93ced000-93eed000 r--p 00000000 fd:00 391746     /usr/lib/locale/locale-archive
> 93eed000-93f20000 rw-p 93eed000 00:00 0
> 93f20000-940b0000 r--s 033ee000 fd:00 987036     /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/jre/lib/rt.jar
> 940b0000-941b0000 rwxp 940b0000 00:00 0
> 941b0000-96810000 rwxp 941b0000 00:00 0
> 96810000-96c10000 rwxp 96810000 00:00 0
> 96c10000-b40b0000 rwxp 96c10000 00:00 0
> b40b0000-b4cb0000 rwxp b40b0000 00:00 0
> b4cb0000-b80b0000 rwxp b4cb0000 00:00 0
> b80b4000-b80b6000 rw-p b80b4000 00:00 0
> b80cd000-b80d5000 rw-s 00000000 fd:00 5761562    /tmp/hsperfdata_lfarkas/5644
> b80d5000-b80d6000 rwxp b80d5000 00:00 0
> b80d6000-b80d7000 r--p b80d6000 00:00 0
> b80d7000-b80d8000 rw-p b80d7000 00:00 0
> bffc3000-bffd8000 rwxp bffeb000 00:00 0          [stack]
>
> VM Arguments:
> java_command: org.gstreamer.lowlevel.Main
> Launcher Type: SUN_STANDARD
>
> Environment Variables:
> PATH=/home/lfarkas/bin:/usr/lib/qt-3.3/bin:/usr/kerberos/bin:/usr/lib/ccache:/usr/local/bin:/usr/bin:/bin
> LD_LIBRARY_PATH=/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/jre/lib/i386/client:/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/jre/lib/i386:/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/jre/../lib/i386
> SHELL=/bin/bash
> DISPLAY=:0.0
>
> Signal Handlers:
> SIGSEGV: [libjvm.so+0x327970], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004
> SIGBUS: [libjvm.so+0x327970], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004
> SIGFPE: [libjvm.so+0x26ea60], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004
> SIGPIPE: [libjvm.so+0x26ea60], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004
> SIGXFSZ: [libjvm.so+0x26ea60], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004
> SIGILL: [libjvm.so+0x26ea60], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004
> SIGUSR1: SIG_DFL, sa_mask[0]=0x00000000, sa_flags=0x00000000
> SIGUSR2: [libjvm.so+0x26e410], sa_mask[0]=0x00000000, sa_flags=0x10000004
> SIGHUP: [libjvm.so+0x2705d0], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004
> SIGINT: [libjvm.so+0x2705d0], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004
> SIGTERM: [libjvm.so+0x2705d0], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004
> SIGQUIT: [libjvm.so+0x2705d0], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004
>
>
> ---------------  S Y S T E M  ---------------
>
> OS:Fedora release 9 (Sulphur)
>
> uname:Linux 2.6.25.10-86.fc9.i686 #1 SMP Mon Jul 7 20:46:03 EDT 2008 i686
> libc:glibc 2.8 NPTL 2.8
> rlimit: STACK 10240k, CORE 0k, NPROC 1024, NOFILE 1024, AS infinity
> load average:1.63 1.12 0.74
>
> CPU:total 1 (1 cores per cpu, 1 threads per core) family 15 model 36 stepping 2, cmov, cx8, fxsr, mmx, sse, sse2, sse3, mmxext, 3dnow, 3dnowext
>
> Memory: 4k page, physical 1164780k(25656k free), swap 786424k(786424k free)
>
> vm_info: OpenJDK Client VM (1.6.0-b09) for linux-x86 JRE (1.6.0-b09), built on Jul  8 2008 11:26:24 by "mockbuild" with gcc 4.3.0 20080428 (Red Hat 4.3.0-8)
>
> time: Mon Jul 21 16:53:44 2008
> elapsed time: 1 seconds
>
>
>




More information about the fedora-devel-java-list mailing list