mmtk / mmtk-core

Memory Management ToolKit
https://www.mmtk.io
Other
378 stars 69 forks source link

DacapoChopin zxing failed when running with SemiSpace #420

Open xinyu-zheng opened 3 years ago

xinyu-zheng commented 3 years ago

binding: 648bb27f4bb5c84a83f74fda1d699514548cf663 mmtk-core: d2324cff01438e8c2911c00e1c3c2e691b90471b

After running

MMTK_THREADS=1 MMTK_PLAN=SemiSpace /home/xinyuz/mmtk/mmtk-openjdk/repos/openjdk/build-with-sync-d2324cf-648bb27/linux-x86_64-normal-server-release/jdk/bin/java -XX:MetaspaceSize=500M -XX:+DisableExplicitGC -server -XX:-TieredCompilation -Xcomp -XX:+UseThirdPartyHeap -Djava.library.path=/home/xinyuz/probes -Dprobes=RustMMTk -Xms576M -Xmx576M -cp /usr/share/benchmarks/dacapo/dacapo-evaluation-git-69a704e.jar:/home/xinyuz/probes:/home/xinyuz/probes/probes.jar Harness -c probe.DacapoChopinCallback -n 5 zxing

I got

--------------------------------------------------------------------------------
IMPORTANT NOTICE:  This is NOT a release build of the DaCapo suite.
Since it is not an official release of the DaCapo suite, care must be taken when
using the suite, and any use of the build must be sure to note that it is not an
offical release, and should note the relevant git hash.

Feedback is greatly appreciated.   The preferred mode of feedback is via github.
Please use our github page to create an issue or a pull request.
    https://github.com/dacapobench/dacapobench.
--------------------------------------------------------------------------------

Using scaled threading model. 24 processors detected, 24 threads used to drive the workload, in a possible range of [1,unlimited]
===== DaCapo evaluation-git-69a704e zxing starting warmup 1 =====
java.lang.reflect.InvocationTargetException
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:566)
    at org.dacapo.harness.Zxing.iterate(Zxing.java:44)
    at org.dacapo.harness.Benchmark.run(Benchmark.java:216)
    at org.dacapo.harness.TestHarness.runBenchmark(TestHarness.java:225)
    at org.dacapo.harness.TestHarness.main(TestHarness.java:170)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:566)
    at Harness.main(Unknown Source)
Caused by: java.util.concurrent.ExecutionException: java.lang.IllegalArgumentException
    at java.base/java.util.concurrent.FutureTask.report(FutureTask.java:122)
    at java.base/java.util.concurrent.FutureTask.get(FutureTask.java:191)
    at com.google.zxing.client.j2se.CommandLineRunner.main(CommandLineRunner.java:96)
    ... 13 more
Caused by: java.lang.IllegalArgumentException
    at com.google.zxing.common.BitArray.isRange(BitArray.java:193)
    at com.google.zxing.oned.UPCEANReader.findStartGuardPattern(UPCEANReader.java:122)
    at com.google.zxing.oned.MultiFormatUPCEANReader.decodeRow(MultiFormatUPCEANReader.java:76)
    at com.google.zxing.oned.MultiFormatOneDReader.decodeRow(MultiFormatOneDReader.java:98)
    at com.google.zxing.oned.OneDReader.doDecode(OneDReader.java:155)
    at com.google.zxing.oned.OneDReader.decode(OneDReader.java:59)
    at com.google.zxing.MultiFormatReader.decodeInternal(MultiFormatReader.java:173)
    at com.google.zxing.MultiFormatReader.decode(MultiFormatReader.java:71)
    at com.google.zxing.client.j2se.DecodeWorker.decode(DecodeWorker.java:148)
    at com.google.zxing.client.j2se.DecodeWorker.call(DecodeWorker.java:76)
    at com.google.zxing.client.j2se.DecodeWorker.call(DecodeWorker.java:56)
    at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
    at java.base/java.lang.Thread.run(Thread.java:829)
Digest validation failed for stdout.log, expecting 0x5ba0fbb5c278f7344ad9c9d153a323f6b6eda10c found 0xda39a3ee5e6b4b0d3255bfef95601890afd80709
Digest validation failed for stderr.log, expecting 0xda39a3ee5e6b4b0d3255bfef95601890afd80709 found 0x3c11277a27db939d6885f6da70bfcf741bd4414d
===== DaCapo evaluation-git-69a704e zxing FAILED warmup =====
===== DaCapo evaluation-git-69a704e zxing starting warmup 2 =====
java.lang.reflect.InvocationTargetException
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:566)
    at org.dacapo.harness.Zxing.iterate(Zxing.java:44)
    at org.dacapo.harness.Benchmark.run(Benchmark.java:216)
    at org.dacapo.harness.TestHarness.runBenchmark(TestHarness.java:225)
    at org.dacapo.harness.TestHarness.main(TestHarness.java:170)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:566)
    at Harness.main(Unknown Source)
