RFR: 8267926: AsyncLogGtest.java fails on assert with: decorator was not part of the decorator set specified at creation. [v3]
David Holmes
david.holmes at oracle.com
Tue Jun 1 09:30:43 UTC 2021
On 1/06/2021 4:00 pm, David Holmes wrote:
> Hi Xin,
>
> On 1/06/2021 3:48 pm, Liu Xin wrote:
>> hi, David,
>>
>> This is awkward. I think I changed too many in a patch.
>>
>> Do you think it is a good idea that I revert to
>> https://openjdk.github.io/cr/?repo=jdk&pr=4257&range=00
>> <https://openjdk.github.io/cr/?repo=jdk&pr=4257&range=00>
>> It is a trivial bugfix. Does it solve tier1~4 on aarch64?
>
> I didn't test just that patch, but will try to do so.
The basic change passed tiers 1-4 testing.
Thanks,
David
-----
> It might be best to revert to the simple workaround for now to fix the
> test - otherwise I need to get the test problem-listed.
>
>> If it does, we can know that this new crash is caused by the change in
>> my new patch.
>> I would recall it and rework it on aarch64.
>>
>> It seems that it crashed while executing gtest in async mode. Could
>> you tell me which gtest it was executing?
>> "Command Line: -XX:+ExecutingUnitTests -Xlog:async"
>
> [ RUN ] LogConfigurationTest.parse_log_arguments_vm
> #
> # A fatal error has been detected by the Java Runtime Environment:
> #
> # SIGSEGV (0xb) at pc=0x0000ffff40820720, pid=3972473, tid=3972481
>
> HTH,
> David
>
>> thanks,
>> --lx
>>
>>
>> On Mon, May 31, 2021 at 10:13 PM David Holmes
>> <dholmes at openjdk.java.net <mailto:dholmes at openjdk.java.net>> wrote:
>>
>> On Mon, 31 May 2021 17:09:48 GMT, Xin Liu <xliu at openjdk.org
>> <mailto:xliu at openjdk.org>> wrote:
>>
>> >> The root cause of the intermittent failure is that _decorators
>> in LogDecorations
>> >> may be inconsistent with LogOutput::_decorators. It could happen
>> when gtest disables a
>> >> Log output via set_log_config(TestLogFileName, "all=off").
>> >>
>> >> Since we copy the entire logDecorations, it's reasonable to copy
>> _decorator as well.
>> >> LogDecorator is a bitmask of uint. It's even smaller than a
>> reference on LP64 platforms.
>> >>
>> >> This patch not only fixes intermittent crash in JDK-8267926, but
>> also fixes JDK-8267952.
>> >> Two hazards of async logging in
>> `LogConfiguration::configure_output` are eliminated.
>> >> This patch also adds a storestore barrier to make sure it's safe
>> on weak consistency machines.
>> >
>> > Xin Liu has updated the pull request incrementally with one
>> additional commit since the last revision:
>> >
>> > Increase reader's counter before creating LogDecoration.
>>
>> I put the latest patch through our tier 1-4 testing and it crashed
>> in tier 3 on Linux-Aarch64:
>>
>> #
>> # A fatal error has been detected by the Java Runtime Environment:
>> #
>> # SIGSEGV (0xb) at pc=0x0000ffff40820720, pid=3972473, tid=3972481
>> #
>> # JRE version: Java(TM) SE Runtime Environment (17.0) (fastdebug
>> build 17-internal+0-LTS-2021-05-31-2211099.david.holmes.jdk-dev4.git)
>> # Java VM: Java HotSpot(TM) 64-Bit Server VM (fastdebug
>> 17-internal+0-LTS-2021-05-31-2211099.david.holmes.jdk-dev4.git,
>> mixed mode, tiered, compressed oops, compressed class ptrs, g1 gc,
>> linux-aarch64)
>> # Problematic frame:
>> # C [libc.so.6+0x60720] flockfile+0x0
>> #
>> # Core dump will be written. Default location: Core dumps may be
>> processed with "/opt/core.sh %p" (or dumping to
>>
>> /opt/mach5/mesos/work_dir/slaves/a4f8fba9-f017-4328-b286-c66b6a97143d-S808/frameworks/1735e8a2-a1db-478c-8104-60c8b0af87dd-0196/executors/42993029-a18a-48c4-9a4d-108aee7b3811/runs/a38508fe-5d43-48ad-b70a-61f3e712fcd8/testoutput/test-support/jtreg_open_test_hotspot_jtreg_hotspot_misc/scratch/0/core.3972473)
>>
>> #
>> # If you would like to submit a bug report, please visit:
>> # https://bugreport.java.com/bugreport/crash.jsp
>> <https://bugreport.java.com/bugreport/crash.jsp>
>> #
>>
>> --------------- S U M M A R Y ------------
>>
>> Command Line: -XX:+ExecutingUnitTests -Xlog:async
>>
>> Host: AArch64, 6 cores, 46G, Oracle Linux Server release 8.3
>> Time: Mon May 31 22:37:04 2021 UTC elapsed time: 3.758723 seconds
>> (0d 0h 0m 3s)
>>
>> --------------- T H R E A D ---------------
>>
>> Current thread (0x0000aaadf32b1e10): Thread "AsyncLog Thread"
>> [stack: 0x0000fffefdaa0000,0x0000fffefdca0000] [id=3972481]
>>
>> Stack: [0x0000fffefdaa0000,0x0000fffefdca0000],
>> sp=0x0000fffefdc9e510, free space=2041k
>> Native frames: (J=compiled Java code, j=interpreted, Vv=VM code,
>> C=native code)
>> C [libc.so.6+0x60720] flockfile+0x0
>> V [libjvm.so+0x1508058]
>> LogFileOutput::write_blocking(LogDecorations const&, char const*)+0x38
>> V [libjvm.so+0x1502764] AsyncLogWriter::run()+0x2c0
>> V [libjvm.so+0x1a49d08] Thread::call_run()+0xf8
>> V [libjvm.so+0x1766f18] thread_native_entry(Thread*)+0x108
>> C [libpthread.so.0+0x76e0] start_thread+0x198
>>
>> -------------
>>
>> PR: https://git.openjdk.java.net/jdk/pull/4257
>> <https://git.openjdk.java.net/jdk/pull/4257>
>>
More information about the hotspot-runtime-dev
mailing list