beehive-lab / maxine-vm Goto Github PK
View Code? Open in Web Editor NEWMaxine VM: A meta-circular research VM
License: GNU General Public License v2.0
Maxine VM: A meta-circular research VM
License: GNU General Public License v2.0
export WORKDIR=/home/mds/max
export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64
export MAXINE_HOME=$WORKDIR/maxine
export PATH=$PATH:$WORKDIR/graal/mxtool/:$MAXINE_HOME/com.oracle.max.vm.native/generated/linux/
$ cd $MAXINE_HOME
$ mx image
Exception in thread "main" com.sun.max.program.ProgramError: Unexpected Program Error: Class java.lang.Class does not declare field declaredFields
at com.sun.max.program.ProgramError.unexpected(ProgramError.java:117)
at com.sun.max.program.ProgramError.unexpected(ProgramError.java:129)
at com.sun.max.vm.hosted.JDKInterceptor$InterceptedField.ensureFieldExists(JDKInterceptor.java:586)
at com.sun.max.vm.hosted.JDKInterceptor$InterceptedField.verify(JDKInterceptor.java:576)
at com.sun.max.vm.hosted.JDKInterceptor.fillInterceptedFieldMap(JDKInterceptor.java:489)
at com.sun.max.vm.hosted.JDKInterceptor.buildInterceptedFieldMap(JDKInterceptor.java:440)
at com.sun.max.vm.hosted.JDKInterceptor.(JDKInterceptor.java:390)
at com.sun.max.vm.hosted.Prototype.loadLibrary(Prototype.java:89)
at com.sun.max.vm.hosted.Prototype.loadHostedLibrary(Prototype.java:102)
at com.sun.max.platform.Platform.hasIDiv(Platform.java:433)
at com.sun.max.platform.Platform.createTarget(Platform.java:176)
at com.sun.max.platform.Platform.(Platform.java:273)
at com.sun.max.platform.Platform.(Platform.java:257)
at com.sun.max.platform.Platform.(Platform.java:526)
at com.sun.max.vm.hosted.VMConfigurator.defaultLayoutScheme(VMConfigurator.java:112)
at com.sun.max.vm.hosted.VMConfigurator.(VMConfigurator.java:51)
at com.sun.max.vm.hosted.BootImageGenerator.(BootImageGenerator.java:206)
at com.sun.max.vm.hosted.BootImageGenerator.main(BootImageGenerator.java:471)
$
WIKI
Try this link for a more robust copy:
https://web.archive.org/web/20150516045940/https://wikis.oracle.com/display/MaxineVM/Home
Build
This worked better for me:
Hi,
I tried to build Maxine VM without docker, following the instructions presented on Building Maxine without Docker, only to find some errors.
$ mx build
JAVA_HOME: /usr/lib/jvm/openjdk-8u222-b10
1 unsatisfied dependencies were removed from build (use -v to list them)
Compiling com.oracle.mxtool.junit with javac-daemon(JDK 1.8)... [/mnt/d/platformX/maxine-src/mx/mxbuild/jdk8/com.oracle.mxtool.junit/bin/com/oracle/mxtool/junit/ModuleSupport.class does not exist]
Building com.oracle.jvmtiasmagent_amd64 with Ninja... [dependencies were added, removed or re-ordered]
/mnt/d/platformX/maxine-src/mx/java/com.oracle.mxtool.junit/src/com/oracle/mxtool/junit/FullThreadDumpDecorator.java:83: error: cannot find symbol
ti.getPriority(),
^
symbol: method getPriority()
location: variable ti of type ThreadInfo
/mnt/d/platformX/maxine-src/mx/java/com.oracle.mxtool.junit/src/com/oracle/mxtool/junit/FullThreadDumpDecorator.java:82: error: cannot find symbol
ti.isDaemon() ? "daemon" : "",
^
symbol: method isDaemon()
location: variable ti of type ThreadInfo
2 errors
Compiling com.oracle.mxtool.junit with javac-daemon(JDK 1.8): Failed due to error: 1
Compiling com.oracle.mxtool.junit with javac-daemon(JDK 1.8) failed
1 build tasks failed
The verbose output:
$ mx -v build
OS variant detected: none
[project com.oracle.mxtool.junit.jdk9 was removed as JDK 9 is not available]
[com.oracle.mxtool.junit.jdk9 was removed from distribution JUNIT_TOOL]
JAVA_HOME: /usr/lib/jvm/openjdk-8u222-b10
Dependencies removed from build:
project com.oracle.mxtool.junit.jdk9 was removed as JDK 9 is not available
Starting daemon for /usr/lib/jvm/openjdk-8u222-b10/bin/java [-d64]
[all files are up to date - skipping com.oracle.mxtool.compilerserver]
/usr/lib/jvm/openjdk-8u222-b10/bin/java -d64 -cp /mnt/d/platformX/maxine-src/mx/mxbuild/jdk8/com.oracle.mxtool.compilerserver/bin:/usr/lib/jvm/openjdk-8u222-b10/lib/tools.jar com.oracle.mxtool.compilerserver.JavacDaemon -v -j 8
Started server on port 40525 [8 threads]
[Started javac-daemon on port 40525 for Java 1.8.0_222 (1.8) from /usr/lib/jvm/openjdk-8u222-b10]
[all files are up to date - skipping com.oracle.graal.api.runtime]
[all files are up to date - skipping com.sun.max.annotate]
[all files are up to date - skipping com.oracle.graal.options]
[all files are up to date - skipping com.oracle.graal.debug]
[all files are up to date - skipping com.oracle.graal.api.meta]
[all files are up to date - skipping com.oracle.graal.bytecode]
[all files are up to date - skipping com.sun.max.jdwp.vm]
[all files are up to date - skipping com.oracle.mxtool.checkcopy]
[all files are up to date - skipping com.oracle.max.elf]
[all files are up to date - skipping com.oracle.mxtool.compilerserver]
[skipping GCC_NINJA_TOOLCHAIN]
[all files are up to date - skipping com.oracle.graal.api.replacements]
[all files are up to date - skipping com.oracle.mxtool.webserver]
[all files are up to date - skipping com.oracle.truffle.api]
[all files are up to date - skipping com.oracle.graal.service.processor]
[all files are up to date - skipping com.oracle.graal.graph]
[all files are up to date - skipping test.jsr292]
[skipping Options]
[all files are up to date - skipping com.sun.cri]
[all files are up to date - skipping com.oracle.graal.replacements.verifier]
[skipping ServiceProcessor]
[all files are up to date - skipping com.oracle.graal.test]
[all files are up to date - skipping com.oracle.truffle.api.dsl]
[all files are up to date - skipping com.oracle.graal.api.code]
[all files are up to date - skipping com.oracle.graal.graph.test]
Cleaning /mnt/d/platformX/maxine-src/mx/mxbuild/com.oracle.mxtool.junit...
Cleaning /mnt/d/platformX/maxine-src/mx/mxbuild/jdk8/com.oracle.mxtool.junit/bin...
[all files are up to date - skipping com.oracle.graal.debug.test]
[all files are up to date - skipping com.oracle.mxtool.jmh_1_21]
Compiling com.oracle.mxtool.junit with javac-daemon(JDK 1.8)... [/mnt/d/platformX/maxine-src/mx/mxbuild/jdk8/com.oracle.mxtool.junit/bin/com/oracle/mxtool/junit/ModuleSupport.class does not exist]
/usr/lib/jvm/openjdk-8u222-b10/bin/javac -g -d /mnt/d/platformX/maxine-src/mx/mxbuild/jdk8/com.oracle.mxtool.junit/bin -classpath /root/.mx/cache/HAMCREST_42a25dc3219429f0e5d060061f71acb49bf010a0/hamcrest.jar:/root/.mx/cache/JUNIT_2973d150c0dc1fefe998f834810d68f278ea58ec/junit.jar -parameters -proc:none -target 1.8 -source 1.8 @/mnt/d/platformX/maxine-src/mx/mxbuild/jdk8/com.oracle.mxtool.junit/javafilelist.txt -Xlint:all,-auxiliaryclass,-processing,-options -XDignore.symbol.file -Werror -encoding UTF-8 -Xmaxerrs 10000
Compiling -g -d /mnt/d/platformX/maxine-src/mx/mxbuild/jdk8/com.oracle.mxtool.junit/bin -classpath /root/.mx/cache/HAMCREST_42a25dc3219429f0e5d060061f71acb49bf010a0/hamcrest.jar:/root/.mx/cache/JUNIT_2973d150c0dc1fefe998f834810d68f278ea58ec/junit.jar -parameters -proc:none -target 1.8 -source 1.8 @/mnt/d/platformX/maxine-src/mx/mxbuild/jdk8/com.oracle.mxtool.junit/javafilelist.txt -Xlint:all,-auxiliaryclass,-processing,-options -XDignore.symbol.file -Werror -encoding UTF-8 -Xmaxerrs 10000
[skipping DEFAULT_NINJA_TOOLCHAIN]
[all files are up to date - skipping com.oracle.max.cri]
[all files are up to date - skipping com.oracle.graal.api.meta.test]
[all files are up to date - skipping com.oracle.graal.asm]
[all files are up to date - skipping com.sun.max.jdwp]
[all files are up to date - skipping com.oracle.graal.amd64]
[all files are up to date - skipping com.oracle.max.criutils]
[skipping MX_MICRO_BENCHMARKS]
[all files are up to date - skipping com.oracle.graal.hsail]
[all files are up to date - skipping com.oracle.truffle.api.test]
[all files are up to date - skipping com.oracle.graal.api.test]
[all files are up to date - skipping com.oracle.graal.sparc]
[skipping ReplacementVerifier]
Checking whether to build com.oracle.jvmtiasmagent_amd64 with Ninja...
# Directory: /mnt/d/platformX/maxine-src/mx/mxbuild/linux-amd64-jdk8/com.oracle.jvmtiasmagent/amd64
env MX__SUITEMODEL=sibling MX_HOME=/mnt/d/platformX/maxine-src/mx MX_PRIMARY_SUITE_PATH=/mnt/d/platformX/maxine-src/maxine MX_SUBPROCESS_COMMAND_FILE=/tmp/mx_subprocess_command.2IPZO3 \
ninja -j 1 -n -d explain
[ninja: no work to do. - skipping com.oracle.jvmtiasmagent_amd64]
[all files are up to date - skipping com.oracle.graal.asm.ptx]
[all files are up to date - skipping com.oracle.graal.asm.test]
[all files are up to date - skipping com.oracle.graal.ptx]
[all files are up to date - skipping com.oracle.graal.asm.amd64]
[all files are up to date - skipping com.oracle.graal.asm.hsail]
[all files are up to date - skipping com.oracle.graal.asm.amd64.test]
[all files are up to date - skipping com.oracle.max.asm]
[all files are up to date - skipping com.oracle.mxtool.jacoco]
/mnt/d/platformX/maxine-src/mx/java/com.oracle.mxtool.junit/src/com/oracle/mxtool/junit/FullThreadDumpDecorator.java:83: error: cannot find symbol
ti.getPriority(),
^
symbol: method getPriority()
location: variable ti of type ThreadInfo
/mnt/d/platformX/maxine-src/mx/java/com.oracle.mxtool.junit/src/com/oracle/mxtool/junit/FullThreadDumpDecorator.java:82: error: cannot find symbol
ti.isDaemon() ? "daemon" : "",
^
symbol: method isDaemon()
location: variable ti of type ThreadInfo
2 errors
Result = 1
[exit code: 1]
File "/mnt/d/platformX/maxine-src/mx/mx.py", line 17916, in <module>
main()
File "/mnt/d/platformX/maxine-src/mx/mx.py", line 17897, in main
retcode = c(command_args)
File "/mnt/d/platformX/maxine-src/mx/mx_commands.py", line 147, in __call__
return self.command_function(*args, **kwargs)
File "/mnt/d/platformX/maxine-src/maxine/mx.maxine/mx_maxine.py", line 98, in build
mx.build(['--warning-as-error'] + args)
File "/mnt/d/platformX/maxine-src/mx/mx.py", line 14542, in build
task.proc.start()
File "/usr/lib/python2.7/multiprocessing/process.py", line 130, in start
self._popen = Popen(self)
File "/usr/lib/python2.7/multiprocessing/forking.py", line 126, in __init__
code = process_obj._bootstrap()
File "/usr/lib/python2.7/multiprocessing/process.py", line 267, in _bootstrap
self.run()
File "/usr/lib/python2.7/multiprocessing/process.py", line 114, in run
self._target(*self._args, **self._kwargs)
File "/mnt/d/platformX/maxine-src/mx/mx.py", line 14523, in executeTask
task.execute()
File "/mnt/d/platformX/maxine-src/mx/mx.py", line 5162, in execute
_built = self.build()
File "/mnt/d/platformX/maxine-src/mx/mx.py", line 7585, in build
self.compiler.compile(self.compileArgs)
File "/mnt/d/platformX/maxine-src/mx/mx.py", line 7957, in compile
return self.daemon.compile(nonJvmArgs)
File "/mnt/d/platformX/maxine-src/mx/mx.py", line 8060, in compile
abort(retcode)
File "/mnt/d/platformX/maxine-src/mx/mx.py", line 4137, in abort
traceback.print_stack()
Compiling com.oracle.mxtool.junit with javac-daemon(JDK 1.8): Failed due to error: 1
[all files are up to date - skipping com.oracle.truffle.dsl.processor]
[all files are up to date - skipping com.oracle.graal.nodes]
[all files are up to date - skipping com.sun.max]
Compiling com.oracle.mxtool.junit with javac-daemon(JDK 1.8) failed
[Stopped javac-daemon on port 40525 for Java 1.8.0_222 (1.8) from /usr/lib/jvm/openjdk-8u222-b10]
Shutting down
File "/mnt/d/platformX/maxine-src/mx/mx.py", line 17916, in <module>
main()
File "/mnt/d/platformX/maxine-src/mx/mx.py", line 17897, in main
retcode = c(command_args)
File "/mnt/d/platformX/maxine-src/mx/mx_commands.py", line 147, in __call__
return self.command_function(*args, **kwargs)
File "/mnt/d/platformX/maxine-src/maxine/mx.maxine/mx_maxine.py", line 98, in build
mx.build(['--warning-as-error'] + args)
File "/mnt/d/platformX/maxine-src/mx/mx.py", line 14585, in build
abort('{0} build tasks failed'.format(len(failed)))
File "/mnt/d/platformX/maxine-src/mx/mx.py", line 4137, in abort
traceback.print_stack()
1 build tasks failed
from _multiprocessing import SemLock, sem_unlink ImportError: cannot import name 'SemLock' from '_multiprocessing' (/data/data/com.termux/files/usr/lib/python3.9/lib-dynload/_multiprocessing.cpython-39.so)
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/data/data/com.termux/files/usr/stuffs/maxine-src/mx/mx.py", line 16700, in <module> __compile_mx_class_lock = multiprocessing.Lock()
File "/data/data/com.termux/files/usr/lib/python3.9/multiprocessing/context.py", line 67, in Lock
from .synchronize import Lock File "/data/data/com.termux/files/usr/lib/python3.9/multiprocessing/synchronize.py", line 30, in <module>
raise ImportError("This platform lacks a functioning sem_open" +
ImportError: This platform lacks a functioning sem_open implementation, therefore, the required synchronization primitives needed will not function, see issue 3770.
Do i need to do it on a java IDE's terminal
it is on ubuntu 16.04
but mx image is ok
Exception in thread "main" com.sun.max.vm.runtime.FatalError: MaxGraalOptions is out of sync with Graal, regenerate and refresh in IDE
at com.sun.max.vm.runtime.FatalError.unexpected(FatalError.java:154)
at com.sun.max.vm.runtime.FatalError.check(FatalError.java:274)
at com.oracle.max.vm.ext.graal.MaxGraalOptions$GeneratedCodeCheckerCallback.checkGeneratedCode(MaxGraalOptions.java:152)
at com.sun.max.vm.hosted.JavaPrototype.<init>(JavaPrototype.java:347)
at com.sun.max.vm.hosted.JavaPrototype.initialize(JavaPrototype.java:311)
at com.sun.max.vm.hosted.BootImageGenerator.<init>(BootImageGenerator.java:242)
at com.sun.max.vm.hosted.BootImageGenerator.main(BootImageGenerator.java:471)
root@67e2c13f62b0:~/maxine-src/maxine# mx ideinit
WARNING: IntelliJ SDK definitions not found
At first I found that the module dependencies are not been parsed by my IntelliJ. I have to mark each source root manually. I think maybe it's because the "max ideinit" is not executed successfully. Why it gave this warning? How to solve it?
When using Maxine vm on Aarch64,I ran some benchmark such as scimark and Dacapo. When I tried to run the benchmark with using option C1X:+PrintAssembly or -C1X:+PrintCFGToFile, it will show error:
FatalError: stack reset position two
Compilation of java.io.UnixFileSystem.checkAccess(File, int) by T1X failed (final attempt)
The detailed error log is upload as an attached file.
error message.txt
Here's my output
root@e52a8299e018:~/maxine-src/maxine# mx vm -cp test/bin test.output.GCTest0 -XX:-LogGC
GCTest0 started.
GCTest0 done.
root@e52a8299e018:~/maxine-src/maxine# mx vm -cp test/bin test.output.GCTest0 -XX:-TraceGC
GCTest0 started.
GCTest0 done.
There's no GC Log information.
Please give me some guidance.
such as
main[id=1]: Compilation of com.sun.max.vm.jni.JniFunctions.GetByteArrayRegion(Pointer, JniHandle, int, int, Pointer) by Graal failed
com.oracle.graal.graph.VerificationError: is null input must be an object
at node: 107|IsNull
at graph: StructuredGraph:7571{com.sun.max.vm.jni.JniFunctions.GetByteArrayRegion(Pointer, JniHandle, int, int, Pointer)}
at com.oracle.graal.graph.Node.assertTrue(Node.java:407)
at com.oracle.graal.nodes.calc.IsNullNode.verify(IsNullNode.java:58)
at com.oracle.graal.graph.Graph.verify(Graph.java:563)
at com.oracle.graal.phases.BasePhase$1.run(BasePhase.java:67)
at com.oracle.graal.debug.internal.DebugScope.executeScope(DebugScope.java:256)
at com.oracle.graal.debug.internal.DebugScope.scope(DebugScope.java:243)
at com.oracle.graal.debug.Debug.scope(Debug.java:139)
at com.oracle.graal.debug.Debug.scope(Debug.java:134)
at com.oracle.graal.phases.BasePhase.apply(BasePhase.java:59)
at com.oracle.graal.phases.BasePhase.apply(BasePhase.java:55)
at com.oracle.graal.phases.PhaseSuite.run(PhaseSuite.java:69)
at com.oracle.graal.phases.BasePhase$1.run(BasePhase.java:62)
at com.oracle.graal.debug.internal.DebugScope.executeScope(DebugScope.java:256)
at com.oracle.graal.debug.internal.DebugScope.scope(DebugScope.java:243)
at com.oracle.graal.debug.Debug.scope(Debug.java:139)
at com.oracle.graal.debug.Debug.scope(Debug.java:134)
at com.oracle.graal.phases.BasePhase.apply(BasePhase.java:59)
at com.oracle.graal.phases.BasePhase.apply(BasePhase.java:55)
at com.oracle.graal.compiler.GraalCompiler.emitHIR(GraalCompiler.java:133)
at com.oracle.graal.compiler.GraalCompiler$1$1.call(GraalCompiler.java:79)
at com.oracle.graal.compiler.GraalCompiler$1$1.call(GraalCompiler.java:76)
at com.oracle.graal.debug.internal.DebugScope.call(DebugScope.java:381)
at com.oracle.graal.debug.internal.DebugScope.executeScope(DebugScope.java:259)
at com.oracle.graal.debug.internal.DebugScope.scope(DebugScope.java:243)
at com.oracle.graal.debug.Debug.scope(Debug.java:159)
at com.oracle.graal.debug.Debug.scope(Debug.java:130)
at com.oracle.graal.compiler.GraalCompiler$1.run(GraalCompiler.java:76)
at com.oracle.graal.debug.internal.DebugScope.executeScope(DebugScope.java:256)
at com.oracle.graal.debug.internal.DebugScope.scope(DebugScope.java:243)
at com.oracle.graal.debug.Debug.scope(Debug.java:139)
at com.oracle.graal.compiler.GraalCompiler.compileGraph(GraalCompiler.java:72)
at com.oracle.max.vm.ext.graal.MaxGraal.compile(MaxGraal.java:492)
at com.oracle.max.vm.ext.c1xgraal.C1XGraal.compile(C1XGraal.java:123)
at com.sun.max.vm.compiler.target.Compilation.compile(Compilation.java:295)
at com.sun.max.vm.compiler.CompilationBroker.compile(CompilationBroker.java:481)
at com.sun.max.vm.compiler.CompilationBroker.compile(CompilationBroker.java:428)
at com.sun.max.vm.compiler.CompilationBroker.compile(CompilationBroker.java:381)
at com.sun.max.vm.hosted.CompiledPrototype$2.call(CompiledPrototype.java:608)
at com.sun.max.vm.hosted.CompiledPrototype$2.call(CompiledPrototype.java:605)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
main[id=1]: Retrying with C1X...
[thread:18] scope: GraalCompiler
[thread:18] scope: GraalCompiler.FrontEnd
[thread:18] scope: GraalCompiler.FrontEnd.HighTier
[thread:18] scope: GraalCompiler.FrontEnd.HighTier.KindRewriter
[thread:18] scope: GraalCompiler.FrontEnd.HighTier.KindRewriter.InterceptException
Exception occurred in scope: GraalCompiler.FrontEnd.HighTier.KindRewriter.InterceptException
Context obj com.oracle.graal.graph.VerificationError: is null input must be an object
at node: 446|IsNull
at graph: StructuredGraph:7573{com.sun.max.vm.jni.JniFunctions.CallStaticObjectMethodA(Pointer, JniHandle, MethodID, Pointer)}
Context obj com.oracle.max.vm.ext.graal.phases.MaxWordType$KindRewriterPhase@4a4571c
Context obj com.oracle.graal.compiler.phases.HighTier@65114a16
Context obj StructuredGraph:7573{com.sun.max.vm.jni.JniFunctions.CallStaticObjectMethodA(Pointer, JniHandle, MethodID, Pointer)}
Use -G:+DumpOnError to enable dumping of graphs on this error
Context obj com.oracle.max.vm.ext.graal.MaxRuntime@45fb5001
main[id=1]: Compilation of com.sun.max.vm.jni.JniFunctions.CallStaticObjectMethodA(Pointer, JniHandle, MethodID, Pointer) by Graal failed
I'm building on macOS with Oracle JDK 8u151 installed, mx image
works.
TeleWarning: Class path entry is neither a directory nor a JAR file: com.oracle.max.tests/bin
Error converting MAX_AGENT_PID value "3268" to a long value: No such file or directory
Exception in thread "main" com.sun.max.tele.util.TeleError: Tele Internal Error: failed to instantiate com.sun.max.tele.debug.linux.LinuxTeleVM
at com.sun.max.tele.util.TeleError.error(TeleError.java:36)
at com.sun.max.tele.util.TeleError.unexpected(TeleError.java:47)
at com.sun.max.tele.TeleVM.create(TeleVM.java:546)
at com.sun.max.tele.TeleVM.create(TeleVM.java:440)
at com.sun.max.ins.MaxineInspector.main(MaxineInspector.java:75)
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at com.sun.max.tele.TeleVM.create(TeleVM.java:544)
... 2 more
Caused by: com.sun.max.tele.util.TeleError: Tele Internal Error: Error while reading boot image address from VM process
at com.sun.max.tele.util.TeleError.error(TeleError.java:36)
at com.sun.max.tele.util.TeleError.unexpected(TeleError.java:47)
at com.sun.max.tele.debug.unix.UnixNativeTeleChannelProtocolAdaptor.getBootHeapStart(UnixNativeTeleChannelProtocolAdaptor.java:107)
at com.sun.max.tele.TeleVM.loadBootImage(TeleVM.java:1359)
at com.sun.max.tele.TeleVM.(TeleVM.java:807)
at com.sun.max.tele.debug.linux.LinuxTeleVM.(LinuxTeleVM.java:41)
... 7 more
Caused by: com.sun.max.vm.hosted.BootImageException: Timed out while waiting for connection from VM
at com.sun.max.tele.TeleVMAgent.waitForVM(TeleVMAgent.java:111)
at com.sun.max.tele.debug.unix.UnixNativeTeleChannelProtocolAdaptor.getBootHeapStart(UnixNativeTeleChannelProtocolAdaptor.java:98)
... 10 more
Can you add Classpath Exception to the Java Files and / or license with alternative license like ASL 2.0
I was trying to use maxine to run a single node cluster on Voldemort. However, I'm running into the problem that it throws an UnsatisfiedLinkError when it is trying to call mlockall (a system call) via JNA. (see example error trace below)
Tracing through the code, it looks like the DynamicLinker was looking up the symbol "Java_voldemort_utils_JNAUtils_mlockall" but couldn't find it in its holder classpath nor the system library.
I've also tried comparing the trace with -verbose:jni against Java7 running Voldemort. It looks like it is missing this line "[Registering JNI native method voldemort.utils.JNAUtils.mlockall]" where it would have crashed. Could you please suggest how I could solve the problem or what methods in the code I could look into modifying to be able to register JNI native methods?
I'm using the maxine version from MaxSim with Java7. Please let me know if I'm missing any information that I should be providing.
Here is the command that I used:
./maxine/com.oracle.max.vm.native/generated/linux/maxvm -cp .voldemort/voldemort-release-1.9.0-cutoff/dist/voldemort-1.9.0.jar:.voldemort/voldemort-release-1.9.0-cutoff/dist/voldemort-1.9.0-src.jar:.voldemort/voldemort-release-1.9.0-cutoff/dist/voldemort-contrib-1.9.0.jar:.voldemort/voldemort-release-1.9.0-cutoff/dist/voldemort-test-1.9.0.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/avro-1.4.0.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/azkaban-common-0.05.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/catalina-ant.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/colt-1.2.0.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/commons-codec-1.4.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/commons-collections-3.2.1.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/commons-configuration-1.6.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/commons-dbcp-1.2.2.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/commons-io-1.4.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/commons-lang-2.4.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/commons-logging-1.1.1.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/commons-pool-1.5.2.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/compress-lzf-0.9.1.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/data-1.15.18.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/gson-2.2.4.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/guava-14.0.1.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/hadoop-auth-2.0.5-alpha.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/hadoop-core-1.0.4.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/httpclient-4.1.2.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/httpcore-4.1.2.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/jackson-core-asl-1.4.0.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/jackson-mapper-asl-1.4.0.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/jdom-1.1.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/je-5.0.88.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/jetty-6.1.18.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/jetty-util-6.1.18.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/jline-0.9.94.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/jna.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/joda-time-1.6.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/jopt-simple-4.6.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/junit-4.6.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/krati-0.3.6.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/libthrift-0.5.0.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/log4j-1.2.15.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/mail-1.4.1.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/mockito-all-1.8.5.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/netty-3.5.8.Final.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/paranamer-2.1.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/pegasus-common-1.15.18.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/protobuf-java-2.3.0.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/r2-1.15.18.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/scala-compiler-2.10.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/scala-library-2.10.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/scala-reflect-2.10.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/servlet-api-2.5.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/slf4j-api-1.5.6.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/slf4j-log4j12-1.5.6.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/snappy-0.2.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/tehuti-0.5.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/tusk-0.0.2.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/typica-1.7.2.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/velocity-1.6.2.jar:.voldemort/voldemort-release-1.9.0-cutoff/lib/xercesImpl-2.9.1.jar:.voldemort/voldemort-release-1.9.0-cutoff/contrib/*/lib/*.jar:.voldemort/voldemort-release-1.9.0-cutoff/dist/resources -Dlog4j.configuration=file://.voldemort/voldemort-release-1.9.0-cutoff/src/java/log4j.properties -Xmx2G -server -Dcom.sun.management.jmxremote voldemort.server.VoldemortServer config/single_node_cluster/
The error output that i obtained:
[14:38:18,735 voldemort.store.metadata.MetadataStore] INFO metadata init(). [main]
[14:38:18,999 voldemort.cluster.Node] WARN admin-port not defined for node:0 using default value(socket_port + 1):6667 [main]
[14:38:19,086 voldemort.store.metadata.MetadataStore] INFO Updating routing strategy for all stores [main]
[14:38:20,163 voldemort.server.VoldemortServer] INFO Using NIO Connector. [main]
[14:38:20,304 voldemort.server.VoldemortServer] INFO Using NIO Connector for Admin Service. [main]
[14:38:20,306 voldemort.common.service.VoldemortService] INFO Starting voldemort-server [main]
[14:38:20,425 voldemort.utils.JNAUtils] INFO Failed to link to native library [main]
Exception in thread "main" java.lang.UnsatisfiedLinkError: Java_voldemort_utils_JNAUtils_mlockall __I
at com.sun.max.vm.jni.DynamicLinker.lookup(DynamicLinker.java:271)
at com.sun.max.vm.actor.member.NativeFunction.link0(NativeFunction.java:117)
at com.sun.max.vm.actor.member.NativeFunction.link(NativeFunction.java:110)
at voldemort.utils.JNAUtils.mlockall(Native Method)
at voldemort.utils.JNAUtils.tryMlockall(JNAUtils.java:51)
at voldemort.server.VoldemortServer.startInner(VoldemortServer.java:328)
at voldemort.common.service.AbstractService.start(AbstractService.java:62)
at voldemort.server.VoldemortServer.main(VoldemortServer.java:384)
at java.lang.reflect.Method.invoke(Method.java:606)
at com.sun.max.vm.run.java.JavaRunScheme.lookupAndInvokeMain(JavaRunScheme.java:376)
at com.sun.max.vm.run.java.JavaRunScheme.run(JavaRunScheme.java:333)
at com.sun.max.vm.thread.VmThread.executeRunnable(VmThread.java:511)
at com.sun.max.vm.thread.VmThread.run(VmThread.java:682)
Thank you!
Hello,
I've compiled and run Maxine with the docker image, following the instructions here: https://maxine-vm.readthedocs.io/en/latest/build.html#developing-using-a-docker-container
mx helloworld runs successfully:
~/maxine-src/maxine# mx helloworld
Hello World!
I then compile the VMA image using the command from here: https://maxine-vm.readthedocs.io/en/latest/Virtual-Machine-Level-Analysis.html#building-handlers-into-the-boot-image
mx --Jp @-Dmax.vma.handler.class=com.oracle.max.vm.ext.vma.handlers.store.sync.h.SyncStoreVMAdviceHandler image @vma-t1x
(fixing the typo in the documentation to change handler --> handlers)
When I run:
mx helloworld
The VM crashes generating the below stack trace. It seems that either there's a problem with the code or the documentation, but I'm not sure which:
error.txt
I had followed the instructions in Build and Usage Instructions and Running Maxine VM on the Fedora RISC-V VM but it seems had some problems about stack, Is it the same question as #20 ? Thx a lot.
[root@fedora-riscv linux]# ./maxvm -version
openjdk version "1.8.0_265"
OpenJDK Runtime Environment (build 1.8.0_265-8u265-b01-0ubuntu2~16.04-b01)
Maxine Virtual Machine (build 2.9.0, mixed mode, baseline-compile first)
FatalError: stack reset position two
could not find top-level exception handler
FATAL VM ERROR[1]: could not find top-level exception handler
Faulting thread: main[id=1]
------ Stack dump for thread main[id=1] ------
-> com.sun.max.vm.runtime.FatalError.dumpStackAndThreadLocals(Lcom/sun/max/unsafe/Pointer;Z)V {MaxTargetMethod@0x3f9fbcf9e0} [0x3f9fbcf9e0+360]
-> com.sun.max.vm.runtime.FatalError.unexpected(Ljava/lang/String;ZLjava/lang/Throwable;Lcom/sun/max/unsafe/Pointer;)Lcom/sun/max/vm/runtime/FatalError; {MaxTargetMethod@0x3f9fa6a848} [0x3f9fa6a848+1484]
-> com.sun.max.vm.runtime.FatalError.unexpected(Ljava/lang/String;)Lcom/sun/max/vm/runtime/FatalError; {MaxTargetMethod@0x3f9f843110} [0x3f9f843110+124]
-> com.sun.max.vm.runtime.Throw.raise(Ljava/lang/Throwable;Lcom/sun/max/unsafe/Pointer;Lcom/sun/max/unsafe/Pointer;Lcom/sun/max/unsafe/CodePointer;)V {MaxTargetMethod@0x3f9fadf0d8} [0x3f9fadf0d8+584]
-> com.sun.max.vm.runtime.Throw.convertAndRaise(Ljava/lang/Throwable;Lcom/sun/max/unsafe/Pointer;Lcom/sun/max/unsafe/Pointer;Lcom/sun/max/unsafe/CodePointer;)V {MaxTargetMethod@0x3f9f83fe40} [0x3f9f83fe40+308]
-> com.oracle.max.vm.ext.maxri.MaxRuntimeCalls.runtimeUnwindException(Ljava/lang/Throwable;)V {MaxTargetMethod@0x3f9f83fb30} [0x3f9f83fb30+216]
-> java.lang.Shutdown.exit(I)V {MaxTargetMethod@0x3f9fb01000} [0x3f9fb01000+1080]
-> com.sun.max.vm.thread.VmThread.run(Lcom/sun/max/unsafe/Pointer;Lcom/sun/max/unsafe/Pointer;Lcom/sun/max/unsafe/Pointer;)V {MaxTargetMethod@0x3f9f860938} [0x3f9f860938+2556]
-> native{./libjvm.so (0x3fdae13000) at thread_run (0x3fdae28abe+408)}
------ Thread locals for thread main[id=1] ------
SAFEPOINT_LATCH: {E} 0x1e624160 {D} 0x1e6242c8 {T} <trigger latch>
ETLA: {E} 0x1e624160 {D} 0x1e624160 {T} 0x1e624160
DTLA: {E} 0x1e6242c8 {D} 0x1e6242c8 {T} 0x1e6242c8
TTLA: {E} 0x1e623ff8 {D} 0x1e623ff8 {T} 0x1e623ff8
NATIVE_THREAD_LOCALS: {E} 0x1e624430 {D} 0x1e624430 {T} 0x1e624430
FORWARD_LINK: {E} 0 {D} 0 {T} 0
BACKWARD_LINK: {E} 0x1e647160 {D} 0x1e647160 {T} 0x1e647160
VM_OPERATION: {E} 0 {D} 0 {T} 0
ID: {E} 0x1 {D} 0x1 {T} 0x1
VM_THREAD: {E} 0x3f9d1009c0 main[id=1] {D} 0x3f9d1009c0 main[id=1] {T} 0x3f9d1009c0 main[id=1]
JNI_ENV: {E} 0x3fdae31010 {D} 0x3fdae31010 {T} 0x3fdae31010
LAST_JAVA_FRAME_ANCHOR: {E} 0x3fff8f5e60 {D} 0 {T} 0
MUTATOR_STATE: {E} 0x1 {D} 0 {T} 0
FROZEN: {E} 0 {D} 0 {T} 0
TRAP_NUMBER: {E} 0 {D} 0 {T} 0
TRAP_INSTRUCTION_POINTER: {E} 0 {D} 0 {T} 0
TRAP_FAULT_ADDRESS: {E} 0 {D} 0 {T} 0
TRAP_LATCH_REGISTER: {E} 0 {D} 0 {T} 0
HIGHEST_STACK_SLOT_ADDRESS: {E} 0x3fff8f7000 {D} 0x3fff8f7000 {T} 0x3fff8f7000
LOWEST_STACK_SLOT_ADDRESS: {E} 0x3fff0f9000 {D} 0x3fff0f9000 {T} 0x3fff0f9000
LOWEST_ACTIVE_STACK_SLOT_ADDRESS: {E} 0 {D} 0 {T} 0
STACK_REFERENCE_MAP: {E} 0x1e624480 {D} 0x1e624480 {T} 0x1e624480
STACK_REFERENCE_SIZE: {E} 0x20008 {D} 0x20008 {T} 0x20008
CUSTOM_ALLOCATION_ENABLED: {E} 0 {D} 0 {T} 0
SUSPEND: {E} 0 {D} 0 {T} 0
PROFILER_STATE: {E} 0 {D} 0 {T} 0
JVMTI: {E} 0 {D} 0 {T} 0
JVMTI_TL: {E} 0 {D} 0 {T} 0
COMPILATION: {E} 0 {D} 0 {T} 0
NATIVE_CALLS_DISABLED: {E} 0 {D} 0 {T} 0
ERROR_CONTEXTS: {E} 0x3fbafa30b0 {D} 0x3fbafa30b0 {T} 0x3fbafa30b0
TRACE_UNDER_CONSTRUCTION: {E} 0 {D} 0 {T} 0
VMLOG_RECORD: {E} 0x3f9e8b7210 {D} 0x3f9e8b7210 {T} 0x3f9e8b7210
VMLOG_BUFFER: {E} 0x3f9ecf3c80 {D} 0x3f9ecf3c80 {T} 0x3f9ecf3c80
VMLOG_BUFFER_OFFSETS: {E} 0x8a0 {D} 0x8a0 {T} 0x8a0
GC_DISABLING_COUNT: {E} 0 {D} 0 {T} 0
TLAB_TOP: {E} 0x3fbd9b43d8 {D} 0 {T} 0
TLAB_MARK: {E} 0x3fbd9a75d0 {D} 0 {T} 0
TLAB_TOP_TMP: {E} 0 {D} 0 {T} 0
TLAB_MARK_TMP: {E} 0 {D} 0 {T} 0
ALLOCATION_COUNTER: {E} 0 {D} 0 {T} 0
TLAB_DISABLED: {E} 0 {D} 0 {T} 0
TLAB_REFILL_POLICY: {E} 0x3fbae13000 {D} 0 {T} 0
TLAB_LOG_TAIL: {E} 0 {D} 0 {T} 0
SAMPLING_ALLOCATION_COUNTER: {E} 0 {D} 0 {T} 0
------ Stack dump for thread Signal Dispatcher[id=3] ------
-> com.sun.max.vm.runtime.SignalDispatcher.nativeSignalWait()V {MaxTargetMethod@0x3f9f98c1e0} [0x3f9f98c1e0+1220]
-> com.sun.max.vm.runtime.SignalDispatcher.waitForSignal()I {MaxTargetMethod@0x3f9fd3bc98} [0x3f9fd3bc98+540]
-> com.sun.max.vm.runtime.SignalDispatcher.run()V {MaxTargetMethod@0x3f9fbda3f8} [0x3f9fbda3f8+272]
-> com.sun.max.vm.thread.VmThread.executeRunnable(Lcom/sun/max/vm/thread/VmThread;)V {MaxTargetMethod@0x3f9fb00a40} [0x3f9fb00a40+268]
-> com.sun.max.vm.thread.VmThread.run(Lcom/sun/max/unsafe/Pointer;Lcom/sun/max/unsafe/Pointer;Lcom/sun/max/unsafe/Pointer;)V {MaxTargetMethod@0x3f9f860938} [0x3f9f860938+2024]
-> native{./libjvm.so (0x3fdae13000) at thread_run (0x3fdae28abe+408)}
------ Thread locals for thread Signal Dispatcher[id=3] ------
SAFEPOINT_LATCH: {E} 0x1e659160 {D} 0x1e6592c8 {T} <trigger latch>
ETLA: {E} 0x1e659160 {D} 0x1e659160 {T} 0x1e659160
DTLA: {E} 0x1e6592c8 {D} 0x1e6592c8 {T} 0x1e6592c8
TTLA: {E} 0x1e658ff8 {D} 0x1e658ff8 {T} 0x1e658ff8
NATIVE_THREAD_LOCALS: {E} 0x1e659430 {D} 0x1e659430 {T} 0x1e659430
FORWARD_LINK: {E} 0x1e653160 {D} 0x1e653160 {T} 0x1e653160
BACKWARD_LINK: {E} 0 {D} 0 {T} 0
VM_OPERATION: {E} 0 {D} 0 {T} 0
ID: {E} 0x3 {D} 0x3 {T} 0x3
VM_THREAD: {E} 0x3f9c301140 Signal Dispatcher[id=3] {D} 0x3f9c301140 Signal Dispatcher[id=3] {T} 0x3f9c301140 Signal Dispatcher[id=3]
JNI_ENV: {E} 0x3fdae31010 {D} 0x3fdae31010 {T} 0x3fdae31010
LAST_JAVA_FRAME_ANCHOR: {E} 0x3fbab0e550 {D} 0 {T} 0
MUTATOR_STATE: {E} 0 {D} 0 {T} 0
FROZEN: {E} 0 {D} 0 {T} 0
TRAP_NUMBER: {E} 0 {D} 0 {T} 0
TRAP_INSTRUCTION_POINTER: {E} 0 {D} 0 {T} 0
TRAP_FAULT_ADDRESS: {E} 0 {D} 0 {T} 0
TRAP_LATCH_REGISTER: {E} 0 {D} 0 {T} 0
HIGHEST_STACK_SLOT_ADDRESS: {E} 0x3fbab10000 {D} 0x3fbab10000 {T} 0x3fbab10000
LOWEST_STACK_SLOT_ADDRESS: {E} 0x3fbaa12000 {D} 0x3fbaa12000 {T} 0x3fbaa12000
LOWEST_ACTIVE_STACK_SLOT_ADDRESS: {E} 0 {D} 0 {T} 0
STACK_REFERENCE_MAP: {E} 0x1e659480 {D} 0x1e659480 {T} 0x1e659480
STACK_REFERENCE_SIZE: {E} 0x3fc8 {D} 0x3fc8 {T} 0x3fc8
CUSTOM_ALLOCATION_ENABLED: {E} 0 {D} 0 {T} 0
SUSPEND: {E} 0 {D} 0 {T} 0
PROFILER_STATE: {E} 0 {D} 0 {T} 0
JVMTI: {E} 0 {D} 0 {T} 0
JVMTI_TL: {E} 0 {D} 0 {T} 0
COMPILATION: {E} 0x3f9eb15920 {D} 0x3f9eb15920 {T} 0x3f9eb15920
NATIVE_CALLS_DISABLED: {E} 0 {D} 0 {T} 0
ERROR_CONTEXTS: {E} 0x3f9eb15920 {D} 0x3f9eb15920 {T} 0x3f9eb15920
TRACE_UNDER_CONSTRUCTION: {E} 0x3f9eb15920 {D} 0x3f9eb15920 {T} 0x3f9eb15920
VMLOG_RECORD: {E} 0x3fbae53038 {D} 0x3fbae53038 {T} 0x3fbae53038
VMLOG_BUFFER: {E} 0 {D} 0 {T} 0
VMLOG_BUFFER_OFFSETS: {E} 0 {D} 0 {T} 0
GC_DISABLING_COUNT: {E} 0 {D} 0 {T} 0
TLAB_TOP: {E} 0x3fbae63000 {D} 0 {T} 0
TLAB_MARK: {E} 0x3fbae53058 {D} 0 {T} 0
TLAB_TOP_TMP: {E} 0 {D} 0 {T} 0
TLAB_MARK_TMP: {E} 0 {D} 0 {T} 0
ALLOCATION_COUNTER: {E} 0 {D} 0 {T} 0
TLAB_DISABLED: {E} 0 {D} 0 {T} 0
TLAB_REFILL_POLICY: {E} 0x3fbae53000 {D} 0 {T} 0
TLAB_LOG_TAIL: {E} 0 {D} 0 {T} 0
SAMPLING_ALLOCATION_COUNTER: {E} 0 {D} 0 {T} 0
------ Stack dump for thread Finalizer[id=5] ------
-> com.sun.max.vm.runtime.OSMonitor.nativeConditionWait(Lcom/sun/max/unsafe/Word;Lcom/sun/max/unsafe/Word;J)Z {MaxTargetMethod@0x3f9fa004b8} [0x3f9fa004b8+1256]
-> com.sun.max.vm.monitor.modal.sync.StandardJavaMonitor.monitorWait(J)V {MaxTargetMethod@0x3fa01ce550} [0x3fa01ce550+960]
-> com.sun.max.vm.monitor.modal.sync.ProxyAcquirableJavaMonitor.monitorWait(J)V {MaxTargetMethod@0x3fa01cdbe8} [0x3fa01cdbe8+208]
-> com.sun.max.vm.monitor.modal.modehandlers.inflated.InflatedMonitorModeHandler.monitorWait(Ljava/lang/Object;JLcom/sun/max/vm/monitor/modal/modehandlers/inflated/InflatedMonitorLockword;Lcom/sun/max/vm/monitor/modal/modehandlers/inflated/InflatedMonitorLockword;)V {MaxTargetMethod@0x3fa005dfe8} [0x3fa005dfe8+704]
-> com.sun.max.vm.monitor.modal.modehandlers.inflated.InflatedMonitorModeHandler$Delegate.delegateMonitorWait(Ljava/lang/Object;JLcom/sun/max/vm/monitor/modal/modehandlers/ModalLockword;)V {MaxTargetMethod@0x3f9fed1e70} [0x3f9fed1e70+684]
-> com.sun.max.vm.monitor.modal.modehandlers.lightweight.thin.ThinLockModeHandler.monitorWait(Ljava/lang/Object;JLcom/sun/max/vm/monitor/modal/modehandlers/ModalLockword;)V {MaxTargetMethod@0x3f9fd21468} [0x3f9fd21468+760]
-> com.sun.max.vm.monitor.modal.modehandlers.lightweight.thin.ThinLockModeHandler$FastPath.monitorWait(Ljava/lang/Object;J)V {MaxTargetMethod@0x3f9fbc7f48} [0x3f9fbc7f48+160]
-> java.lang.Object.wait(J)V {MaxTargetMethod@0x3f9fa55430} [0x3f9fa55430+120]
-> java.lang.ref.ReferenceQueue.remove(J)Ljava/lang/ref/Reference; {MaxTargetMethod@0x3f9fedff48} [0x3f9fedff48+800]
-> java.lang.ref.ReferenceQueue.remove()Ljava/lang/ref/Reference; {MaxTargetMethod@0x3f9fd32308} [0x3f9fd32308+116]
-> java.lang.ref.Finalizer$FinalizerThread.run()V {MaxTargetMethod@0x3f9fbd4ae0} [0x3f9fbd4ae0+684]
-> com.sun.max.vm.thread.VmThread.executeRunnable(Lcom/sun/max/vm/thread/VmThread;)V {MaxTargetMethod@0x3f9fb00a40} [0x3f9fb00a40+268]
-> com.sun.max.vm.thread.VmThread.run(Lcom/sun/max/unsafe/Pointer;Lcom/sun/max/unsafe/Pointer;Lcom/sun/max/unsafe/Pointer;)V {MaxTargetMethod@0x3f9f860938} [0x3f9f860938+2024]
-> native{./libjvm.so (0x3fdae13000) at thread_run (0x3fdae28abe+408)}
------ Thread locals for thread Finalizer[id=5] ------
SAFEPOINT_LATCH: {E} 0x1e653160 {D} 0x1e6532c8 {T} <trigger latch>
ETLA: {E} 0x1e653160 {D} 0x1e653160 {T} 0x1e653160
DTLA: {E} 0x1e6532c8 {D} 0x1e6532c8 {T} 0x1e6532c8
TTLA: {E} 0x1e652ff8 {D} 0x1e652ff8 {T} 0x1e652ff8
NATIVE_THREAD_LOCALS: {E} 0x1e653430 {D} 0x1e653430 {T} 0x1e653430
FORWARD_LINK: {E} 0x1e64d160 {D} 0x1e64d160 {T} 0x1e64d160
BACKWARD_LINK: {E} 0x1e659160 {D} 0x1e659160 {T} 0x1e659160
VM_OPERATION: {E} 0 {D} 0 {T} 0
ID: {E} 0x5 {D} 0x5 {T} 0x5
VM_THREAD: {E} 0x3f9b60d570 Finalizer[id=5] {D} 0x3f9b60d570 Finalizer[id=5] {T} 0x3f9b60d570 Finalizer[id=5]
JNI_ENV: {E} 0x3fdae31010 {D} 0x3fdae31010 {T} 0x3fdae31010
LAST_JAVA_FRAME_ANCHOR: {E} 0x3fbac0f2f0 {D} 0 {T} 0
MUTATOR_STATE: {E} 0 {D} 0 {T} 0
FROZEN: {E} 0 {D} 0 {T} 0
TRAP_NUMBER: {E} 0 {D} 0 {T} 0
TRAP_INSTRUCTION_POINTER: {E} 0 {D} 0 {T} 0
TRAP_FAULT_ADDRESS: {E} 0 {D} 0 {T} 0
TRAP_LATCH_REGISTER: {E} 0 {D} 0 {T} 0
HIGHEST_STACK_SLOT_ADDRESS: {E} 0x3fbac11000 {D} 0x3fbac11000 {T} 0x3fbac11000
LOWEST_STACK_SLOT_ADDRESS: {E} 0x3fbab13000 {D} 0x3fbab13000 {T} 0x3fbab13000
LOWEST_ACTIVE_STACK_SLOT_ADDRESS: {E} 0 {D} 0 {T} 0
STACK_REFERENCE_MAP: {E} 0x1e653480 {D} 0x1e653480 {T} 0x1e653480
STACK_REFERENCE_SIZE: {E} 0x3fc8 {D} 0x3fc8 {T} 0x3fc8
CUSTOM_ALLOCATION_ENABLED: {E} 0 {D} 0 {T} 0
SUSPEND: {E} 0 {D} 0 {T} 0
PROFILER_STATE: {E} 0 {D} 0 {T} 0
JVMTI: {E} 0 {D} 0 {T} 0
JVMTI_TL: {E} 0 {D} 0 {T} 0
COMPILATION: {E} 0x3f9eb15920 {D} 0x3f9eb15920 {T} 0x3f9eb15920
NATIVE_CALLS_DISABLED: {E} 0 {D} 0 {T} 0
ERROR_CONTEXTS: {E} 0x3f9eb15920 {D} 0x3f9eb15920 {T} 0x3f9eb15920
TRACE_UNDER_CONSTRUCTION: {E} 0x3f9eb15920 {D} 0x3f9eb15920 {T} 0x3f9eb15920
VMLOG_RECORD: {E} 0x3fbae33038 {D} 0x3fbae33038 {T} 0x3fbae33038
VMLOG_BUFFER: {E} 0x3f8c000b90 {D} 0x3f8c000b90 {T} 0x3f8c000b90
VMLOG_BUFFER_OFFSETS: {E} 0x18 {D} 0x18 {T} 0x18
GC_DISABLING_COUNT: {E} 0 {D} 0 {T} 0
TLAB_TOP: {E} 0x3fbae43000 {D} 0 {T} 0
TLAB_MARK: {E} 0x3fbae33058 {D} 0 {T} 0
TLAB_TOP_TMP: {E} 0 {D} 0 {T} 0
TLAB_MARK_TMP: {E} 0 {D} 0 {T} 0
ALLOCATION_COUNTER: {E} 0 {D} 0 {T} 0
TLAB_DISABLED: {E} 0 {D} 0 {T} 0
TLAB_REFILL_POLICY: {E} 0x3fbae33000 {D} 0 {T} 0
TLAB_LOG_TAIL: {E} 0 {D} 0 {T} 0
SAMPLING_ALLOCATION_COUNTER: {E} 0 {D} 0 {T} 0
------ Stack dump for thread Reference Handler[id=4] ------
-> com.sun.max.vm.runtime.OSMonitor.nativeConditionWait(Lcom/sun/max/unsafe/Word;Lcom/sun/max/unsafe/Word;J)Z {MaxTargetMethod@0x3f9fa004b8} [0x3f9fa004b8+1256]
-> com.sun.max.vm.monitor.modal.sync.StandardJavaMonitor.monitorWait(J)V {MaxTargetMethod@0x3fa01ce550} [0x3fa01ce550+960]
-> com.sun.max.vm.monitor.modal.modehandlers.inflated.InflatedMonitorModeHandler.monitorWait(Ljava/lang/Object;JLcom/sun/max/vm/monitor/modal/modehandlers/inflated/InflatedMonitorLockword;Lcom/sun/max/vm/monitor/modal/modehandlers/inflated/InflatedMonitorLockword;)V {MaxTargetMethod@0x3fa005dfe8} [0x3fa005dfe8+704]
-> com.sun.max.vm.monitor.modal.modehandlers.inflated.InflatedMonitorModeHandler$Delegate.delegateMonitorWait(Ljava/lang/Object;JLcom/sun/max/vm/monitor/modal/modehandlers/ModalLockword;)V {MaxTargetMethod@0x3f9fed1e70} [0x3f9fed1e70+684]
-> com.sun.max.vm.monitor.modal.modehandlers.lightweight.thin.ThinLockModeHandler.monitorWait(Ljava/lang/Object;JLcom/sun/max/vm/monitor/modal/modehandlers/ModalLockword;)V {MaxTargetMethod@0x3f9fd21468} [0x3f9fd21468+936]
-> com.sun.max.vm.monitor.modal.modehandlers.lightweight.thin.ThinLockModeHandler$FastPath.monitorWait(Ljava/lang/Object;J)V {MaxTargetMethod@0x3f9fbc7f48} [0x3f9fbc7f48+160]
-> java.lang.Object.wait(J)V {MaxTargetMethod@0x3f9fa55430} [0x3f9fa55430+120]
-> java.lang.ref.Reference.tryHandlePending(Z)Z {MaxTargetMethod@0x3f9fd2ccb8} [0x3f9fd2ccb8+988]
-> java.lang.ref.Reference$ReferenceHandler.run()V {MaxTargetMethod@0x3f9fbd15d8} [0x3f9fbd15d8+100]
-> com.sun.max.vm.thread.VmThread.executeRunnable(Lcom/sun/max/vm/thread/VmThread;)V {MaxTargetMethod@0x3f9fb00a40} [0x3f9fb00a40+268]
-> com.sun.max.vm.thread.VmThread.run(Lcom/sun/max/unsafe/Pointer;Lcom/sun/max/unsafe/Pointer;Lcom/sun/max/unsafe/Pointer;)V {MaxTargetMethod@0x3f9f860938} [0x3f9f860938+2024]
-> native{./libjvm.so (0x3fdae13000) at thread_run (0x3fdae28abe+408)}
------ Thread locals for thread Reference Handler[id=4] ------
SAFEPOINT_LATCH: {E} 0x1e64d160 {D} 0x1e64d2c8 {T} <trigger latch>
ETLA: {E} 0x1e64d160 {D} 0x1e64d160 {T} 0x1e64d160
DTLA: {E} 0x1e64d2c8 {D} 0x1e64d2c8 {T} 0x1e64d2c8
TTLA: {E} 0x1e64cff8 {D} 0x1e64cff8 {T} 0x1e64cff8
NATIVE_THREAD_LOCALS: {E} 0x1e64d430 {D} 0x1e64d430 {T} 0x1e64d430
FORWARD_LINK: {E} 0x1e647160 {D} 0x1e647160 {T} 0x1e647160
BACKWARD_LINK: {E} 0x1e653160 {D} 0x1e653160 {T} 0x1e653160
VM_OPERATION: {E} 0 {D} 0 {T} 0
ID: {E} 0x4 {D} 0x4 {T} 0x4
VM_THREAD: {E} 0x3f9ca6f978 Reference Handler[id=4] {D} 0x3f9ca6f978 Reference Handler[id=4] {T} 0x3f9ca6f978 Reference Handler[id=4]
JNI_ENV: {E} 0x3fdae31010 {D} 0x3fdae31010 {T} 0x3fdae31010
LAST_JAVA_FRAME_ANCHOR: {E} 0x3fbad103b0 {D} 0 {T} 0
MUTATOR_STATE: {E} 0 {D} 0 {T} 0
FROZEN: {E} 0 {D} 0 {T} 0
TRAP_NUMBER: {E} 0 {D} 0 {T} 0
TRAP_INSTRUCTION_POINTER: {E} 0 {D} 0 {T} 0
TRAP_FAULT_ADDRESS: {E} 0 {D} 0 {T} 0
TRAP_LATCH_REGISTER: {E} 0 {D} 0 {T} 0
HIGHEST_STACK_SLOT_ADDRESS: {E} 0x3fbad12000 {D} 0x3fbad12000 {T} 0x3fbad12000
LOWEST_STACK_SLOT_ADDRESS: {E} 0x3fbac14000 {D} 0x3fbac14000 {T} 0x3fbac14000
LOWEST_ACTIVE_STACK_SLOT_ADDRESS: {E} 0 {D} 0 {T} 0
STACK_REFERENCE_MAP: {E} 0x1e64d480 {D} 0x1e64d480 {T} 0x1e64d480
STACK_REFERENCE_SIZE: {E} 0x3fc8 {D} 0x3fc8 {T} 0x3fc8
CUSTOM_ALLOCATION_ENABLED: {E} 0 {D} 0 {T} 0
SUSPEND: {E} 0 {D} 0 {T} 0
PROFILER_STATE: {E} 0 {D} 0 {T} 0
JVMTI: {E} 0 {D} 0 {T} 0
JVMTI_TL: {E} 0 {D} 0 {T} 0
COMPILATION: {E} 0x3f9eb15920 {D} 0x3f9eb15920 {T} 0x3f9eb15920
NATIVE_CALLS_DISABLED: {E} 0 {D} 0 {T} 0
ERROR_CONTEXTS: {E} 0x3f9eb15920 {D} 0x3f9eb15920 {T} 0x3f9eb15920
TRACE_UNDER_CONSTRUCTION: {E} 0x3f9eb15920 {D} 0x3f9eb15920 {T} 0x3f9eb15920
VMLOG_RECORD: {E} 0x3fbae43038 {D} 0x3fbae43038 {T} 0x3fbae43038
VMLOG_BUFFER: {E} 0x3f94000b90 {D} 0x3f94000b90 {T} 0x3f94000b90
VMLOG_BUFFER_OFFSETS: {E} 0x18 {D} 0x18 {T} 0x18
GC_DISABLING_COUNT: {E} 0 {D} 0 {T} 0
TLAB_TOP: {E} 0x3fbae53000 {D} 0 {T} 0
TLAB_MARK: {E} 0x3fbae43058 {D} 0 {T} 0
TLAB_TOP_TMP: {E} 0 {D} 0 {T} 0
TLAB_MARK_TMP: {E} 0 {D} 0 {T} 0
ALLOCATION_COUNTER: {E} 0 {D} 0 {T} 0
TLAB_DISABLED: {E} 0 {D} 0 {T} 0
TLAB_REFILL_POLICY: {E} 0x3fbae43000 {D} 0 {T} 0
TLAB_LOG_TAIL: {E} 0 {D} 0 {T} 0
SAMPLING_ALLOCATION_COUNTER: {E} 0 {D} 0 {T} 0
------ Stack dump for thread VmOperationThread[id=2] ------
-> com.sun.max.vm.runtime.OSMonitor.nativeConditionWait(Lcom/sun/max/unsafe/Word;Lcom/sun/max/unsafe/Word;J)Z {MaxTargetMethod@0x3f9fa004b8} [0x3f9fa004b8+1256]
-> com.sun.max.vm.monitor.modal.sync.StandardJavaMonitor.monitorWait(J)V {MaxTargetMethod@0x3fa01ce550} [0x3fa01ce550+960]
-> com.sun.max.vm.monitor.modal.modehandlers.inflated.InflatedMonitorModeHandler.monitorWait(Ljava/lang/Object;JLcom/sun/max/vm/monitor/modal/modehandlers/inflated/InflatedMonitorLockword;Lcom/sun/max/vm/monitor/modal/modehandlers/inflated/InflatedMonitorLockword;)V {MaxTargetMethod@0x3fa005dfe8} [0x3fa005dfe8+704]
-> com.sun.max.vm.monitor.modal.modehandlers.inflated.InflatedMonitorModeHandler$Delegate.delegateMonitorWait(Ljava/lang/Object;JLcom/sun/max/vm/monitor/modal/modehandlers/ModalLockword;)V {MaxTargetMethod@0x3f9fed1e70} [0x3f9fed1e70+684]
-> com.sun.max.vm.monitor.modal.modehandlers.lightweight.thin.ThinLockModeHandler.monitorWait(Ljava/lang/Object;JLcom/sun/max/vm/monitor/modal/modehandlers/ModalLockword;)V {MaxTargetMethod@0x3f9fd21468} [0x3f9fd21468+936]
-> com.sun.max.vm.monitor.modal.modehandlers.lightweight.thin.ThinLockModeHandler$FastPath.monitorWait(Ljava/lang/Object;J)V {MaxTargetMethod@0x3f9fbc7f48} [0x3f9fbc7f48+160]
-> java.lang.Object.wait(J)V {MaxTargetMethod@0x3f9fa55430} [0x3f9fa55430+120]
-> com.sun.max.vm.runtime.VmOperationThread.run()V {MaxTargetMethod@0x3f9fbd7510} [0x3f9fbd7510+740]
-> com.sun.max.vm.thread.VmThread.executeRunnable(Lcom/sun/max/vm/thread/VmThread;)V {MaxTargetMethod@0x3f9fb00a40} [0x3f9fb00a40+268]
-> com.sun.max.vm.thread.VmThread.run(Lcom/sun/max/unsafe/Pointer;Lcom/sun/max/unsafe/Pointer;Lcom/sun/max/unsafe/Pointer;)V {MaxTargetMethod@0x3f9f860938} [0x3f9f860938+2024]
-> native{./libjvm.so (0x3fdae13000) at thread_run (0x3fdae28abe+408)}
------ Thread locals for thread VmOperationThread[id=2] ------
SAFEPOINT_LATCH: {E} 0x1e647160 {D} 0x1e6472c8 {T} <trigger latch>
ETLA: {E} 0x1e647160 {D} 0x1e647160 {T} 0x1e647160
DTLA: {E} 0x1e6472c8 {D} 0x1e6472c8 {T} 0x1e6472c8
TTLA: {E} 0x1e646ff8 {D} 0x1e646ff8 {T} 0x1e646ff8
NATIVE_THREAD_LOCALS: {E} 0x1e647430 {D} 0x1e647430 {T} 0x1e647430
FORWARD_LINK: {E} 0x1e624160 {D} 0x1e624160 {T} 0x1e624160
BACKWARD_LINK: {E} 0x1e64d160 {D} 0x1e64d160 {T} 0x1e64d160
VM_OPERATION: {E} 0 {D} 0 {T} 0
ID: {E} 0x2 {D} 0x2 {T} 0x2
VM_THREAD: {E} 0x3f9bba2be8 VmOperationThread[id=2] {D} 0x3f9bba2be8 VmOperationThread[id=2] {T} 0x3f9bba2be8 VmOperationThread[id=2]
JNI_ENV: {E} 0x3fdae31010 {D} 0x3fdae31010 {T} 0x3fdae31010
LAST_JAVA_FRAME_ANCHOR: {E} 0x3fbae112d0 {D} 0 {T} 0
MUTATOR_STATE: {E} 0 {D} 0 {T} 0
FROZEN: {E} 0 {D} 0 {T} 0
TRAP_NUMBER: {E} 0 {D} 0 {T} 0
TRAP_INSTRUCTION_POINTER: {E} 0 {D} 0 {T} 0
TRAP_FAULT_ADDRESS: {E} 0 {D} 0 {T} 0
TRAP_LATCH_REGISTER: {E} 0 {D} 0 {T} 0
HIGHEST_STACK_SLOT_ADDRESS: {E} 0x3fbae13000 {D} 0x3fbae13000 {T} 0x3fbae13000
LOWEST_STACK_SLOT_ADDRESS: {E} 0x3fbad15000 {D} 0x3fbad15000 {T} 0x3fbad15000
LOWEST_ACTIVE_STACK_SLOT_ADDRESS: {E} 0 {D} 0 {T} 0
STACK_REFERENCE_MAP: {E} 0x1e647480 {D} 0x1e647480 {T} 0x1e647480
STACK_REFERENCE_SIZE: {E} 0x3fc8 {D} 0x3fc8 {T} 0x3fc8
CUSTOM_ALLOCATION_ENABLED: {E} 0 {D} 0 {T} 0
SUSPEND: {E} 0 {D} 0 {T} 0
PROFILER_STATE: {E} 0 {D} 0 {T} 0
JVMTI: {E} 0 {D} 0 {T} 0
JVMTI_TL: {E} 0 {D} 0 {T} 0
COMPILATION: {E} 0x3f9eb15920 {D} 0x3f9eb15920 {T} 0x3f9eb15920
NATIVE_CALLS_DISABLED: {E} 0 {D} 0 {T} 0
ERROR_CONTEXTS: {E} 0x3f9eb15920 {D} 0x3f9eb15920 {T} 0x3f9eb15920
TRACE_UNDER_CONSTRUCTION: {E} 0x3f9eb15920 {D} 0x3f9eb15920 {T} 0x3f9eb15920
VMLOG_RECORD: {E} 0x3fbae23038 {D} 0x3fbae23038 {T} 0x3fbae23038
VMLOG_BUFFER: {E} 0x3fb4000b90 {D} 0x3fb4000b90 {T} 0x3fb4000b90
VMLOG_BUFFER_OFFSETS: {E} 0x30 {D} 0x30 {T} 0x30
GC_DISABLING_COUNT: {E} 0 {D} 0 {T} 0
TLAB_TOP: {E} 0x3fbae33000 {D} 0 {T} 0
TLAB_MARK: {E} 0x3fbae23058 {D} 0 {T} 0
TLAB_TOP_TMP: {E} 0 {D} 0 {T} 0
TLAB_MARK_TMP: {E} 0 {D} 0 {T} 0
ALLOCATION_COUNTER: {E} 0 {D} 0 {T} 0
TLAB_DISABLED: {E} 0 {D} 0 {T} 0
TLAB_REFILL_POLICY: {E} 0x3fbae23000 {D} 0 {T} 0
TLAB_LOG_TAIL: {E} 0 {D} 0 {T} 0
SAMPLING_ALLOCATION_COUNTER: {E} 0 {D} 0 {T} 0
**
/root/maxine-src/mx/java/com.oracle.mxtool.junit/src/com/oracle/mxtool/junit/FullThreadDumpDecorator.java:83: error: cannot find symbol
ti.getPriority(),
^
symbol: method getPriority()
location: variable ti of type ThreadInfo
/root/maxine-src/mx/java/com.oracle.mxtool.junit/src/com/oracle/mxtool/junit/FullThreadDumpDecorator.java:82: error: cannot find symbol
ti.isDaemon() ? "daemon" : "",
^
symbol: method isDaemon()
location: variable ti of type ThreadInfo
2 errors
Compiling com.oracle.mxtool.junit with javac-daemon(JDK 1.8): Failed due to error: 1
Compiling com.oracle.mxtool.junit with javac-daemon(JDK 1.8) failed
1 build tasks failed
**
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.