Project

General

Profile

« Previous | Next » 

Revision 830fbb41

Added by nagachika (Tomoyuki Chikanaga) over 2 years ago

merge revision(s) 76bae60d9b967415c5930c2c5906e14c8362a6dd: [Backport #19038]

    [Bug #19038] Fix corruption of generic_iv_tbl when compacting

    When the generic_iv_tbl is resized up, rebuild_table performs
    allocations that can trigger GC. If autocompaction is enabled, then
    moved objects are removed from and inserted into the generic_iv_tbl.
    This may cause another call to rebuild_table to resize the
    generic_iv_tbl. When returning back to the original rebuild_table, some
    of the data may be stale, causing the generic_iv_tbl to be corrupted.

    This commit changes rebuild_table to only read data from the st_table
    after the allocations have completed.

    Co-Authored-By: Matt Valentine-House <[email protected]>
    ---
     st.c | 15 ++++++++++-----
     1 file changed, 10 insertions(+), 5 deletions(-)