Stream: git-wasmtime

Topic: wasmtime / PR #4918 Limit linear memories when fuzzing wi...


view this post on Zulip Wasmtime GitHub notifications bot (Sep 16 2022 at 17:11):

alexcrichton opened PR #4918 from reduce-pooling-size-when-fuzzing to main:

This commit limits the maximum number of linear memories when the pooling allocator is used to ensure that the virtual memory mapping for the pooling allocator itself can succeed. Currently there are a number of crashes in the differential fuzzer where the pooling allocator can't allocate its mapping because the maximum specified number of linear memories times the number of instances exceeds the address space presumably.

<!--

Please ensure that the following steps are all taken care of before submitting
the PR.

Please ensure all communication adheres to the code of conduct.
-->

view this post on Zulip Wasmtime GitHub notifications bot (Sep 16 2022 at 17:12):

alexcrichton has marked PR #4918 as ready for review.

view this post on Zulip Wasmtime GitHub notifications bot (Sep 16 2022 at 17:34):

abrown submitted PR review.

view this post on Zulip Wasmtime GitHub notifications bot (Sep 16 2022 at 17:34):

abrown submitted PR review.

view this post on Zulip Wasmtime GitHub notifications bot (Sep 16 2022 at 17:34):

abrown created PR review comment:

Shouldn't min be 0 or 1?

view this post on Zulip Wasmtime GitHub notifications bot (Sep 16 2022 at 18:00):

alexcrichton submitted PR review.

view this post on Zulip Wasmtime GitHub notifications bot (Sep 16 2022 at 18:00):

alexcrichton created PR review comment:

The maximum/minimum being bigger than 1 indicates the multi-memory proposal is active, if that's your question? I wanted to leave that part of fuzzing active ideally.

view this post on Zulip Wasmtime GitHub notifications bot (Sep 16 2022 at 18:07):

abrown created PR review comment:

Yeah, but I would have thought we would have also wanted to generate modules that may between 0 and 10 memories when we use the pooling allocator just to check that things don't break if, e.g., no memories are defined?

view this post on Zulip Wasmtime GitHub notifications bot (Sep 16 2022 at 18:07):

abrown submitted PR review.

view this post on Zulip Wasmtime GitHub notifications bot (Sep 16 2022 at 18:10):

jameysharp created PR review comment:

This style of using min() always confuses me, and I think it's confusing you too. It's setting min_memories to whichever is smaller of 10 or the randomly-chosen value, which means that it's at _most_ 10.

view this post on Zulip Wasmtime GitHub notifications bot (Sep 16 2022 at 18:10):

jameysharp submitted PR review.

view this post on Zulip Wasmtime GitHub notifications bot (Sep 16 2022 at 18:23):

abrown created PR review comment:

Ah! Ok, sorry, didn't see it right. There's a previously generated random value in min_memories that we are trying to constrain. Please ignore me!

view this post on Zulip Wasmtime GitHub notifications bot (Sep 16 2022 at 18:23):

abrown submitted PR review.

view this post on Zulip Wasmtime GitHub notifications bot (Sep 16 2022 at 18:23):

abrown submitted PR review.

view this post on Zulip Wasmtime GitHub notifications bot (Sep 16 2022 at 18:50):

alexcrichton merged PR #4918.


Last updated: Nov 22 2024 at 17:03 UTC