Commit Graph

2 Commits

Author SHA1 Message Date
Kim Barrett
8bfa163a68 8132306: java/lang/ref/ReferenceEnqueue.java fails with "RuntimeException: Error: poll() returned null; expected ref object"
Carefully order ref.queue and queue list updates to address races.

Reviewed-by: dholmes, dfuchs, plevart
2015-08-04 17:26:14 -04:00
Y. Srinivas Ramakrishna
e9207384c5 4243978: (ref) Race condition in Reference.enqueue()
4268317: (ref) Reference.isEnqueued() can return true when instance not enqueued

The reference handler now declares, and assumes, that the discovered field, rather than the next field, is (to be) used to link the entries in the pending list, thus allowing a reference object to be safely enqueued even while it is in the pending state. Also added slightly modified regression tests from the two bug reports.

Reviewed-by: mchung, alanb, jcoomes
2011-10-31 17:38:15 -07:00