[jdk18] RFR: 8273383: vmTestbase/vm/gc/containers/Combination05/TestDescription.java crashes verifying length of DCQS
Kim Barrett
kbarrett at openjdk.java.net
Tue Jan 18 09:14:24 UTC 2022
On Tue, 18 Jan 2022 08:25:15 GMT, Stefan Johansson <sjohanss at openjdk.org> wrote:
> > I was planning to do that as one of several planned JDK 19 RFEs, while keeping the bug fix change minimal. If you prefer, I can bring forward the comment changes.
>
> I would prefer but if you plan bigger changes to the comments I'm fine with leaving it to 19.
I'm not sure; I haven't written the comment updates yet. There might not be much that needs to be changed. I'll look through all the changes and see which other ones (if any) need such updates.
> > The buffers that get pushed by enqueue_previous_paused_buffers were taken from the queue and paused before the previous safepoint. No thread can be in push/append or try_pop (via DCQS) across a safepoint boundary. So no ABA.
>
> I was mostly thinking about this case, that you mentioned. That for a short period of time after a safepoint some threads might still think they should yield. In that case it is not clear to me when such paused buffers would be re-added.
That case you describe is https://bugs.openjdk.java.net/browse/JDK-8278475. The buffers that get paused then won't be re-enqueued until after the next safepoint.
-------------
PR: https://git.openjdk.java.net/jdk18/pull/104
More information about the hotspot-gc-dev
mailing list