Stream: git-wasmtime

Topic: wasmtime / PR #14931 Fix Table::grow panic on unrooted GC...


view this post on Zulip Wasmtime GitHub notifications bot (Oct 22 2026 at 00:41):

ViktorByteTZ opened PR #14931 from ViktorByteTZ:fix-table-grow-unrooted-14582 to bytecodealliance:main:

Closes #14582.

Summary

When Table::grow is invoked with an unrooted Rooted GC reference (such as ExternRef, AnyRef, or ExnRef), ensure_matches_ty previously returned Ok(()) for top heap types without verifying that the reference was still rooted. As a result, growth proceeded and the subsequent _fill step encountered an unrooted error during into_table_gc_ref, which triggered an unwrap() panic on a grown table.

Changes

view this post on Zulip Wasmtime GitHub notifications bot (Oct 22 2026 at 00:41):

ViktorByteTZ removed the review request for wasmtime-core-reviewers from PR #14931.

view this post on Zulip Wasmtime GitHub notifications bot (Oct 22 2026 at 00:41):

ViktorByteTZ requested pchickey for a review on PR #14931.

view this post on Zulip Wasmtime GitHub notifications bot (Oct 22 2026 at 00:41):

ViktorByteTZ requested wasmtime-core-reviewers for a review on PR #14931.

view this post on Zulip Wasmtime GitHub notifications bot (Oct 22 2026 at 01:54):

:memo: alexcrichton submitted PR review.

view this post on Zulip Wasmtime GitHub notifications bot (Oct 22 2026 at 01:54):

:speech_balloon: alexcrichton created PR review comment:

This'll want to stay as .unwrap() as if this fails then it could be possible for a table to have grown but not been filled, which is not good for tables of non-null elements. This .unwrap() is load-bearing in that sense to promote mistakes (like the rooting you're fixing here) to panics as opposed to more serious memory safety vulnerabilities.

view this post on Zulip Wasmtime GitHub notifications bot (Oct 22 2026 at 05:48):

github-actions[bot] added the label wasmtime:api on PR #14931.

view this post on Zulip Wasmtime GitHub notifications bot (Oct 23 2026 at 19:34):

pchickey removed the review request for pchickey from PR #14931.

view this post on Zulip Wasmtime GitHub notifications bot (Oct 25 2026 at 04:45):

ViktorByteTZ updated PR #14931.

view this post on Zulip Wasmtime GitHub notifications bot (Oct 25 2026 at 04:46):

:memo: ViktorByteTZ submitted PR review.

view this post on Zulip Wasmtime GitHub notifications bot (Oct 25 2026 at 04:46):

:speech_balloon: ViktorByteTZ created PR review comment:

Good point, agreed! Kept the .unwrap() in Table::_grow so that any post-growth fill failure promotes to a panic to preserve the non-null table invariant, with ensure_matches_ty catching unrooted references beforehand.

view this post on Zulip Wasmtime GitHub notifications bot (Oct 26 2026 at 15:08):

:thumbs_up: alexcrichton submitted PR review.

view this post on Zulip Wasmtime GitHub notifications bot (Oct 26 2026 at 15:08):

alexcrichton has enabled auto merge for PR #14931.

view this post on Zulip Wasmtime GitHub notifications bot (Oct 26 2026 at 15:18):

alexcrichton added PR #14931 Fix Table::grow panic on unrooted GC init reference to the merge queue.

view this post on Zulip Wasmtime GitHub notifications bot (Oct 26 2026 at 16:05):

github-merge-queue[bot] removed PR #14931 Fix Table::grow panic on unrooted GC init reference from the merge queue.

view this post on Zulip Wasmtime GitHub notifications bot (Oct 26 2026 at 16:11):

alexcrichton added PR #14931 Fix Table::grow panic on unrooted GC init reference to the merge queue.

view this post on Zulip Wasmtime GitHub notifications bot (Oct 26 2026 at 16:34):

github-merge-queue[bot] removed PR #14931 Fix Table::grow panic on unrooted GC init reference from the merge queue.

view this post on Zulip Wasmtime GitHub notifications bot (Oct 26 2026 at 22:07):

alexcrichton added PR #14931 Fix Table::grow panic on unrooted GC init reference to the merge queue.

view this post on Zulip Wasmtime GitHub notifications bot (Oct 26 2026 at 22:47):

:check: alexcrichton merged PR #14931.

view this post on Zulip Wasmtime GitHub notifications bot (Oct 26 2026 at 22:47):

alexcrichton removed PR #14931 Fix Table::grow panic on unrooted GC init reference from the merge queue.


Last updated: Oct 31 2026 at 23:03 UTC