On Fri, 23 Apr 2021 21:07:56 GMT, Leonid Mesnik <lmes...@openjdk.org> wrote:
> Test > test/hotspot/jtreg/serviceability/jvmti/SuspendWithCurrentThread/SuspendWithCurrentThread.java > doesn't check that thread stops in SuspendThreadList(...). > > Actually, before https://bugs.openjdk.java.net/browse/JDK-8257831 the thread > didn't suspend itself but only get a request to be suspended. So it > continued to execute and stopped a little bit later. > > Such behavior is a violation of spec which says " If the calling thread is > specified in the request_list array, this function will not return until some > other thread resumes it." > > While the bug is fixed it is still useful to verify correct behavior. If the > fix is backported without JDK-8257831 test should start failing. Thumbs up. I'm good with the changes. I just a question about the use of `std::atomic`. test/hotspot/jtreg/serviceability/jvmti/SuspendWithCurrentThread/libSuspendWithCurrentThread.cpp line 33: > 31: static jthread* threads = NULL; > 32: static jsize threads_count = 0; > 33: static std::atomic<bool> is_exited_from_suspend; Is use of `std::atomic` permitted in tests? ------------- Marked as reviewed by dcubed (Reviewer). PR: https://git.openjdk.java.net/jdk/pull/3665