Caused by: java.util.concurrent.ExecutionException: java.lang.IllegalArgumentException
    at java.base/java.util.concurrent.FutureTask.report(FutureTask.java:122)
    at java.base/java.util.concurrent.FutureTask.get(FutureTask.java:191)
    at com.google.zxing.client.j2se.CommandLineRunner.main(CommandLineRunner.java:96)
    ... 13 more
Caused by: java.lang.IllegalArgumentException
    at com.google.zxing.common.BitArray.isRange(BitArray.java:193)
    at com.google.zxing.oned.UPCEANReader.findStartGuardPattern(UPCEANReader.java:122)
    at com.google.zxing.oned.MultiFormatUPCEANReader.decodeRow(MultiFormatUPCEANReader.java:76)
    at com.google.zxing.oned.MultiFormatOneDReader.decodeRow(MultiFormatOneDReader.java:98)
    at com.google.zxing.oned.OneDReader.doDecode(OneDReader.java:155)
    at com.google.zxing.oned.OneDReader.decode(OneDReader.java:59)
    at com.google.zxing.MultiFormatReader.decodeInternal(MultiFormatReader.java:173)
    at com.google.zxing.MultiFormatReader.decode(MultiFormatReader.java:71)
    at com.google.zxing.client.j2se.DecodeWorker.decode(DecodeWorker.java:148)
    at com.google.zxing.client.j2se.DecodeWorker.call(DecodeWorker.java:76)
    at com.google.zxing.client.j2se.DecodeWorker.call(DecodeWorker.java:56)
    at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
    at java.base/java.lang.Thread.run(Thread.java:829)
Digest validation failed for stdout.log, expecting 0x5ba0fbb5c278f7344ad9c9d153a323f6b6eda10c found 0xda39a3ee5e6b4b0d3255bfef95601890afd80709
Digest validation failed for stderr.log, expecting 0xda39a3ee5e6b4b0d3255bfef95601890afd80709 found 0x3c11277a27db939d6885f6da70bfcf741bd4414d
===== DaCapo evaluation-git-69a704e zxing FAILED warmup =====
===== DaCapo evaluation-git-69a704e zxing starting warmup 3 =====
java.lang.reflect.InvocationTargetException
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:566)
    at org.dacapo.harness.Zxing.iterate(Zxing.java:44)
    at org.dacapo.harness.Benchmark.run(Benchmark.java:216)
    at org.dacapo.harness.TestHarness.runBenchmark(TestHarness.java:225)
    at org.dacapo.harness.TestHarness.main(TestHarness.java:170)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:566)
    at Harness.main(Unknown Source)
Caused by: java.util.concurrent.ExecutionException: java.lang.IllegalArgumentException
    at java.base/java.util.concurrent.FutureTask.report(FutureTask.java:122)
    at java.base/java.util.concurrent.FutureTask.get(FutureTask.java:191)
    at com.google.zxing.client.j2se.CommandLineRunner.main(CommandLineRunner.java:96)
    ... 13 more
Caused by: java.lang.IllegalArgumentException
    at com.google.zxing.common.BitArray.isRange(BitArray.java:193)
    at com.google.zxing.oned.UPCEANReader.findStartGuardPattern(UPCEANReader.java:122)
    at com.google.zxing.oned.MultiFormatUPCEANReader.decodeRow(MultiFormatUPCEANReader.java:76)
    at com.google.zxing.oned.MultiFormatOneDReader.decodeRow(MultiFormatOneDReader.java:98)
    at com.google.zxing.oned.OneDReader.doDecode(OneDReader.java:155)
    at com.google.zxing.oned.OneDReader.decode(OneDReader.java:59)
    at com.google.zxing.MultiFormatReader.decodeInternal(MultiFormatReader.java:173)
    at com.google.zxing.MultiFormatReader.decode(MultiFormatReader.java:71)
    at com.google.zxing.client.j2se.DecodeWorker.decode(DecodeWorker.java:148)
    at com.google.zxing.client.j2se.DecodeWorker.call(DecodeWorker.java:76)
    at com.google.zxing.client.j2se.DecodeWorker.call(DecodeWorker.java:56)
    at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
    at java.base/java.lang.Thread.run(Thread.java:829)
