1 2 Previous Next 24 Replies Latest reply: Apr 28, 2009 5:32 PM by 807557 RSS

    Internal Error (4F533F4C494E55580E43505002E0)...

    807557
      Hello,

      I installed in my OpenSuSE a patch to better support realtime applications. Before it, i already had RTS installed in my machine and i used it to compile programs which created RealtimeThread objects. Everything was working. But now, when i try to execute a Java RTS program (whichever it is, java, javac, rmic..) i get the following message.

      #
      # An unexpected error has been detected by HotSpot Virtual Machine:
      #
      # Internal Error (4F533F4C494E55580E43505002E0), pid=5664, tid=4158711488
      #
      # Java VM: Java Real-Time System HotSpot(TM) Client VM (1.5.0_16-b11 mixed mode)
      # An error report file with more information is saved as hs_err_pid5664.log
      #

      Probably my installation did what it shouldn't, I know. But do you know more about this error specifically? I haven't found anything about it on Internet..
        • 1. Re: Internal Error (4F533F4C494E55580E43505002E0)...
          807557
          This is a failure of the pthread_mutex_init call. Was there any additional info on the console, or in a hs_err_pidXXXX.log file showing what the actual failure was? If not can you run with java_g which should show the information.

          I suspect that prior to the patch some of the operations were "succeeding" but were in effect no-ops, but with the patch a proper implementation exists and so an error is reported. It may just be a permissions problem, though that usually manifests in a more obvious way.

          David Holmes
          • 2. Re: Internal Error (4F533F4C494E55580E43505002E0)...
            807557
            Thanks for answering, David.

            I don't think it's a permission problem, at least i tried to execute it as root and it didn't work either (if that's what you meant, i may be wrong).
            Every time it fails it creates a file like the one you mentioned. When i tried to execute java -version, i got the following data inside this file:
            #
            # An unexpected error has been detected by HotSpot Virtual Machine:
            #
            #  Internal Error (4F533F4C494E55580E43505002E0), pid=4953, tid=4158199488
            #
            # Java VM: Java Real-Time System HotSpot(TM) Client VM (1.5.0_16-b11 mixed mode)
            
            ---------------  T H R E A D  ---------------
            
            Current thread is native thread
            
            Stack: [0x00000000,0xffecf000)
            [error occurred during error reporting, step 110, id 0xb]
            
            
            [error occurred during error reporting, step 120, id 0xb]
            
            
            ---------------  P R O C E S S  ---------------
            
            Java Threads: ( => current thread )
            
            [error occurred during error reporting, step 170, id 0xb]
            
            VM state:not at safepoint (not fully initilizated)
            
            VM Mutex/Monitor currently owned by a thread: None
            
            Heap
            
            [error occurred during error reporting, step 190, id 0xb]
            
            Dynamic libraries:
            08048000-08057000 r-xp 00000000 08:07 1047050                            /home/rodrigjc/bin/jrts2.1/bin/java
            08057000-08059000 rwxp 0000e000 08:07 1047050                            /home/rodrigjc/bin/jrts2.1/bin/java
            08059000-0807a000 rwxp 08059000 00:00 0                                  [heap]
            f74e7000-f74ee000 r-xp 00000000 08:06 835632                             /lib/librt-2.5.so
            f74ee000-f74f0000 rwxp 00006000 08:06 835632                             /lib/librt-2.5.so
            {... and a list of some other libs ... }
            f7f25000-f7f27000 rwxp 0001a000 08:06 835755                             /lib/ld-2.5.so
            ffec7000-ffecf000 rwxp ffec7000 00:00 0                                  [stack]
            ffffe000-fffff000 r-xp ffffe000 00:00 0
            
            VM Arguments:
            java_command: <unknown>
            
            Environment Variables:
            JAVA_HOME=/usr/java/jdk1.5.0_18
            JRE_HOME=/usr/lib64/jvm/jre
            PATH= {a huge thing}
            USERNAME=rodrigjc
            LD_LIBRARY_PATH=$JAVA_RTS/jre/lib/i386/client:$JAVA_RTS/jre/lib/i386:$JAVA_RTS/jre/../lib/i386
            LD_PRELOAD=$JAVA_RTS/jre/lib/i386/client/libcalloc.so
            SHELL=/bin/bash
            DISPLAY=:0.0
            HOSTTYPE=x86_64
            OSTYPE=linux
            MACHTYPE=x86_64-suse-linux
            
            Signal Handlers:
            SIGSEGV: [libjvm.so+0x3e04d0], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004
            SIGBUS: [libjvm.so+0x3e04d0], sa_mask[0]=0x7ffbfeff, sa_flags=0x10000004
            SIGFPE: SIG_DFL, sa_mask[0]=0x00000000, sa_flags=0x00000000
            SIGPIPE: SIG_DFL, sa_mask[0]=0x00000000, sa_flags=0x00000000
            SIGILL: SIG_DFL, sa_mask[0]=0x00000000, sa_flags=0x00000000
            SIGUSR1: SIG_DFL, sa_mask[0]=0x00000000, sa_flags=0x00000000
            SIGUSR2: SIG_DFL, sa_mask[0]=0x00000000, sa_flags=0x00000000
            SIGHUP: SIG_DFL, sa_mask[0]=0x00000000, sa_flags=0x00000000
            SIGINT: SIG_DFL, sa_mask[0]=0x00000000, sa_flags=0x00000000
            SIGQUIT: SIG_DFL, sa_mask[0]=0x00000000, sa_flags=0x00000000
            SIGTERM: SIG_DFL, sa_mask[0]=0x00000000, sa_flags=0x00000000
            
            ---------------  S Y S T E M  ---------------
            
            OS:openSUSE 10.2 (X86-64)
            VERSION = 10.2
            
            uname:Linux 2.6.16.46-0.12-SLERT-10-15 #1 SMP PREEMPT Mon Jun 18 17:20:56 EDT 2007 x86_64
            libc:
            [error occurred during error reporting, step 240, id 0xb]
            
            CPU:total 0 
            
            Memory: -1k page, physical 1017932k(464984k free), swap 1534168k(1534168k free)
            
            vm_info: Java Real-Time System HotSpot(TM) Client VM (1.5.0_16-b11) for linux-x86, built on Jul 11 2008 20:59:20 by java_re with gcc 3.2.1-7 20020903 (release)
            And executing java_g i get the following message
            # To suppress the following error report, specify this argument
            # after -XX: or in .hotspotrc:  SuppressErrorAt=/os_linux.cpp:736]
            #
            # An unexpected error has been detected by HotSpot Virtual Machine:
            #
            #  Internal Error (/usr/re/jrts2.1/eval365days/kereon/src/os/linux/vm/os_linux.cpp, 736), pid=5221, tid=4158609088
            #
            # Java VM: Java Real-Time System HotSpot(TM) Client VM (1.5.0_16-b11-debug mixed mode)
            #
            # Error: pthread_mutex_init: Operation not supported
            # An error report file with more information is saved as hs_err_pid5221.log
            #
            # If you would like to submit a bug report, please visit:
            #   http://java.sun.com/webapps/bugreport/crash.jsp
            #
            Current thread is 4158609088
            Dumping core ...
            Aborted
            /usr/re/jrts2.1/eval365days/kereon/src/os/linux/vm/os_linux.cpp??
            • 3. Re: Internal Error (4F533F4C494E55580E43505002E0)...
              807557
              Here's the important info:

              Error: pthread_mutex_init: Operation not supported

              Whatever that real-time patch was that you applied it has a couple of problems. I suspect that it doesn't support priority-inheritance mutexes but it is supposed to report that via the pthread_mutexattr_setprotocol function NOT pthread_mutex_init. There is no ENOTSUP return value defined for pthread_mutex_init.

              http://www.opengroup.org/onlinepubs/009695399/functions/pthread_mutex_init.html

              but a google search shows that some people feel they are free to just add error returns if they feel like it :-(

              http://lkml.indiana.edu/hypermail/linux/kernel/0609.0/1611.html
              http://sourceware.org/ml/libc-hacker/2006-02/msg00053.html

              Maybe POSIX doesn't forbid this, but it's not very sensible because noone expects that error from there. Why they did this instead of reporting the error in pthread_mutexattr_setprotocol I don't know.

              If it had reported the problem where we expected then you would have just got a warning that priority-inheritance was not available and the VM would have tried to continue (I don't know how far it would have gotten).

              As I said before, without the patch, the system either just pretended to support priority-inheritance; or else you got a warning that you hadn't noticed.

              But the bottom line is that I'm afraid this is not a supported platform.

              David
              • 4. Re: Internal Error (4F533F4C494E55580E43505002E0)...
                807557
                That's weird.. Theoretically, my patch is a "SLERT" patch for OpenSuSE, and I'm using Java RTS 2.1. It's supposed to be a supported platform. :S
                Do you know if there's something that can be done about it? Any change to be made for the kernel to support or a way to test if the problem is in fact the non-availability of priority-inheritance support?
                • 5. Re: Internal Error (4F533F4C494E55580E43505002E0)...
                  807557
                  Well a "SLERT" patch on OpenSuSE is not a supported platform - the supported platform is SLERT 10 SP2 over SLES 10 SP2.

                  But that aside, I'll see what I can find out about it. Where does the patch come from? google didn't give me anything.

                  David
                  • 6. Re: Internal Error (4F533F4C494E55580E43505002E0)...
                    807557
                    Well, actually I don't know, the responsible for my internship just gave a cd and told me to install it. lol However, googling deeper i've found that [i wasn't the only one with this problem|http://forums.sun.com/thread.jspa?threadID=5267607] , cause it's not a supported platform in fact.
                    I'll try to install the correct platform and i will give later a feedback if it's working or not. Thank you very much!
                    • 7. Re: Internal Error (4F533F4C494E55580E43505002E0)...
                      807557
                      Well that was a different error, or potentially anyway. We knew the problem was the wrong kernel and it could have been one of many things that failed.

                      We tried to give warnings based on the errors defined by POSIX, but I didn't know then that the Linux guys had decided to invent their own.

                      David
                      • 8. Re: Internal Error (4F533F4C494E55580E43505002E0)...
                        807557
                        Yes, but my SLERT kernel is 2.6.16.46-0.12-SLERT-10-15, which is different from the 2.6.22.10-3.6-rt one that is mentioned in that topic.
                        Easier (or maybe faster) than try to understand "the Linux guys" is to install something that we already know that's working :P
                        • 9. Re: Internal Error (4F533F4C494E55580E43505002E0)...
                          807557
                          You can download the 2.6.22-based RT Kernel here:

                          http://ftp.suse.com/pub/projects/kernel/kotd/SLERT10_SP2_BRANCH/

                          To run Java, you will need some library enhancements.

                          For relevancy, I would recommend basing your work on openSUSE 11.1 and using the up-to-date RT Kernel from:

                          http://download.opensuse.org/repositories/Kernel://RT-devel/openSUSE_11.1/
                          • 10. Re: Internal Error (4F533F4C494E55580E43505002E0)...
                            807557
                            Thanks for that info Sven - but note that combination is also not a supported platform for Java RTS, and we've never tried to run JRTS on it.

                            The Novell folk also gave this info:

                            ---
                            For the SLERT 10 SP2 product they could download here:

                            http://download.novell.com/Download?buildid=sDXgx7pyw0Q~

                            This is the full product but will only give them an eval activation code for getting product updates.

                            Have them download the SLES10 distro in addition to SLERT above,
                            and install the SLERT on top of it. It will all be evaluation, but
                            that's probably ok for their purposes (btw, the sles dvd is handier to
                            use for installation).

                            http://download.novell.com/Download?buildid=xWohTS2zkSs~

                            There is a README on the SLERT media root directory that explains how to
                            install SLERT.
                            ----

                            You definitely need a 2.6.22 based kernel as a minimum for JRTS.

                            David Holmes

                            Edited by: davidholmes on Apr 25, 2009 10:24 AM
                            • 11. Re: Internal Error (4F533F4C494E55580E43505002E0)...
                              807557
                              Thanks, now i installed SLES + SLERT and I don't have this problem anymore...

                              ... but i got an other. :P Instead of getting an Internal Error, i get a segmentation fault message everytime i try to execute any of Java RTS applications. However, it works fine with standard Java. I've tried to execute ulimit -s with different values, and nothing changed. :/ Do you have any idea of what could I do?
                              Now I guess I have the right kernel.

                              rodrigjc@frecb009917:~/bin/jrts2.1/bin> uname -a
                              Linux frecb009917 2.6.22.19-0.14-rt_debug #1 SMP PREEMPT RT 2008-06-04 00:52:17 +0200 x86_64 x86_64 x86_64 GNU/Linux
                              • 12. Re: Internal Error (4F533F4C494E55580E43505002E0)...
                                807557
                                Your kernel is a little downrev - the latest is 2.6.22.19-0.19 - but I don't think that would be the problem.

                                Can you run gdb on the core file to see what the stacktrace is?

                                Can you also try java_g to see if any debug output occurs before the crash.

                                David Holmes
                                • 13. Re: Internal Error (4F533F4C494E55580E43505002E0)...
                                  807557
                                  Weird, i downloaded it some days ago from Novell's website..

                                  Execution of java_g :
                                  rodrigjc@ordi:~> cd $JAVA_RTS
                                  rodrigjc@ordi:~/bin/jrts2.1/bin> ./java_g -version
                                  Segmentation fault
                                  Executing java_g with gdb :
                                  rodrigjc@ordi:~/bin/jrts2.1/bin> gdb ./java_g
                                  GNU gdb 6.6
                                  [...]
                                  Using host libthread_db library "/lib64/libthread_db.so.1".
                                  (gdb) run
                                  Starting program: /home/rodrigjc/bin/jrts2.1/bin/java_g
                                  warning: Lowest section in system-supplied DSO at 0xffffe000 is .hash at ffffe0b4
                                  [Thread debugging using libthread_db enabled]
                                  [New Thread 4158638752 (LWP 5021)]
                                  [New process 5021]
                                  [New process 5021]
                                  
                                  Program received signal SIGSEGV, Segmentation fault.
                                  0x00000007 in ?? ()
                                  :((
                                  • 14. Re: Internal Error (4F533F4C494E55580E43505002E0)...
                                    807557
                                    Make sure stack is not unlimited.

                                    Not sure why it appears to be using a 64-bit library ...

                                    David
                                    1 2 Previous Next