RFR: 8253794: TestAbortVMOnSafepointTimeout never timeouts [v2]
Martin Doerr
mdoerr at openjdk.java.net
Mon Oct 5 11:00:38 UTC 2020
On Fri, 2 Oct 2020 09:00:54 GMT, Robbin Ehn <rehn at openjdk.org> wrote:
>> The issue is that this test doesn't consider Handshake All operation.
>> Depending if/when such operation is scheduled it can lockup the VM thread.
>> And the safepoint that should timeout never happens.
>> See issue for more information.
>>
>> So I changed the test to "try timeout" the safepoint, but if there was no safepoint (blocked by a handshake all), we
>> retry. We sleep unsafe much longer than the interval SafepointALot generates operations, which 'guarantees' we will
>> timeout if there is no handshake all. (some extreme case of kernel scheduling causing a very long context switch could
>> also make us not timeout) Passes t1, t3, and repeat runs of the test.
>
> Robbin Ehn has updated the pull request incrementally with one additional commit since the last revision:
>
> Update with input from reviews
Thanks for reimplementing it to resolve problems with handshake all operations.
test/hotspot/jtreg/runtime/Safepoint/TestAbortVMOnSafepointTimeout.java line 97:
Can we check for another frame like e.g. WB_WaitUnsafe? AbortVMOnSafepointTimeout is designed to provide a stack trace
of the thread which is blocking the safepoint.
-------------
PR: https://git.openjdk.java.net/jdk/pull/465
More information about the hotspot-runtime-dev
mailing list