Digest validation failed for stdout.log, expecting 0x5ba0fbb5c278f7344ad9c9d153a323f6b6eda10c found 0xda39a3ee5e6b4b0d3255bfef95601890afd80709
Digest validation failed for stderr.log, expecting 0xda39a3ee5e6b4b0d3255bfef95601890afd80709 found 0x3c11277a27db939d6885f6da70bfcf741bd4414d
===== DaCapo evaluation-git-69a704e zxing FAILED warmup =====
===== DaCapo evaluation-git-69a704e zxing starting warmup 4 =====
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGSEGV (0xb) at pc=0x00007ff5f00f4c6e, pid=17108, tid=17264
#
# JRE version: OpenJDK Runtime Environment (11.0.11) (build 11.0.11-internal+0-adhoc.xinyuz.openjdk)
# Java VM: OpenJDK 64-Bit Server VM (11.0.11-internal+0-adhoc.xinyuz.openjdk, compiled mode, third-party gc, linux-amd64)
# Problematic frame:
# V  [libjvm.so+0x480c6e]  BiasedLocking::revoke_and_rebias(Handle, bool, Thread*)+0x1e
#
# Core dump will be written. Default location: Core dumps may be processed with "/usr/share/apport/apport %p %s %c %d %P %E" (or dumping to /home/xinyuz/core.17108)
#
# An error report file with more information is saved as:
# /home/xinyuz/hs_err_pid17108.log
[thread 17260 also had an error][thread 17268 also had an error][thread 17249 also had an error][thread 17263 also had an error][thread 17266 also had an error][thread 17265 also had an error][thread 17245 also had an error][thread 17258 also had an error][thread 17246 also had an error][thread 17251 also had an error][thread 17262 also had an error][thread 17261 also had an error][thread 17248 also had an error]
[thread 17255 also had an error]

#
# If you would like to submit a bug report, please visit:
#   https://bugreport.java.com/bugreport/crash.jsp
#
Aborted (core dumped)
caizixian commented 3 years ago

I can't reproduce the exact problem but did observe a crash.

Core revision: dbf03163

OpenJDK binding revision: https://github.com/mmtk/mmtk-openjdk/commit/648bb27f4bb5c84a83f74fda1d699514548cf663

MMTK_PLAN=SemiSpace ./core-dbf03163-openjdk-648bb27f/jdk/bin/java -XX:MetaspaceSize=500M -XX:+DisableExplicitGC -server -XX:-TieredCompilation -Xcomp -XX:+UseThirdPartyHeap -Djava.library.path=/home/zixianc/MMTk-Dev/evaluation/probes -Dprobes=RustMMTk -Xms576M -Xmx576M -cp /usr/share/benchmarks/dacapo/dacapo-evaluation-git-69a704e.jar:/home/zixianc/MMTk-Dev/evaluation/probes:/home/zixianc/MMTk-Dev/evaluation/probes/probes.jar Harness -c probe.DacapoChopinCallback -n 5 zxing

--------------------------------------------------------------------------------
IMPORTANT NOTICE:  This is NOT a release build of the DaCapo suite.
Since it is not an official release of the DaCapo suite, care must be taken when
using the suite, and any use of the build must be sure to note that it is not an
offical release, and should note the relevant git hash.

Feedback is greatly appreciated.   The preferred mode of feedback is via github.
Please use our github page to create an issue or a pull request.
    https://github.com/dacapobench/dacapobench.
--------------------------------------------------------------------------------

Using scaled threading model. 24 processors detected, 24 threads used to drive the workload, in a possible range of [1,unlimited]
===== DaCapo evaluation-git-69a704e zxing starting warmup 1 =====

Decoded 945 files out of 1225 successfully (77%)

Digest validation failed for stdout.log, expecting 0x5ba0fbb5c278f7344ad9c9d153a323f6b6eda10c found 0x61868d14dec37ee787d3939148352808f0d561f0
===== DaCapo evaluation-git-69a704e zxing FAILED warmup =====
===== DaCapo evaluation-git-69a704e zxing starting warmup 2 =====

Decoded 935 files out of 1225 successfully (76%)

Digest validation failed for stdout.log, expecting 0x5ba0fbb5c278f7344ad9c9d153a323f6b6eda10c found 0x2385bcacc99d7c2150e927c06295faabcb7b7053
===== DaCapo evaluation-git-69a704e zxing FAILED warmup =====
===== DaCapo evaluation-git-69a704e zxing starting warmup 3 =====

Decoded 929 files out of 1225 successfully (75%)

