summaryrefslogtreecommitdiff
path: root/test/ruby/test_rubyvm.rb
diff options
context:
space:
mode:
authorKJ Tsanaktsidis <kj@kjtsanaktsidis.id.au>2024-01-28 17:15:43 +1100
committerKJ Tsanaktsidis <kj@kjtsanaktsidis.id.au>2024-02-06 22:23:42 +1100
commit719db18b50a996f3df4f76854f7dc9d69f875582 (patch)
tree0cd4da42473e9ca04e998b495013a75e37925b3e /test/ruby/test_rubyvm.rb
parent19f615521d92f9837099173abb831cfcd2ff284c (diff)
notify ASAN about M:N threading stack switches
In a similar way to how we do it with fibers in cont.c, we need to call __sanitize_start_switch_fiber and __sanitize_finish_switch_fiber around the call to coroutine_transfer to let ASAN save & restore the fake stack pointer. When a M:N thread is exiting, we pass `to_dead` to the new coroutine_transfer0 function, so that we can pass NULL for saving the stack pointer. This signals to ASAN that the fake stack can be freed (otherwise it would be leaked) [Bug #20220]
Diffstat (limited to 'test/ruby/test_rubyvm.rb')
0 files changed, 0 insertions, 0 deletions