-
Bug
-
Resolution: Fixed
-
P2
-
24
-
None
-
b24
-
Verified
All FFM benchmark that depend on Unsafe fail with:
java.lang.IllegalAccessError: class org.openjdk.bench.java.lang.foreign.Utils (in unnamed module @0x7ab2bfe1) cannot access class jdk.internal.misc.Unsafe (in module java.base) because module java.base does not export jdk.internal.misc to unnamed module @0x7ab2bfe1
at org.openjdk.bench.java.lang.foreign.Utils.<clinit>(Utils.java:36)
at org.openjdk.bench.java.lang.foreign.LoopOverRandom.<clinit>(LoopOverRandom.java:57)
at org.openjdk.bench.java.lang.foreign.jmh_generated.LoopOverRandom_unsafe_loop_jmhTest._jmh_tryInit_f_loopoverrandom0_0(LoopOverRandom_unsafe_loop_jmhTest.java:337)
at org.openjdk.bench.java.lang.foreign.jmh_generated.LoopOverRandom_unsafe_loop_jmhTest.unsafe_loop_AverageTime(LoopOverRandom_unsafe_loop_jmhTest.java:139)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
at java.base/java.lang.reflect.Method.invoke(Method.java:567)
at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475)
at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:328)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:328)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
at java.base/java.lang.Thread.run(Thread.java:1576)
This has been caused byJDK-8332744. That fix replaced sun.misc.Unsafe with jdk.internal.Unsafe, but forgot to export the internal Unsafe package to ALL-UNNAMED.
java.lang.IllegalAccessError: class org.openjdk.bench.java.lang.foreign.Utils (in unnamed module @0x7ab2bfe1) cannot access class jdk.internal.misc.Unsafe (in module java.base) because module java.base does not export jdk.internal.misc to unnamed module @0x7ab2bfe1
at org.openjdk.bench.java.lang.foreign.Utils.<clinit>(Utils.java:36)
at org.openjdk.bench.java.lang.foreign.LoopOverRandom.<clinit>(LoopOverRandom.java:57)
at org.openjdk.bench.java.lang.foreign.jmh_generated.LoopOverRandom_unsafe_loop_jmhTest._jmh_tryInit_f_loopoverrandom0_0(LoopOverRandom_unsafe_loop_jmhTest.java:337)
at org.openjdk.bench.java.lang.foreign.jmh_generated.LoopOverRandom_unsafe_loop_jmhTest.unsafe_loop_AverageTime(LoopOverRandom_unsafe_loop_jmhTest.java:139)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
at java.base/java.lang.reflect.Method.invoke(Method.java:567)
at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:475)
at org.openjdk.jmh.runner.BenchmarkHandler$BenchmarkTask.call(BenchmarkHandler.java:458)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:328)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:572)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:328)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1144)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:642)
at java.base/java.lang.Thread.run(Thread.java:1576)
This has been caused by
- relates to
-
JDK-8343770 Build fails due to use of sun.misc.Unsafe in LoopOverRandom
-
- Closed
-
-
JDK-8349238 Some more FFM benchmarks are broken
-
- Resolved
-
- links to
-
Commit(master) openjdk/jdk/d0077eec
-
Review(master) openjdk/jdk/21963