Digest validation failed for stdout.log, expecting 0x5ba0fbb5c278f7344ad9c9d153a323f6b6eda10c found 0x4aa69f13044f05c68f146a15d2bb08c5db4d8c81
===== DaCapo evaluation-git-69a704e zxing FAILED warmup =====
===== DaCapo evaluation-git-69a704e zxing starting warmup 4 =====

Decoded 927 files out of 1225 successfully (75%)

Digest validation failed for stdout.log, expecting 0x5ba0fbb5c278f7344ad9c9d153a323f6b6eda10c found 0x6633c74f24d9062663064f67646579f6a9c50673
===== DaCapo evaluation-git-69a704e zxing FAILED warmup =====
===== DaCapo evaluation-git-69a704e zxing starting =====
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGSEGV (0xb) at pc=0x00007f69672b89f6, pid=6086, tid=6108
#
# JRE version: OpenJDK Runtime Environment (11.0.11) (build 11.0.11-internal+0-adhoc.zixianc.openjdk)
# Java VM: OpenJDK 64-Bit Server VM (11.0.11-internal+0-adhoc.zixianc.openjdk, compiled mode, third-party gc, linux-amd64)
# Problematic frame:
# V  [libjvm.so+0xbe99f6]  mmtk_get_object_size(void*)+0x16
#
# Core dump will be written. Default location: Core dumps may be processed with "/usr/share/apport/apport %p %s %c %d %P %E" (or dumping to /home/zixianc/MMTk-Dev/evaluation/build/core.6086)
#
# An error report file with more information is saved as:
# /home/zixianc/MMTk-Dev/evaluation/build/hs_err_pid6086.log
#
# If you would like to submit a bug report, please visit:
#   https://bugreport.java.com/bugreport/crash.jsp
#
caizixian commented 3 years ago

I tried with one GC threads as well.

MMTK_THREADS=1 MMTK_PLAN=SemiSpace ./core-dbf03163-openjdk-648bb27f/jdk/bin/java -XX:MetaspaceSize=500M -XX:+DisableExplicitGC -server -XX:-TieredCompilation -Xcomp -XX:+UseThirdPartyHeap -Djava.library.path=/home/zixianc/MMTk-Dev/evaluation/probes -Dprobes=RustMMTk -Xms576M -Xmx576M -cp /usr/share/benchmarks/dacapo/dacapo-evaluation-git-69a704e.jar:/home/zixianc/MMTk-Dev/evaluation/probes:/home/zixianc/MMTk-Dev/evaluation/probes/probes.jar Harness -c probe.DacapoChopinCallback -n 5 zxing
--------------------------------------------------------------------------------
IMPORTANT NOTICE:  This is NOT a release build of the DaCapo suite.
Since it is not an official release of the DaCapo suite, care must be taken when
using the suite, and any use of the build must be sure to note that it is not an
offical release, and should note the relevant git hash.

Feedback is greatly appreciated.   The preferred mode of feedback is via github.
Please use our github page to create an issue or a pull request.
    https://github.com/dacapobench/dacapobench.
--------------------------------------------------------------------------------

Using scaled threading model. 24 processors detected, 24 threads used to drive the workload, in a possible range of [1,unlimited]
===== DaCapo evaluation-git-69a704e zxing starting warmup 1 =====

Decoded 943 files out of 1225 successfully (76%)

Digest validation failed for stdout.log, expecting 0x5ba0fbb5c278f7344ad9c9d153a323f6b6eda10c found 0x85db0f12828559cd72cb71642495214f05edd546
===== DaCapo evaluation-git-69a704e zxing FAILED warmup =====
===== DaCapo evaluation-git-69a704e zxing starting warmup 2 =====

Decoded 938 files out of 1225 successfully (76%)

Digest validation failed for stdout.log, expecting 0x5ba0fbb5c278f7344ad9c9d153a323f6b6eda10c found 0x254852f1ac8874bf2cf93d0ff4668bda153690ab
===== DaCapo evaluation-git-69a704e zxing FAILED warmup =====
===== DaCapo evaluation-git-69a704e zxing starting warmup 3 =====

Decoded 927 files out of 1225 successfully (75%)

Digest validation failed for stdout.log, expecting 0x5ba0fbb5c278f7344ad9c9d153a323f6b6eda10c found 0x6633c74f24d9062663064f67646579f6a9c50673
===== DaCapo evaluation-git-69a704e zxing FAILED warmup =====
===== DaCapo evaluation-git-69a704e zxing starting warmup 4 =====

Decoded 923 files out of 1225 successfully (75%)

