Skip to content

Conversation

@casperisfine
Copy link
Contributor

The table itself is a rb_id_marked_table and the values are IMEMO/constentry.

This open the door to do RCU updates of constant tables.

@casperisfine casperisfine force-pushed the rclass-marked-const-table branch 2 times, most recently from b3689b6 to 202bebc Compare July 8, 2025 09:33
@launchable-app

This comment has been minimized.

@casperisfine casperisfine force-pushed the rclass-marked-const-table branch 4 times, most recently from e420f5a to 23493ce Compare July 11, 2025 12:33
@luke-gru
Copy link
Contributor

@byroot Could the CI failures be related to this? The mask appears to be different.

@casperisfine
Copy link
Contributor Author

Hum, that's a good catch. Thank you.

@casperisfine casperisfine force-pushed the rclass-marked-const-table branch from e90e3df to eaf45a1 Compare July 15, 2025 09:08
@casperisfine
Copy link
Contributor Author

Ref: ruby/debug#1151

Similar to `managed_id_table`, but the values are marked.
This can be used to implement RCU pattern on id tables
that contain marked objects (e.g. `class->const_tbl`).
@casperisfine casperisfine force-pushed the rclass-marked-const-table branch from eaf45a1 to 94e1d88 Compare July 15, 2025 10:20
byroot added 2 commits July 15, 2025 12:21
The table itself is a `rb_id_marked_table` and the values
are `IMEMO/constentry`.

This open the door to do RCU updates of constant tables.
@casperisfine casperisfine force-pushed the rclass-marked-const-table branch from 94e1d88 to 5f6cdc9 Compare July 15, 2025 10:21
@casperisfine casperisfine force-pushed the rclass-marked-const-table branch from 5f6cdc9 to 22019c9 Compare July 15, 2025 10:21
@casperisfine
Copy link
Contributor Author

Could the CI failures be related to this? The mask appears to be different.

It did indeed fix one issue. Unfortunately the debug gem suite is still failing when running in parse.y mode, unclear why.

This also is unrelated to the write barrier issue :/. It's progress though.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants