Closed
Description
While working on xamarin/xamarin-macios, I experienced a crash in mono with the following stack trace when building an app in the Debug configuration:
./xamarin-macios/tests/dotnet/MySingleView/bin/Debug/net7.0-maccatalyst/maccatalyst-arm64/MySingleView.app/Contents/MacOS/MySingleView
2023-06-30 16:38:37.601 MySingleView[62121:11410156] error: mono_coop_cond_broadcast Cannot transition thread 0x1e7cf5e00 from STATE_BLOCKING with DO_BLOCKING
=================================================================
Native Crash Reporting
=================================================================
Got a SIGABRT while executing native code. This usually indicates
a fatal error in the mono runtime or one of the native libraries
used by your application.
=================================================================
=================================================================
Native stacktrace:
=================================================================
0x10e8be65c - ./xamarin/xamarin-macios/tests/dotnet/MySingleView/bin/Debug/net7.0-maccatalyst/maccatalyst-arm64/MySingleView.app/Contents/MonoBundle/libmonosgen-2.0.dylib : mono_dump_native_crash_info
0x10e87d578 - ./xamarin/xamarin-macios/tests/dotnet/MySingleView/bin/Debug/net7.0-maccatalyst/maccatalyst-arm64/MySingleView.app/Contents/MonoBundle/libmonosgen-2.0.dylib : mono_handle_native_crash
0x10ea9c1a0 - ./xamarin/xamarin-macios/tests/dotnet/MySingleView/bin/Debug/net7.0-maccatalyst/maccatalyst-arm64/MySingleView.app/Contents/MonoBundle/libmonosgen-2.0.dylib : sigabrt_signal_handler.cold.1
0x10e8bdf10 - ./xamarin/xamarin-macios/tests/dotnet/MySingleView/bin/Debug/net7.0-maccatalyst/maccatalyst-arm64/MySingleView.app/Contents/MonoBundle/libmonosgen-2.0.dylib : mono_runtime_setup_stat_profiler
0x18cd26a24 - /usr/lib/system/libsystem_platform.dylib : _sigtramp
0x18ccf7c28 - /usr/lib/system/libsystem_pthread.dylib : pthread_kill
0x18cc05ae8 - /usr/lib/system/libsystem_c.dylib : abort
0x10e13418c - ./xamarin/xamarin-macios/tests/dotnet/MySingleView/bin/Debug/net7.0-maccatalyst/maccatalyst-arm64/MySingleView.app/Contents/MonoBundle/libxamarin-dotnet-debug.dylib : _ZL12log_callbackPKcS0_S0_iPv
0x10e8fa3d4 - ./xamarin/xamarin-macios/tests/dotnet/MySingleView/bin/Debug/net7.0-maccatalyst/maccatalyst-arm64/MySingleView.app/Contents/MonoBundle/libmonosgen-2.0.dylib : monoeg_g_logv
0x10e8fa508 - ./xamarin/xamarin-macios/tests/dotnet/MySingleView/bin/Debug/net7.0-maccatalyst/maccatalyst-arm64/MySingleView.app/Contents/MonoBundle/libmonosgen-2.0.dylib : monoeg_g_log
0x10e794548 - ./xamarin/xamarin-macios/tests/dotnet/MySingleView/bin/Debug/net7.0-maccatalyst/maccatalyst-arm64/MySingleView.app/Contents/MonoBundle/libmonosgen-2.0.dylib : mono_threads_transition_do_blocking
0x10e795ab8 - ./xamarin/xamarin-macios/tests/dotnet/MySingleView/bin/Debug/net7.0-maccatalyst/maccatalyst-arm64/MySingleView.app/Contents/MonoBundle/libmonosgen-2.0.dylib : mono_threads_enter_gc_safe_region_unbalanced_with_info
0x10e7238ac - ./xamarin/xamarin-macios/tests/dotnet/MySingleView/bin/Debug/net7.0-maccatalyst/maccatalyst-arm64/MySingleView.app/Contents/MonoBundle/libmonosgen-2.0.dylib : mono_runtime_class_init_full
0x10e6f1efc - ./xamarin/xamarin-macios/tests/dotnet/MySingleView/bin/Debug/net7.0-maccatalyst/maccatalyst-arm64/MySingleView.app/Contents/MonoBundle/libmonosgen-2.0.dylib : ves_icall_System_Runtime_CompilerServices_RuntimeHelpers_RunClassConstructor_raw
0x103bcb4f8 - ./xamarin/xamarin-macios/tests/dotnet/MySingleView/bin/Debug/net7.0-maccatalyst/maccatalyst-arm64/MySingleView.app/Contents/MacOS/MySingleView : wrapper_managed_to_native_System_Runtime_CompilerServices_RuntimeHelpers_RunClassConstructor_intptr
0x103bcaaf4 - ./xamarin/xamarin-macios/tests/dotnet/MySingleView/bin/Debug/net7.0-maccatalyst/maccatalyst-arm64/MySingleView.app/Contents/MacOS/MySingleView : System_Runtime_CompilerServices_RuntimeHelpers_RunClassConstructor_System_RuntimeTypeHandle
0x1038feb60 - ./xamarin/xamarin-macios/tests/dotnet/MySingleView/bin/Debug/net7.0-maccatalyst/maccatalyst-arm64/MySingleView.app/Contents/MacOS/MySingleView : System_SR_InternalGetResourceString_string
0x1038fee9c - ./xamarin/xamarin-macios/tests/dotnet/MySingleView/bin/Debug/net7.0-maccatalyst/maccatalyst-arm64/MySingleView.app/Contents/MacOS/MySingleView : System_SR_GetResourceString_string
0x103901b00 - ./xamarin/xamarin-macios/tests/dotnet/MySingleView/bin/Debug/net7.0-maccatalyst/maccatalyst-arm64/MySingleView.app/Contents/MacOS/MySingleView : System_SR_get_Arg_NullReferenceException
0x1038b390c - ./xamarin/xamarin-macios/tests/dotnet/MySingleView/bin/Debug/net7.0-maccatalyst/maccatalyst-arm64/MySingleView.app/Contents/MacOS/MySingleView : System_NullReferenceException__ctor
0x1040ea398 - ./xamarin/xamarin-macios/tests/dotnet/MySingleView/bin/Debug/net7.0-maccatalyst/maccatalyst-arm64/MySingleView.app/Contents/MacOS/MySingleView : wrapper_runtime_invoke_object_runtime_invoke_dynamic_intptr_intptr_intptr_intptr
0x10e7ec970 - ./xamarin/xamarin-macios/tests/dotnet/MySingleView/bin/Debug/net7.0-maccatalyst/maccatalyst-arm64/MySingleView.app/Contents/MonoBundle/libmonosgen-2.0.dylib : mono_jit_runtime_invoke
0x10e72313c - ./xamarin/xamarin-macios/tests/dotnet/MySingleView/bin/Debug/net7.0-maccatalyst/maccatalyst-arm64/MySingleView.app/Contents/MonoBundle/libmonosgen-2.0.dylib : mono_runtime_invoke_checked
0x10e722fec - ./xamarin/xamarin-macios/tests/dotnet/MySingleView/bin/Debug/net7.0-maccatalyst/maccatalyst-arm64/MySingleView.app/Contents/MonoBundle/libmonosgen-2.0.dylib : mono_runtime_object_init_handle
0x10e6dc7c4 - ./xamarin/xamarin-macios/tests/dotnet/MySingleView/bin/Debug/net7.0-maccatalyst/maccatalyst-arm64/MySingleView.app/Contents/MonoBundle/libmonosgen-2.0.dylib : mono_exception_new_by_name
0x10e6dc6a8 - ./xamarin/xamarin-macios/tests/dotnet/MySingleView/bin/Debug/net7.0-maccatalyst/maccatalyst-arm64/MySingleView.app/Contents/MonoBundle/libmonosgen-2.0.dylib : mono_exception_from_name_domain
0x10e87b784 - ./xamarin/xamarin-macios/tests/dotnet/MySingleView/bin/Debug/net7.0-maccatalyst/maccatalyst-arm64/MySingleView.app/Contents/MonoBundle/libmonosgen-2.0.dylib : mono_handle_exception_internal
0x10e87b6e8 - ./xamarin/xamarin-macios/tests/dotnet/MySingleView/bin/Debug/net7.0-maccatalyst/maccatalyst-arm64/MySingleView.app/Contents/MonoBundle/libmonosgen-2.0.dylib : mono_handle_exception
0x10e8bae2c - ./xamarin/xamarin-macios/tests/dotnet/MySingleView/bin/Debug/net7.0-maccatalyst/maccatalyst-arm64/MySingleView.app/Contents/MonoBundle/libmonosgen-2.0.dylib : handle_signal_exception
0x105cb53fc - ./xamarin/xamarin-macios/tests/dotnet/MySingleView/bin/Debug/net7.0-maccatalyst/maccatalyst-arm64/MySingleView.app/Contents/MacOS/MySingleView : -[MySingleView_AppDelegate init]
0x105cb53fc - ./xamarin/xamarin-macios/tests/dotnet/MySingleView/bin/Debug/net7.0-maccatalyst/maccatalyst-arm64/MySingleView.app/Contents/MacOS/MySingleView : -[MySingleView_AppDelegate init]
0x1b8717514 - /System/iOSSupport/System/Library/PrivateFrameworks/UIKitCore.framework/Versions/A/UIKitCore : _UIApplicationMainPreparations
0x1b8547094 - /System/iOSSupport/System/Library/PrivateFrameworks/UIKitCore.framework/Versions/A/UIKitCore : UIApplicationMain
0x10e104e1c - ./xamarin/xamarin-macios/tests/dotnet/MySingleView/bin/Debug/net7.0-maccatalyst/maccatalyst-arm64/MySingleView.app/Contents/MonoBundle/libxamarin-dotnet-debug.dylib : xamarin_UIApplicationMain
0x105901420 - ./xamarin/xamarin-macios/tests/dotnet/MySingleView/bin/Debug/net7.0-maccatalyst/maccatalyst-arm64/MySingleView.app/Contents/MacOS/MySingleView : wrapper_managed_to_native_UIKit_UIApplication_xamarin_UIApplicationMain_int_intptr_intptr_intptr_intptr_
0x104fd10d4 - ./xamarin/xamarin-macios/tests/dotnet/MySingleView/bin/Debug/net7.0-maccatalyst/maccatalyst-arm64/MySingleView.app/Contents/MacOS/MySingleView : UIKit_UIApplication_UIApplicationMain_int_string___intptr_intptr
0x104fd13bc - ./xamarin/xamarin-macios/tests/dotnet/MySingleView/bin/Debug/net7.0-maccatalyst/maccatalyst-arm64/MySingleView.app/Contents/MacOS/MySingleView : UIKit_UIApplication_Main_string___System_Type_System_Type
0x100731938 - ./xamarin/xamarin-macios/tests/dotnet/MySingleView/bin/Debug/net7.0-maccatalyst/maccatalyst-arm64/MySingleView.app/Contents/MacOS/MySingleView : MySingleView_Application_Main_string__
0x1040ea398 - ./xamarin/xamarin-macios/tests/dotnet/MySingleView/bin/Debug/net7.0-maccatalyst/maccatalyst-arm64/MySingleView.app/Contents/MacOS/MySingleView : wrapper_runtime_invoke_object_runtime_invoke_dynamic_intptr_intptr_intptr_intptr
0x10e7ec970 - ./xamarin/xamarin-macios/tests/dotnet/MySingleView/bin/Debug/net7.0-maccatalyst/maccatalyst-arm64/MySingleView.app/Contents/MonoBundle/libmonosgen-2.0.dylib : mono_jit_runtime_invoke
0x10e72313c - ./xamarin/xamarin-macios/tests/dotnet/MySingleView/bin/Debug/net7.0-maccatalyst/maccatalyst-arm64/MySingleView.app/Contents/MonoBundle/libmonosgen-2.0.dylib : mono_runtime_invoke_checked
0x10e72addc - ./xamarin/xamarin-macios/tests/dotnet/MySingleView/bin/Debug/net7.0-maccatalyst/maccatalyst-arm64/MySingleView.app/Contents/MonoBundle/libmonosgen-2.0.dylib : do_exec_main_checked
0x10e83fa24 - ./xamarin/xamarin-macios/tests/dotnet/MySingleView/bin/Debug/net7.0-maccatalyst/maccatalyst-arm64/MySingleView.app/Contents/MonoBundle/libmonosgen-2.0.dylib : mono_jit_exec
0x10e14829c - ./xamarin/xamarin-macios/tests/dotnet/MySingleView/bin/Debug/net7.0-maccatalyst/maccatalyst-arm64/MySingleView.app/Contents/MonoBundle/libxamarin-dotnet-debug.dylib : xamarin_main
0x105cb5088 - ./xamarin/xamarin-macios/tests/dotnet/MySingleView/bin/Debug/net7.0-maccatalyst/maccatalyst-arm64/MySingleView.app/Contents/MacOS/MySingleView : main
0x18c99ff28 - /usr/lib/dyld : start
=================================================================
Basic Fault Address Reporting
=================================================================
Memory around native instruction pointer (0x18ccc0724):0x18ccc0714 ff 0f 5f d6 c0 03 5f d6 10 29 80 d2 01 10 00 d4 .._..._..)......
0x18ccc0724 03 01 00 54 7f 23 03 d5 fd 7b bf a9 fd 03 00 91 ...T.#...{......
0x18ccc0734 65 e0 ff 97 bf 03 00 91 fd 7b c1 a8 ff 0f 5f d6 e........{...._.
0x18ccc0744 c0 03 5f d6 70 0a 80 d2 01 10 00 d4 03 01 00 54 .._.p..........T
=================================================================
Managed Stacktrace:
=================================================================
at <unknown> <0xffffffff>
at System.Runtime.CompilerServices.RuntimeHelpers:RunClassConstructor <0x00007>
at System.Runtime.CompilerServices.RuntimeHelpers:RunClassConstructor <0x00033>
at System.SR:InternalGetResourceString <0x0075f>
at System.SR:GetResourceString <0x0006b>
at System.SR:get_Arg_NullReferenceException <0x0002f>
at System.NullReferenceException:.ctor <0x0002b>
at System.Object:runtime_invoke_dynamic <0x00127>
at <unknown> <0xffffffff>
at UIKit.UIApplication:xamarin_UIApplicationMain <0x00007>
at UIKit.UIApplication:UIApplicationMain <0x00063>
at UIKit.UIApplication:Main <0x0013b>
at MySingleView.Application:Main <0x00097>
at System.Object:runtime_invoke_dynamic <0x00127>
=================================================================
make: *** [run-test] Abort trap: 6
The same code works fine with /p:MtouchDebug=false
or in the Release configuration.
I'm not sure if this is a bug in Mono or in Xamarin. It seems to be similar to #47121 and dotnet/macios#7742.