Digest validation failed for stdout.log, expecting 0x5ba0fbb5c278f7344ad9c9d153a323f6b6eda10c found 0xf77b128891aa33d4e9f125e988096af03e3482b4
===== DaCapo evaluation-git-69a704e zxing FAILED warmup =====
===== DaCapo evaluation-git-69a704e zxing starting =====
java.lang.reflect.InvocationTargetException
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:566)
    at org.dacapo.harness.Zxing.iterate(Zxing.java:44)
    at org.dacapo.harness.Benchmark.run(Benchmark.java:216)
    at org.dacapo.harness.TestHarness.runBenchmark(TestHarness.java:225)
    at org.dacapo.harness.TestHarness.main(TestHarness.java:170)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:566)
    at Harness.main(Unknown Source)
Caused by: java.util.concurrent.ExecutionException: java.lang.IllegalArgumentException
    at java.base/java.util.concurrent.FutureTask.report(FutureTask.java:122)
    at java.base/java.util.concurrent.FutureTask.get(FutureTask.java:191)
    at com.google.zxing.client.j2se.CommandLineRunner.main(CommandLineRunner.java:96)
    ... 13 more
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGSEGV (0xb) at pc=0x00007f46a8e17b58, pid=7478, tid=7706
#
# JRE version: OpenJDK Runtime Environment (11.0.11) (build 11.0.11-internal+0-adhoc.zixianc.openjdk)
# Java VM: OpenJDK 64-Bit Server VM (11.0.11-internal+0-adhoc.zixianc.openjdk, compiled mode, third-party gc, linux-amd64)
# Problematic frame:
# V  [libjvm.so+0xa8bb58][thread 7703 also had an error][thread 7698 also had an error][thread 7697 also had an error][thread 7694 also had an error][thread 7705 also had an error][thread 7693 also had an error][thread 7695 also had an error][thread 7701 also had an error][thread 7691 also had an error]
[thread 7704 also had an error]

  LinkResolver::runtime_resolve_interface_method(CallInfo&, methodHandle const&, Klass*, Handle, Klass*, bool, Thread*)+0x48

#
# Core dump will be written. Default location: Core dumps may be processed with "/usr/share/apport/apport %p %s %c %d %P %E" (or dumping to /home/zixianc/MMTk-Dev/evaluation/build/core.7478)
#
# An error report file with more information is saved as:
# /home/zixianc/MMTk-Dev/evaluation/build/hs_err_pid7478.log
[thread 7699 also had an error]
#
# If you would like to submit a bug report, please visit:
#   https://bugreport.java.com/bugreport/crash.jsp
#
fish: Job 1, 'MMTK_THREADS=1 MMTK_PLAN=SemiSp…' terminated by signal SIGABRT (Abort)
caizixian commented 3 years ago

I managed to reproduce the OP in a particular invocation. The bug appears to be nondeterministic. Suspect heap corruption due to different error messages observed in each invocation.

MMTK_THREADS=1 MMTK_PLAN=SemiSpace ./core-dbf03163-openjdk-648bb27f/jdk/bin/java -XX:MetaspaceSize=500M -XX:+DisableExplicitGC -server -XX:-TieredCompilation -Xcomp -XX:+UseThirdPartyHeap -Djava.library.path=/home/zixianc/MMTk-Dev/evaluation/probes -Dprobes=RustMMTk -Xms576M -Xmx576M -cp /usr/share/benchmarks/dacapo/dacapo-evaluation-git-69a704e.jar:/home/zixianc/MMTk-Dev/evaluation/probes:/home/zixianc/MMTk-Dev/evaluation/probes/probes.jar Harness -c probe.DacapoChopinCallback -n 5 zxing
--------------------------------------------------------------------------------
IMPORTANT NOTICE:  This is NOT a release build of the DaCapo suite.
Since it is not an official release of the DaCapo suite, care must be taken when
using the suite, and any use of the build must be sure to note that it is not an
offical release, and should note the relevant git hash.

Feedback is greatly appreciated.   The preferred mode of feedback is via github.
Please use our github page to create an issue or a pull request.
    https://github.com/dacapobench/dacapobench.
--------------------------------------------------------------------------------

Using scaled threading model. 24 processors detected, 24 threads used to drive the workload, in a possible range of [1,unlimited]
===== DaCapo evaluation-git-69a704e zxing starting warmup 1 =====

Decoded 944 files out of 1225 successfully (77%)

Digest validation failed for stdout.log, expecting 0x5ba0fbb5c278f7344ad9c9d153a323f6b6eda10c found 0x6f0d6787e28db2ee8d0a232d6fc93daa3741974c
===== DaCapo evaluation-git-69a704e zxing FAILED warmup =====
===== DaCapo evaluation-git-69a704e zxing starting warmup 2 =====

