summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Wu <[email protected]>2023-03-15 14:19:22 -0400
committerAlan Wu <[email protected]>2023-03-16 10:46:30 -0400
commit2f81bb793fd217374054ee78cb5cd595cfacf9fe ()
tree6c95425e8afecfc22cb08a65b6347bffc654ae5d
parente0cf80d666d4b5df3229f030a16d10d21323508e (diff)
Add thread and ractor counts to bug reports
This is useful for crash triaging. It also helps to hint extension developers about the misuse of `rb_thread_call_without_gvl()`. Example: $ ./miniruby -e 'Ractor.new{Ractor.receive}; Thread.new{sleep}; Process.kill:SEGV,Process.pid' <snip> -- Threading information --------------------------------------------------- Total ractor count: 2 Ruby thread count for this ractor: 2
Notes: Merged: https://.com/ruby/ruby/pull/7532
-rw-r--r--test/ruby/test_rubyoptions.rb3
-rw-r--r--vm_dump.c8
2 files changed, 11 insertions, 0 deletions
@@ -755,6 +755,9 @@ class TestRubyOptions < Test::Unit::TestCase
)?
)x,
%r(
(?:--\sMachine(?:.+\n)*\n)?
)x,
%r(
@@ -1083,6 +1083,14 @@ rb_vm_bugreport(const void *ctx)
SDR();
rb_backtrace_print_as_bugreport();
fputs("\n", stderr);
}
rb_dump_machine_register(ctx);