Skip to content

[CoreCLR] Crash on startup in release mode. #10491

@emmauss

Description

@emmauss

Android framework version

net10.0-android (Preview)

Affected platform version

Android 15, SDK: 10.0.100-rc.1.25451.107

Description

On running a new project using coreclr, the app crashes with a StackOverflow exception. See log

This only occurs with release mode.

Steps to Reproduce

  1. Create a new Android project using `dotnet' or VS.
  2. Ensure the project is using net10 and set <UseMonoRuntime>false</UseMonoRuntime>
  3. Run on debug mode. "Hello, Android!" shows.
  4. Run on Release. App crashes immediately

Did you find any workaround?

No response

Relevant log output

Crash log.

2025-09-16 07:42:02.160 24530-24530 DOTNET                  com.companyname.Net10_coreclr        E  Stack overflow.
2025-09-16 07:42:02.165 24530-24659 DOTNET                  com.companyname.Net10_coreclr        E     at Java.Interop.ManagedMarshalMethodsLookupTable.GetFunctionPointer(Int32, Int32, Int32)
2025-09-16 07:42:02.165 24530-24659 DOTNET                  com.companyname.Net10_coreclr        E     at Java.Interop.ManagedMarshalMethodsLookupTable.GetFunctionPointer(Int32, Int32, Int32, IntPtr*)
2025-09-16 07:42:02.165 24530-24659 DOTNET                  com.companyname.Net10_coreclr        E     at Java.Interop.JniEnvironment+InstanceMethods.CallNonvirtualVoidMethod(Java.Interop.JniObjectReference, Java.Interop.JniObjectReference, Java.Interop.JniMethodInfo, Java.Interop.JniArgumentValue*)
2025-09-16 07:42:02.165 24530-24659 DOTNET                  com.companyname.Net10_coreclr        E     at Java.Lang.Error..ctor(System.String)
2025-09-16 07:42:02.165 24530-24659 DOTNET                  com.companyname.Net10_coreclr        E     at Android.Runtime.JavaProxyThrowable.Create(System.Exception)
2025-09-16 07:42:02.165 24530-24659 DOTNET                  com.companyname.Net10_coreclr        E     at Android.Runtime.AndroidEnvironment.UnhandledException(System.Exception)
2025-09-16 07:42:02.165 24530-24659 DOTNET                  com.companyname.Net10_coreclr        E     at Java.Interop.ManagedMarshalMethodsLookupTable.GetFunctionPointer(Int32, Int32, Int32, IntPtr*)
2025-09-16 07:42:02.165 24530-24659 DOTNET                  com.companyname.Net10_coreclr        E     at Java.Interop.JniEnvironment+InstanceMethods.CallNonvirtualVoidMethod(Java.Interop.JniObjectReference, Java.Interop.JniObjectReference, Java.Interop.JniMethodInfo, Java.Interop.JniArgumentValue*)
2025-09-16 07:42:02.165 24530-24659 DOTNET                  com.companyname.Net10_coreclr        E     at Java.Lang.Error..ctor(System.String)
2025-09-16 07:42:02.165 24530-24659 DOTNET                  com.companyname.Net10_coreclr        E     at Android.Runtime.JavaProxyThrowable.Create(System.Exception)
2025-09-16 07:42:02.165 24530-24659 DOTNET                  com.companyname.Net10_coreclr        E     at Android.Runtime.AndroidEnvironment.UnhandledException(System.Exception)
2025-09-16 07:42:02.165 24530-24659 DOTNET                  com.companyname.Net10_coreclr        E     at Java.Interop.ManagedMarshalMethodsLookupTable.GetFunctionPointer(Int32, Int32, Int32, IntPtr*)
2025-09-16 07:42:02.165 24530-24659 DOTNET                  com.companyname.Net10_coreclr        E     at Java.Interop.JniEnvironment+InstanceMethods.CallNonvirtualVoidMethod(Java.Interop.JniObjectReference, Java.Interop.JniObjectReference, Java.Interop.JniMethodInfo, Java.Interop.JniArgumentValue*)
2025-09-16 07:42:02.165 24530-24659 DOTNET                  com.companyname.Net10_coreclr        E     at Java.Lang.Error..ctor(System.String)
2025-09-16 07:42:02.165 24530-24659 DOTNET                  com.companyname.Net10_coreclr        E     at Android.Runtime.JavaProxyThrowable.Create(System.Exception)
2025-09-16 07:42:02.165 24530-24659 DOTNET                  com.companyname.Net10_coreclr        E     at Android.Runtime.AndroidEnvironment.UnhandledException(System.Exception)
2025-09-16 07:42:02.165 24530-24659 DOTNET                  com.companyname.Net10_coreclr        E     at Java.Interop.ManagedMarshalMethodsLookupTable.GetFunctionPointer(Int32, Int32, Int32, IntPtr*)
2025-09-16 07:42:02.165 24530-24659 DOTNET                  com.companyname.Net10_coreclr        E     at Java.Interop.JniEnvironment+InstanceMethods.CallNonvirtualVoidMethod(Java.Interop.JniObjectReference, Java.Interop.JniObjectReference, Java.Interop.JniMethodInfo, Java.Interop.JniArgumentValue*)
2025-09-16 07:42:02.165 24530-24659 DOTNET                  com.companyname.Net10_coreclr        E     at Java.Lang.Error..ctor(System.String)
2025-09-16 07:42:02.165 24530-24659 DOTNET                  com.companyname.Net10_coreclr        E     at Android.Runtime.JavaProxyThrowable.Create(System.Exception)
2025-09-16 07:42:02.165 24530-24659 DOTNET                  com.companyname.Net10_coreclr        E     at Android.Runtime.AndroidEnvironment.UnhandledException(System.Exception)
2025-09-16 07:42:02.165 24530-24659 DOTNET                  com.companyname.Net10_coreclr        E     at Java.Interop.ManagedMarshalMethodsLookupTable.GetFunctionPointer(Int32, Int32, Int32, IntPtr*)
2025-09-16 07:42:02.165 24530-24659 DOTNET                  com.companyname.Net10_coreclr        E     at Java.Interop.JniEnvironment+InstanceMethods.CallNonvirtualVoidMethod(Java.Interop.JniObjectReference, Java.Interop.JniObjectReference, Java.Interop.JniMethodInfo, Java.Interop.JniArgumentValue*)
2025-09-16 07:42:02.165 24530-24659 DOTNET                  com.companyname.Net10_coreclr        E     at Java.Lang.Error..ctor(System.String)
2025-09-16 07:42:02.165 24530-24659 DOTNET                  com.companyname.Net10_coreclr        E     at Android.Runtime.JavaProxyThrowable.Create(System.Exception)
2025-09-16 07:42:02.165 24530-24659 DOTNET                  com.companyname.Net10_coreclr        E     at Android.Runtime.AndroidEnvironment.UnhandledException(System.Exception)
2025-09-16 07:42:02.165 24530-24659 DOTNET                  com.companyname.Net10_coreclr        E     at Java.Interop.ManagedMarshalMethodsLookupTable.GetFunctionPointer(Int32, Int32, Int32, IntPtr*)
2025-09-16 07:42:02.165 24530-24659 DOTNET                  com.companyname.Net10_coreclr        E     at Java.Interop.JniEnvironment+InstanceMethods.CallNonvirtualVoidMethod(Java.Interop.JniObjectReference, Java.Interop.JniObjectReference, Java.Interop.JniMethodInfo, Java.Interop.JniArgumentValue*)
2025-09-16 07:42:02.165 24530-24659 DOTNET                  com.companyname.Net10_coreclr        E     at Java.Lang.Error..ctor(System.String)
...
...
2025-09-16 07:42:02.192 24530-24659 DOTNET                  com.companyname.Net10_coreclr        E     at Java.Lang.Throwable.FromException(System.Exception)
2025-09-16 07:42:02.192 24530-24659 DOTNET                  com.companyname.Net10_coreclr        E     at Android.Runtime.AndroidEnvironment.UnhandledException(System.Exception)
2025-09-16 07:42:02.192 24530-24659 DOTNET                  com.companyname.Net10_coreclr        E     at Java.Interop.ManagedMarshalMethodsLookupTable.GetFunctionPointer(Int32, Int32, Int32, IntPtr*)
2025-09-16 07:42:02.192 24530-24659 DOTNET                  com.companyname.Net10_coreclr        E     at Java.Interop.JniNativeMethods.CallNonvirtualVoidMethodA(IntPtr, IntPtr, IntPtr, IntPtr, IntPtr)
2025-09-16 07:42:02.192 24530-24659 DOTNET                  com.companyname.Net10_coreclr        E     at Java.Interop.JniEnvironment+InstanceMethods.CallNonvirtualVoidMethod(Java.Interop.JniObjectReference, Java.Interop.JniObjectReference, Java.Interop.JniMethodInfo, Java.Interop.JniArgumentValue*)
2025-09-16 07:42:02.192 24530-24659 DOTNET                  com.companyname.Net10_coreclr        E     at Java.Interop.JniPeerMembers+JniInstanceMethods.FinishCreateInstance(System.String, Java.Interop.IJavaPeerable, Java.Interop.JniArgumentValue*)
2025-09-16 07:42:02.192 24530-24659 DOTNET                  com.companyname.Net10_coreclr        E     at Java.Lang.Error..ctor(System.String)
2025-09-16 07:42:02.192 24530-24659 DOTNET                  com.companyname.Net10_coreclr        E     at Android.Runtime.JavaProxyThrowable..ctor(System.String, System.Exception)
2025-09-16 07:42:02.192 24530-24659 DOTNET                  com.companyname.Net10_coreclr        E     at Android.Runtime.JavaProxyThrowable.Create(System.Exception)
2025-09-16 07:42:02.192 24530-24659 DOTNET                  com.companyname.Net10_coreclr        E     at Java.Lang.Throwable.FromException(System.Exception)
2025-09-16 07:42:02.192 24530-24659 DOTNET                  com.companyname.Net10_coreclr        E     at Android.Runtime.AndroidEnvironment.UnhandledException(System.Exception)
2025-09-16 07:42:02.192 24530-24659 DOTNET                  com.companyname.Net10_coreclr        E     at Java.Interop.ManagedMarshalMethodsLookupTable.GetFunctionPointer(Int32, Int32, Int32, IntPtr*)

Metadata

Metadata

Assignees

No one assigned

    Labels

    Area: App RuntimeIssues in `libmonodroid.so`.needs-triageIssues that need to be assigned.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions