RFR: JDK-8180599: Possibly miss to iterate monitors on thread exit
Roman Kennke
rkennke at redhat.com
Thu May 18 12:16:45 UTC 2017
As David pointed out here:
http://mail.openjdk.java.net/pipermail/hotspot-runtime-dev/2017-May/023468.html
The fix to JDK-8180175: ObjectSynchronizer only needs to iterate in-use
monitors introduced a bug where we could potentially miss to iterate
oops in monitors of exiting threads. The proposed fix is as Robbin Ehn
suggested to move the call to omFlush() before we remove the thread from
_thread_list:
http://cr.openjdk.java.net/~rkennke/8180599/webrev.00/
<http://cr.openjdk.java.net/%7Erkennke/8180599/webrev.00/>
This solves the problem because there's no window where monitors would
not appear in any list.
I tested a number of programs and jtreg hotspot_gc tests and it doesn't
show any ill effects.
Ok?
Roman
More information about the hotspot-runtime-dev
mailing list