Stream: git-wasmtime

Topic: wasmtime / issue #3917 fuzzing: No coverage of GC-ing whe...


view this post on Zulip Wasmtime GitHub notifications bot (Mar 10 2022 at 19:57):

alexcrichton opened issue #3917:

I was poking around the coverage reports today and found that a surprising piece of dead code was this block which is where we actually walk the stack map of a stack frame and find the live externref values to keep alive. This means that we have no fuzzing support for stack maps right now which exercises keeping live externref values on the stack alive.

I believe this is unintended so I'm opening an issue for this as this is definitely something that we're going to want to fuzz. The current table_ops fuzzer was thought to cover this but it does not ever make any gc calls with actual live values on the stack. We should either modify that fuzzer or make a new similar fuzzer which generates wasms which deal with externref and have live values on the stack when calls to gc (either explicit or implicit) are made.

view this post on Zulip Wasmtime GitHub notifications bot (Mar 10 2022 at 19:57):

alexcrichton labeled issue #3917:

I was poking around the coverage reports today and found that a surprising piece of dead code was this block which is where we actually walk the stack map of a stack frame and find the live externref values to keep alive. This means that we have no fuzzing support for stack maps right now which exercises keeping live externref values on the stack alive.

I believe this is unintended so I'm opening an issue for this as this is definitely something that we're going to want to fuzz. The current table_ops fuzzer was thought to cover this but it does not ever make any gc calls with actual live values on the stack. We should either modify that fuzzer or make a new similar fuzzer which generates wasms which deal with externref and have live values on the stack when calls to gc (either explicit or implicit) are made.

view this post on Zulip Wasmtime GitHub notifications bot (Mar 10 2022 at 19:57):

alexcrichton labeled issue #3917:

I was poking around the coverage reports today and found that a surprising piece of dead code was this block which is where we actually walk the stack map of a stack frame and find the live externref values to keep alive. This means that we have no fuzzing support for stack maps right now which exercises keeping live externref values on the stack alive.

I believe this is unintended so I'm opening an issue for this as this is definitely something that we're going to want to fuzz. The current table_ops fuzzer was thought to cover this but it does not ever make any gc calls with actual live values on the stack. We should either modify that fuzzer or make a new similar fuzzer which generates wasms which deal with externref and have live values on the stack when calls to gc (either explicit or implicit) are made.

view this post on Zulip Wasmtime GitHub notifications bot (Mar 10 2022 at 19:57):

alexcrichton labeled issue #3917:

I was poking around the coverage reports today and found that a surprising piece of dead code was this block which is where we actually walk the stack map of a stack frame and find the live externref values to keep alive. This means that we have no fuzzing support for stack maps right now which exercises keeping live externref values on the stack alive.

I believe this is unintended so I'm opening an issue for this as this is definitely something that we're going to want to fuzz. The current table_ops fuzzer was thought to cover this but it does not ever make any gc calls with actual live values on the stack. We should either modify that fuzzer or make a new similar fuzzer which generates wasms which deal with externref and have live values on the stack when calls to gc (either explicit or implicit) are made.

view this post on Zulip Wasmtime GitHub notifications bot (Apr 11 2022 at 21:33):

fitzgen closed issue #3917:

I was poking around the coverage reports today and found that a surprising piece of dead code was this block which is where we actually walk the stack map of a stack frame and find the live externref values to keep alive. This means that we have no fuzzing support for stack maps right now which exercises keeping live externref values on the stack alive.

I believe this is unintended so I'm opening an issue for this as this is definitely something that we're going to want to fuzz. The current table_ops fuzzer was thought to cover this but it does not ever make any gc calls with actual live values on the stack. We should either modify that fuzzer or make a new similar fuzzer which generates wasms which deal with externref and have live values on the stack when calls to gc (either explicit or implicit) are made.


Last updated: Dec 23 2024 at 12:05 UTC