Bug 60127 - Random GC crashes
Summary: Random GC crashes
Alias: None
Product: Runtime
Classification: Mono
Component: GC ()
Version: 5.2 (2017-04)
Hardware: PC Mac OS
: --- normal
Target Milestone: ---
Assignee: Bugzilla
Depends on:
Reported: 2017-10-11 13:02 UTC by Aleksandr
Modified: 2018-01-24 18:20 UTC (History)
4 users (show)

Is this bug a regression?: ---
Last known good build:

Mono console output for the new crash in GC (774.82 KB, text/plain)
2017-10-17 05:26 UTC, Aleksandr

Notice (2018-05-24): bugzilla.xamarin.com is now in read-only mode.

Please join us on Visual Studio Developer Community and in the Xamarin and Mono organizations on GitHub to continue tracking issues. Bugzilla will remain available for reference in read-only mode. We will continue to work on open Bugzilla bugs, copy them to the new locations as needed for follow-up, and add the new items under Related Links.

Our sincere thanks to everyone who has contributed on this bug tracker over the years. Thanks also for your understanding as we make these adjustments and improvements for the future.

Please create a new report on GitHub or Developer Community with your current version information, steps to reproduce, and relevant error messages or log files if you are hitting an issue that looks similar to this resolved bug and you do not yet see a matching new report.

Related Links:

Description Aleksandr 2017-10-11 13:02:32 UTC
We get a report from a person who installed our product from repeated crashes with Mono The crash persistently happens in drain_gray_stack function only on his mac. Right now the only information we have is a following stacktrace:

  0   libmonosgen-2.0.1.dylib             0x0000000103e7fe41 mono_handle_native_crash + 257
  1   libmonosgen-2.0.1.dylib             0x0000000103dd2e58 mono_sigsegv_signal_handler + 184
  2   libsystem_platform.dylib            0x00007fffaea7fb3a _sigtramp + 26
  3   ???                                 0x00000000050ae8d0 0x0 + 84601040
  4   libmonosgen-2.0.1.dylib             0x0000000104029988 drain_gray_stack + 7192
  5   libmonosgen-2.0.1.dylib             0x000000010404fa81 marker_idle_func + 433
  6   libmonosgen-2.0.1.dylib             0x000000010404e84c thread_func + 460
  7   libsystem_pthread.dylib             0x00007fffaea8993b _pthread_body + 180
  8   libsystem_pthread.dylib             0x00007fffaea89887 _pthread_body + 0
  9   libsystem_pthread.dylib             0x00007fffaea8908d thread_start + 13
Comment 1 Aleksandr 2017-10-17 05:26:26 UTC
Created attachment 25329 [details]
Mono console output for the new crash in GC

Here is a new crash from the same machine. The application was running in environment with MONO_LOG_LEVEL=debug MONO_LOG_MASK=gc. This time GC crashes in marker_idle_func. 
Here the last lines from Mono GC log (for the full log please see the attachment):

Mono: GC_MINOR: (Nursery full) time 5.84ms, stw 7.48ms promoted 97K major size: 203648K in use: 196717K los size: 66444K in use: 59825K
Mono: GC_MINOR: (Concurrent start) time 3.22ms, stw 13.10ms promoted 17K major size: 203648K in use: 196735K los size: 66444K in use: 59825K
Mono: GC_MINOR: (Nursery full) time 4.18ms, stw 7.78ms promoted 107K major size: 203776K in use: 196854K los size: 66444K in use: 59930K
Mono: GC_MINOR: (Nursery full) time 4.19ms, stw 6.55ms promoted 96K major size: 203872K in use: 196958K los size: 66444K in use: 59962K
Mono: GC_MINOR: (Nursery full) time 4.72ms, stw 9.17ms promoted 99K major size: 203984K in use: 197065K los size: 66444K in use: 59994K

As you can see there is an unfinished major heap collection.
Comment 2 Vlad Brezae 2017-10-30 20:29:20 UTC
Thank you for the report. I'm afraid there is nothing that can be done about these type of crashes without a repro test case. Let me know if any progress is made on that.
Comment 3 Ludovic Henry 2018-01-24 18:20:03 UTC
Please provide information requested in previous comment to reopen. Thank you.