RFR: Empty task queues when cancelled partial GC

Zhengyu Gu zgu at redhat.com
Mon Mar 20 17:19:51 UTC 2017


Good to me.

-Zhengyu

On 03/20/2017 01:15 PM, Roman Kennke wrote:
> Am 20.03.2017 um 17:31 schrieb Aleksey Shipilev:
>> On 03/20/2017 05:27 PM, Roman Kennke wrote:
>>> When partial GC gets cancelled, we need to empty the task queues.
>> Right! We also need to visit the terminator on that path...
> I leave that to another patch. ;-)
>>> I also added a small check to verify this, even for release build
>>> (shuold we make this debug-only?)
>> Yes, wrap it up in ASSERT, and s/guarantee/assert/g
>
> I found out that set_empty() is not enough. We also need to clear the
> buffer and the overflow queue. However, TQS->clear() does that for us. I
> changed the patch to call clear() after all workers are done, and also
> put an assert before and after partial GC.
>
> http://cr.openjdk.java.net/~rkennke/fixemptyq/webrev.01/
> <http://cr.openjdk.java.net/%7Erkennke/fixemptyq/webrev.01/>
>
> ok now?
> Roman
>
>


More information about the shenandoah-dev mailing list