Shenandoah hangs on specjvm2008 due to reentrant handshake

Liang Mao maoliang.ml at alibaba-inc.com
Wed May 12 10:53:48 UTC 2021


Hi Shenandoah team,

We found this issue while running Shenandoah with jdk/master:
https://bugs.openjdk.java.net/browse/JDK-8266963 in which we had a simple fix
so far.

The hanging comes from https://bugs.openjdk.java.net/browse/JDK-8262443 which
introduced the possibility of reentrant handshake and looks like only shenandoah
would hit the scenario. I have a question specific to shenandoah that why do we
 need the phase of "entry_update_thread_roots"?
I think we already concurrently relocate the oops in thread roots by
"entry_thread_roots".
And "entry_update_thread_roots" doesn't use a general concurrent stack processing
via stack watermark but just a handshake.

Thanks,
Liang



More information about the shenandoah-dev mailing list