Decoded 931 files out of 1225 successfully (76%)

Digest validation failed for stdout.log, expecting 0x5ba0fbb5c278f7344ad9c9d153a323f6b6eda10c found 0x15ef3c73b8edfe4f64457e32f5400f88810981ee
===== DaCapo evaluation-git-69a704e zxing FAILED warmup =====
===== DaCapo evaluation-git-69a704e zxing starting warmup 3 =====

Decoded 924 files out of 1225 successfully (75%)

Digest validation failed for stdout.log, expecting 0x5ba0fbb5c278f7344ad9c9d153a323f6b6eda10c found 0x78847564b8b0bdcadd655d196d74ce2b282da605
===== DaCapo evaluation-git-69a704e zxing FAILED warmup =====
===== DaCapo evaluation-git-69a704e zxing starting warmup 4 =====
java.lang.reflect.InvocationTargetException
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:566)
    at org.dacapo.harness.Zxing.iterate(Zxing.java:44)
    at org.dacapo.harness.Benchmark.run(Benchmark.java:216)
    at org.dacapo.harness.TestHarness.runBenchmark(TestHarness.java:225)
    at org.dacapo.harness.TestHarness.main(TestHarness.java:170)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.base/java.lang.reflect.Method.invoke(Method.java:566)
    at Harness.main(Unknown Source)
Caused by: java.util.concurrent.ExecutionException: java.lang.IllegalArgumentException
    at java.base/java.util.concurrent.FutureTask.report(FutureTask.java:122)
    at java.base/java.util.concurrent.FutureTask.get(FutureTask.java:191)
    at com.google.zxing.client.j2se.CommandLineRunner.main(CommandLineRunner.java:96)
    ... 13 more
Caused by: java.lang.IllegalArgumentException
    at com.google.zxing.common.BitArray.isRange(BitArray.java:193)
    at com.google.zxing.oned.UPCEANReader.findStartGuardPattern(UPCEANReader.java:122)
    at com.google.zxing.oned.MultiFormatUPCEANReader.decodeRow(MultiFormatUPCEANReader.java:76)
    at com.google.zxing.oned.MultiFormatOneDReader.decodeRow(MultiFormatOneDReader.java:98)
    at com.google.zxing.oned.OneDReader.doDecode(OneDReader.java:155)
    at com.google.zxing.oned.OneDReader.decode(OneDReader.java:54)
    at com.google.zxing.MultiFormatReader.decodeInternal(MultiFormatReader.java:173)
    at com.google.zxing.MultiFormatReader.decode(MultiFormatReader.java:71)
    at com.google.zxing.client.j2se.DecodeWorker.decode(DecodeWorker.java:148)
    at com.google.zxing.client.j2se.DecodeWorker.call(DecodeWorker.java:76)
    at com.google.zxing.client.j2se.DecodeWorker.call(DecodeWorker.java:56)
    at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
    at java.base/java.lang.Thread.run(Thread.java:829)
Digest validation failed for stdout.log, expecting 0x5ba0fbb5c278f7344ad9c9d153a323f6b6eda10c found 0xda39a3ee5e6b4b0d3255bfef95601890afd80709
Digest validation failed for stderr.log, expecting 0xda39a3ee5e6b4b0d3255bfef95601890afd80709 found 0x92e819470873721a541be688d862730babae84d5
===== DaCapo evaluation-git-69a704e zxing FAILED warmup =====
===== DaCapo evaluation-git-69a704e zxing starting =====
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGSEGV (0xb) at pc=0x00007f1a9a932c6e, pid=7965, tid=8189
#
# JRE version: OpenJDK Runtime Environment (11.0.11) (build 11.0.11-internal+0-adhoc.zixianc.openjdk)
# Java VM: OpenJDK 64-Bit Server VM (11.0.11-internal+0-adhoc.zixianc.openjdk, compiled mode, third-party gc, linux-amd64)
# Problematic frame:
# V  [libjvm.so+0x480c6e]  BiasedLocking::revoke_and_rebias(Handle, bool, Thread*)+0x1e
#
# Core dump will be written. Default location: Core dumps may be processed with "/usr/share/apport/apport %p %s %c %d %P %E" (or dumping to /home/zixianc/MMTk-Dev/evaluation/build/core.7965)
#
# An error report file with more information is saved as:
# /home/zixianc/MMTk-Dev/evaluation/build/hs_err_pid7965.log
[thread 8175 also had an error][thread 8179 also had an error]
[thread 8177 also had an error]
[thread 8192 also had an error]

