RFR: 8315560: GenShen: assert failed: Object klass pointer must go to metaspace

Kelvin Nilsen kdnilsen at openjdk.org
Mon Sep 18 17:15:31 UTC 2023


On Mon, 18 Sep 2023 16:21:22 GMT, William Kemper <wkemper at openjdk.org> wrote:

> The SATB barrier which is on during concurrent marking of old may cause pointers into the collection set to be held by the SATB buffer. When a concurrent cycle degenerates during or before the root scan, these buffers are purged. However, they must also be purged at the end of a degenerated cycle. The buffers cannot be purged unconditionally at the beginning of a degenerated cycle because it could lose pointers necessary to complete the concurrent mark of the young generation.

As discussed off-channel, there may be compounding issues that trigger this same or similar error message.  My rr recording of this symptom might suggest that there's something else at play here, but I agree that this fix is necessary.

-------------

Marked as reviewed by kdnilsen (Committer).

PR Review: https://git.openjdk.org/shenandoah/pull/326#pullrequestreview-1631606983


More information about the shenandoah-dev mailing list