Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[mono][arm64] Handle sysctlbyname failing to find system options. #87189

Merged
merged 1 commit into from
Jun 8, 2023

Commits on Jun 6, 2023

  1. [mono][arm64] Handle sysctlbyname failing to find system options.

    This fixes a startup crash on Big Sur:
    
    > error: * Assertion at /Users/runner/work/1/s/src/mono/mono/utils/mono-hwcap-arm64.c:35, condition `res == 0' not met
    
    Because sysctl can't find some of these options:
    
        $ sysctl hw.optional.armv8_crc32
        hw.optional.armv8_crc32: 1
        $ sysctl hw.optional.arm.FEAT_RDM
        sysctl: unknown oid 'hw.optional.arm.FEAT_RDM'
        $ sysctl hw.optional.arm.FEAT_DotProd
        sysctl: unknown oid 'hw.optional.arm.FEAT_DotProd'
        $ sysctl hw.optional.arm.FEAT_SHA1
        sysctl: unknown oid 'hw.optional.arm.FEAT_SHA1'
        $ sysctl hw.optional.arm.FEAT_SHA256
        sysctl: unknown oid 'hw.optional.arm.FEAT_SHA256'
        $ sysctl hw.optional.arm.FEAT_AES
        sysctl: unknown oid 'hw.optional.arm.FEAT_AES'
    
    Full stack trace:
    
    * thread dotnet#1, queue = 'com.apple.main-thread', stop reason = breakpoint 2.1
      * frame #0: 0x0000010ef37560 libmonosgen-2.0.dylib`monoeg_assertion_message
        frame dotnet#1: 0x0000010ef375cc libmonosgen-2.0.dylib`mono_assertion_message + 32
        frame dotnet#2: 0x0000010ef40d6c libmonosgen-2.0.dylib`mono_hwcap_arch_init + 544
        frame dotnet#3: 0x0000010ef54bd8 libmonosgen-2.0.dylib`mono_hwcap_init + 72
        frame dotnet#4: 0x0000010ee14dc0 libmonosgen-2.0.dylib`parse_optimizations + 52
        frame dotnet#5: 0x0000010edbed48 libmonosgen-2.0.dylib`mono_init
        frame dotnet#6: 0x0000010ee18968 libmonosgen-2.0.dylib`mono_jit_init_version
        frame dotnet#7: 0x0000010f48a300 libxamarin-dotnet-debug.dylib`xamarin_bridge_initialize + 216
        frame dotnet#8: 0x0000010f4900a4 libxamarin-dotnet-debug.dylib`xamarin_main + 376
    rolfbjarne committed Jun 6, 2023
    Configuration menu
    Copy the full SHA
    b3fb7c6 View commit details
    Browse the repository at this point in the history