[thread 8190 also had an error][thread 8181 also had an error][thread 8176 also had an error][thread 8174 also had an error][thread 8187 also had an error][thread 8195 also had an error][thread 8193 also had an error][thread 8183 also had an error][thread 8186 also had an error][thread 8180 also had an error][thread 8173 also had an error][thread 8182 also had an error][thread 8185 also had an error]

#
# If you would like to submit a bug report, please visit:
#   https://bugreport.java.com/bugreport/crash.jsp
#
fish: Job 1, 'MMTK_THREADS=1 MMTK_PLAN=SemiSp…' terminated by signal SIGABRT (Abort)
k-sareen commented 3 years ago

Can you check with the debug build of mmtk-core?

xinyu-zheng commented 3 years ago

Run using fastdebug build shows this:

RUST_BACKTRACE=1 MMTK_THREADS=1 MMTK_PLAN=SemiSpace /home/xinyuz/mmtk/mmtk-openjdk/repos/openjdk/build/linux-x86_64-normal-server-fastdebug/jdk/bin/java -XX:MetaspaceSize=500M -XX:+DisableExplicitGC -server -XX:-TieredCompilation -Xcomp -XX:+UseThirdPartyHeap -Djava.library.path=/home/xinyuz/probes -Dprobes=RustMMTk -Xms576M -Xmx576M -cp /usr/share/benchmarks/dacapo/dacapo-evaluation-git-69a704e.jar:/home/xinyuz/probes:/home/xinyuz/probes/probes.jar Harness -c probe.DacapoChopinCallback -n 5 zxing
...
...
...
===== DaCapo evaluation-git-69a704e zxing starting =====
[2021-08-25T03:21:27Z INFO  mmtk::plan::global]   [POLL] copyspace0: Triggering collection
[2021-08-25T03:21:27Z INFO  mmtk::plan::global]   [POLL] copyspace0: Triggering collection
[2021-08-25T03:21:29Z INFO  mmtk::scheduler::gc_work] End of GC
[2021-08-25T03:21:29Z INFO  mmtk::plan::global]   [POLL] copyspace1: Triggering collection
[2021-08-25T03:21:31Z INFO  mmtk::scheduler::gc_work] End of GC
[2021-08-25T03:21:31Z INFO  mmtk::plan::global]   [POLL] copyspace0: Triggering collection
[2021-08-25T03:21:31Z INFO  mmtk::plan::global]   [POLL] copyspace0: Triggering collection
[2021-08-25T03:21:31Z INFO  mmtk::plan::global]   [POLL] copyspace0: Triggering collection
[2021-08-25T03:21:33Z INFO  mmtk::scheduler::gc_work] End of GC
[2021-08-25T03:21:33Z INFO  mmtk::plan::global]   [POLL] copyspace1: Triggering collection
[2021-08-25T03:21:33Z INFO  mmtk::plan::global]   [POLL] copyspace1: Triggering collection
[2021-08-25T03:21:35Z INFO  mmtk::scheduler::gc_work] End of GC
[2021-08-25T03:21:35Z INFO  mmtk::plan::global]   [POLL] copyspace0: Triggering collection
[2021-08-25T03:21:36Z INFO  mmtk::scheduler::gc_work] End of GC
[2021-08-25T03:21:37Z INFO  mmtk::plan::global]   [POLL] copyspace1: Triggering collection
[2021-08-25T03:21:37Z INFO  mmtk::plan::global]   [POLL] copyspace1: Triggering collection
[2021-08-25T03:21:37Z INFO  mmtk::plan::global]   [POLL] copyspace1: Triggering collection
[2021-08-25T03:21:38Z INFO  mmtk::scheduler::gc_work] End of GC
[2021-08-25T03:21:38Z INFO  mmtk::plan::global]   [POLL] copyspace0: Triggering collection
[2021-08-25T03:21:38Z INFO  mmtk::plan::global]   [POLL] copyspace0: Triggering collection
[2021-08-25T03:21:40Z INFO  mmtk::scheduler::gc_work] End of GC
[2021-08-25T03:21:40Z INFO  mmtk::plan::global]   [POLL] copyspace1: Triggering collection
[2021-08-25T03:21:42Z INFO  mmtk::scheduler::gc_work] End of GC
[2021-08-25T03:21:42Z INFO  mmtk::plan::global]   [POLL] copyspace0: Triggering collection
[2021-08-25T03:21:42Z INFO  mmtk::plan::global]   [POLL] copyspace0: Triggering collection
[2021-08-25T03:21:44Z INFO  mmtk::scheduler::gc_work] End of GC
[2021-08-25T03:21:44Z INFO  mmtk::plan::global]   [POLL] copyspace1: Triggering collection
[2021-08-25T03:21:46Z INFO  mmtk::scheduler::gc_work] End of GC
[2021-08-25T03:21:46Z INFO  mmtk::plan::global]   [POLL] copyspace0: Triggering collection
[2021-08-25T03:21:48Z INFO  mmtk::scheduler::gc_work] End of GC
[2021-08-25T03:21:48Z INFO  mmtk::plan::global]   [POLL] los: Triggering collection
[2021-08-25T03:21:48Z INFO  mmtk::plan::global]   [POLL] los: Triggering collection
[2021-08-25T03:21:50Z INFO  mmtk::scheduler::gc_work] End of GC
[2021-08-25T03:21:50Z INFO  mmtk::plan::global]   [POLL] copyspace0: Triggering collection
[2021-08-25T03:21:52Z INFO  mmtk::scheduler::gc_work] End of GC
[2021-08-25T03:21:52Z INFO  mmtk::plan::global]   [POLL] los: Triggering collection
[2021-08-25T03:21:52Z INFO  mmtk::plan::global]   [POLL] copyspace1: Triggering collection
[2021-08-25T03:21:53Z INFO  mmtk::scheduler::gc_work] End of GC
[2021-08-25T03:21:53Z INFO  mmtk::plan::global]   [POLL] copyspace0: Triggering collection
[2021-08-25T03:21:53Z INFO  mmtk::plan::global]   [POLL] copyspace0: Triggering collection
[2021-08-25T03:21:53Z INFO  mmtk::plan::global]   [POLL] copyspace0: Triggering collection
[2021-08-25T03:21:53Z INFO  mmtk::plan::global]   [POLL] los: Triggering collection
thread '<unnamed>' panicked at 'Invalid forwarding state 0x1 0x2cab6530ab6530 for object0x200058074b8', /home/xinyuz/mmtk/mmtk-core/src/util/object_forwarding.rs:80:9
stack backtrace:
   0: rust_begin_unwind
             at /rustc/ae90dcf0207c57c3034f00b07048d63f8b2363c8/library/std/src/panicking.rs:517:5
   1: std::panicking::begin_panic_fmt
             at /rustc/ae90dcf0207c57c3034f00b07048d63f8b2363c8/library/std/src/panicking.rs:460:5
   2: mmtk::util::object_forwarding::spin_and_get_forwarded_object
             at /home/xinyuz/mmtk/mmtk-core/src/util/object_forwarding.rs:80:9
   3: mmtk::policy::copyspace::CopySpace<VM>::trace_object
             at /home/xinyuz/mmtk/mmtk-core/src/policy/copyspace.rs:199:17
   4: <mmtk::plan::semispace::gc_work::SSProcessEdges<VM> as mmtk::scheduler::gc_work::ProcessEdgesWork>::trace_object
             at /home/xinyuz/mmtk/mmtk-core/src/plan/semispace/gc_work.rs:108:13
   5: mmtk::scheduler::gc_work::ProcessEdgesWork::process_edge
             at /home/xinyuz/mmtk/mmtk-core/src/scheduler/gc_work.rs:451:26
   6: mmtk::scheduler::gc_work::ProcessEdgesWork::process_edges
             at /home/xinyuz/mmtk/mmtk-core/src/scheduler/gc_work.rs:460:13
   7: mmtk::scheduler::gc_work::<impl mmtk::scheduler::work::GCWork<<E as mmtk::scheduler::gc_work::ProcessEdgesWork>::VM> for E>::do_work
             at /home/xinyuz/mmtk/mmtk-core/src/scheduler/gc_work.rs:470:9
   8: mmtk::scheduler::work::GCWork::do_work_with_stat
             at /home/xinyuz/mmtk/mmtk-core/src/scheduler/work.rs:20:9
   9: mmtk::scheduler::worker::GCWorker<VM>::run
             at /home/xinyuz/mmtk/mmtk-core/src/scheduler/worker.rs:158:13
  10: mmtk::memory_manager::start_worker
             at /home/xinyuz/mmtk/mmtk-core/src/memory_manager.rs:177:5
  11: start_worker
             at /home/xinyuz/mmtk/mmtk-openjdk/mmtk/src/api.rs:123:5
  12: _ZN6Thread8call_runEv
  13: _ZL19thread_native_entryP6Thread
  14: start_thread
  15: __clone
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
fatal runtime error: failed to initiate panic, error 5
Aborted (core dumped)
k-sareen commented 3 years ago

Quite weird -- this is single threaded even so there should be no race condition with setting any of the metadata bits... Forwarding state of 0x1 also means nothing. Somehow the forwarding bits are getting corrupted