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

iOS18 and Xcode 16 native libraries SIGSEV segmentation fault #22007

Open
PureWeen opened this issue Jan 17, 2025 · 2 comments
Open

iOS18 and Xcode 16 native libraries SIGSEV segmentation fault #22007

PureWeen opened this issue Jan 17, 2025 · 2 comments

Comments

@PureWeen
Copy link


Issue moved from dotnet/maui#27209


From @amdlopes on Friday, January 17, 2025 3:55:37 PM

Description

Segmentation fault SIGSEV when hitting one specific function of our native libraries (Obj-C & C) upon running our unit test app in an iOS 18.2.1 iPhoneXR.

The native library is binded to .net-ios/MAUI using a classical recommended ApiDefinition.cs way.

My suspicions are around multi thread (xUnit tests are running in parallel) and something that might have fundamentally changed memory wise in iOS 18.X / xCode 16.X. However, the logs for those do not specify anything in that regard.

Any help would be much appreciated.
Can provide eventually a repro project (not made yet) but want to test the waters first!

Regards

Log provided is already with:

<PropertyGroup>
	<MtouchNoSymbolStrip>true</MtouchNoSymbolStrip>
	<UseInterpreter>True</UseInterpreter>
</PropertyGroup>

Development environment

Development environment where issue occurs:

xCode Version 16.2 (16C5032a)
macOS 15.2 (24C101)

.NET SDK:
 Version:           9.0.102
 Commit:            cb83cd4923
 Workload version:  9.0.100-manifests.d67a1f3e
 MSBuild version:   17.12.18+ed8c6aec5

Installed Workload Id      Manifest Version       Installation Source
---------------------------------------------------------------------
android                    35.0.24/9.0.100        SDK 9.0.100        
ios                        18.2.9170/9.0.100      SDK 9.0.100        
maui-android               9.0.14/9.0.100         SDK 9.0.100        
maui-ios                   9.0.14/9.0.100         SDK 9.0.100        

Development environment where issue does not occur:

xCode Version 15.0.1 (15A507)
macOS 13.5.2 (22G91)

.NET SDK:
 Version:           8.0.204
 Commit:            c338c7548c
 Workload version:  8.0.200-manifests.a39c3a9c

Installed Workload Id      Manifest Version       Installation Source
---------------------------------------------------------------------
maui-ios                   8.0.7/8.0.100          SDK 8.0.200        
maui-android               8.0.7/8.0.100          SDK 8.0.200        
ios                        17.2.8053/8.0.100      SDK 8.0.200        
android                    34.0.95/8.0.100        SDK 8.0.200   

When running in devices iOS < 18.X the issue does not occur independently of the development environment used. This seems specific to iOS 18 and compiling using xCode 16.2 (embedded component iOS SDK 18.2).

Specific function that causes the SIGSEV crash

.net binding ApiDefinition.cs

[Export ("canny:edgeMap:gradX:gradY:width:height:thres_l:thres_h:")]
int Canny (IntPtr I, IntPtr edgeMap, IntPtr gradX, IntPtr gradY, int width, int height, int thresL, int thresH);

Obj-C method

- (int)canny:(int*)I edgeMap:(int*)edgeMap gradX:(float*)gradX gradY:(float*)gradY width:(int)width height:(int)height thres_l:(int)thres_l thres_h:(int)thres_h;

csproj

Removed some applicationId's, names and resources etc that are not relevant for this:

<Project Sdk="Microsoft.NET.Sdk">

	<PropertyGroup>
		<TargetFramework>net8.0-ios</TargetFramework>
		<OutputType>Exe</OutputType>
		<RootNamespace>xxxxx</RootNamespace>
		<UseMaui>true</UseMaui>
		<ImplicitUsings>enable</ImplicitUsings>

		<!-- Display name -->
		<ApplicationTitle>xxxxx</ApplicationTitle>

		<!-- App Identifier -->
		<ApplicationId>xxxxx</ApplicationId>
		<ApplicationIdGuid>xxxxx</ApplicationIdGuid>

		<!-- Versions -->
		<ApplicationDisplayVersion>1.0</ApplicationDisplayVersion>
		<ApplicationVersion>1</ApplicationVersion>

		<SupportedOSPlatformVersion Condition="$([MSBuild]::GetTargetPlatformIdentifier('$(TargetFramework)')) == 'ios'">11.0</SupportedOSPlatformVersion>
	</PropertyGroup>

	<PropertyGroup>
		<MtouchNoSymbolStrip>true</MtouchNoSymbolStrip>
		<UseInterpreter>True</UseInterpreter>
	</PropertyGroup>
	
	<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
	  <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
	</PropertyGroup>
	<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
	  <AllowUnsafeBlocks>true</AllowUnsafeBlocks>
	</PropertyGroup>

	<ItemGroup>
		<PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="7.0.0" />
		<PackageReference Include="xunit.runner.utility" Version="2.6.2" />
		<PackageReference Include="xunit" Version="2.6.2" />
		<PackageReference Include="Microsoft.DotNet.XHarness.TestRunners.Xunit" Version="1.0.0-prerelease.21558.2" />
	</ItemGroup>

</Project>

Steps to Reproduce

  1. Run our unit test project using the development environment above

Expected outcome: tests passing
Actual outcome: SIGSEV native library crash

Link to public reproduction project repository

No response

Version with bug

9.0.10 SR1

Is this a regression from previous behavior?

Yes, this used to work in .NET MAUI

Last version that worked well

8.0.20 SR4

Affected platforms

iOS

Affected platform versions

iOS 18.2.1 (suspected all iOS 18.X.X)

Did you find any workaround?

Not yet.

The bindings are done using IntPtr on .net side -> pointer to typed arrays in Obj-C (int*, float*, ...)

  • Tried a few things around changing order of the arguments in the binding project.

  • Tried not using the current fixed (unsafe) statements and use (safe) code, example:

GCHandle pinnedLumArray = GCHandle.Alloc(luminance, GCHandleType.Pinned);
IntPtr imagelumPtr = pinnedLumArray.AddrOfPinnedObject();

instead of

IntPtr intPtr;
unsafe
{
        fixed (float* pArray = array)
	{
		intPtr = new IntPtr((void*)pArray);
	}
}
  • Tried nested fixed statements to ensure memory doenst get removed by GC

  • Some other stuff that i honestly can't remember - it's been a couple of days

Relevant log output

=================================================================
	Native Crash Reporting
=================================================================
Got a SIGSEGV 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:
=================================================================
	0x103118724 - /private/var/containers/Bundle/Application/AE2283C8-B483-47C6-88FB-A33E94352F45/NovarumDX.Imaging.iOS.Test.app/NovarumDX.Imaging.iOS.Test : AppleCryptoNative_X509ImportCollection
	0x1031037ec - /private/var/containers/Bundle/Application/AE2283C8-B483-47C6-88FB-A33E94352F45/NovarumDX.Imaging.iOS.Test.app/NovarumDX.Imaging.iOS.Test : AppleCryptoNative_X509ImportCollection
	0x1030e6478 - /private/var/containers/Bundle/Application/AE2283C8-B483-47C6-88FB-A33E94352F45/NovarumDX.Imaging.iOS.Test.app/NovarumDX.Imaging.iOS.Test : AppleCryptoNative_X509ImportCollection
	0x21a70cca8 - /usr/lib/system/libsystem_platform.dylib : <redacted>
	0x21c - Unknown
	0x102e0c918 - /private/var/containers/Bundle/Application/AE2283C8-B483-47C6-88FB-A33E94352F45/NovarumDX.Imaging.iOS.Test.app/NovarumDX.Imaging.iOS.Test : xamarin_get_original_working_directory_path
	0x102dc995c - /private/var/containers/Bundle/Application/AE2283C8-B483-47C6-88FB-A33E94352F45/NovarumDX.Imaging.iOS.Test.app/NovarumDX.Imaging.iOS.Test : 
	0x103127154 - /private/var/containers/Bundle/Application/AE2283C8-B483-47C6-88FB-A33E94352F45/NovarumDX.Imaging.iOS.Test.app/NovarumDX.Imaging.iOS.Test : AppleCryptoNative_X509ImportCollection
	0x10311c3d8 - /private/var/containers/Bundle/Application/AE2283C8-B483-47C6-88FB-A33E94352F45/NovarumDX.Imaging.iOS.Test.app/NovarumDX.Imaging.iOS.Test : AppleCryptoNative_X509ImportCollection
	0x103119ecc - /private/var/containers/Bundle/Application/AE2283C8-B483-47C6-88FB-A33E94352F45/NovarumDX.Imaging.iOS.Test.app/NovarumDX.Imaging.iOS.Test : AppleCryptoNative_X509ImportCollection
	0x1030e95e8 - /private/var/containers/Bundle/Application/AE2283C8-B483-47C6-88FB-A33E94352F45/NovarumDX.Imaging.iOS.Test.app/NovarumDX.Imaging.iOS.Test : AppleCryptoNative_X509ImportCollection
	0x103091168 - /private/var/containers/Bundle/Application/AE2283C8-B483-47C6-88FB-A33E94352F45/NovarumDX.Imaging.iOS.Test.app/NovarumDX.Imaging.iOS.Test : AppleCryptoNative_X509ImportCollection
	0x103098714 - /private/var/containers/Bundle/Application/AE2283C8-B483-47C6-88FB-A33E94352F45/NovarumDX.Imaging.iOS.Test.app/NovarumDX.Imaging.iOS.Test : AppleCryptoNative_X509ImportCollection
	0x103055574 - /private/var/containers/Bundle/Application/AE2283C8-B483-47C6-88FB-A33E94352F45/NovarumDX.Imaging.iOS.Test.app/NovarumDX.Imaging.iOS.Test : AppleCryptoNative_X509ImportCollection
	0x10305f330 - /private/var/containers/Bundle/Application/AE2283C8-B483-47C6-88FB-A33E94352F45/NovarumDX.Imaging.iOS.Test.app/NovarumDX.Imaging.iOS.Test : AppleCryptoNative_X509ImportCollection
	0x103128720 - /private/var/containers/Bundle/Application/AE2283C8-B483-47C6-88FB-A33E94352F45/NovarumDX.Imaging.iOS.Test.app/NovarumDX.Imaging.iOS.Test : AppleCryptoNative_X509ImportCollection
	0x103126e04 - /private/var/containers/Bundle/Application/AE2283C8-B483-47C6-88FB-A33E94352F45/NovarumDX.Imaging.iOS.Test.app/NovarumDX.Imaging.iOS.Test : AppleCryptoNative_X509ImportCollection
	0x10311c2f8 - /private/var/containers/Bundle/Application/AE2283C8-B483-47C6-88FB-A33E94352F45/NovarumDX.Imaging.iOS.Test.app/NovarumDX.Imaging.iOS.Test : AppleCryptoNative_X509ImportCollection
	0x103119ecc - /private/var/containers/Bundle/Application/AE2283C8-B483-47C6-88FB-A33E94352F45/NovarumDX.Imaging.iOS.Test.app/NovarumDX.Imaging.iOS.Test : AppleCryptoNative_X509ImportCollection
	0x1030e95e8 - /private/var/containers/Bundle/Application/AE2283C8-B483-47C6-88FB-A33E94352F45/NovarumDX.Imaging.iOS.Test.app/NovarumDX.Imaging.iOS.Test : AppleCryptoNative_X509ImportCollection
	0x103091168 - /private/var/containers/Bundle/Application/AE2283C8-B483-47C6-88FB-A33E94352F45/NovarumDX.Imaging.iOS.Test.app/NovarumDX.Imaging.iOS.Test : AppleCryptoNative_X509ImportCollection
	0x1030a63fc - /private/var/containers/Bundle/Application/AE2283C8-B483-47C6-88FB-A33E94352F45/NovarumDX.Imaging.iOS.Test.app/NovarumDX.Imaging.iOS.Test : AppleCryptoNative_X509ImportCollection
	0x21a7b57d0 - /usr/lib/system/libsystem_pthread.dylib : _pthread_start
	0x21a7b5480 - /usr/lib/system/libsystem_pthread.dylib : thread_start

=================================================================
	Basic Fault Address Reporting
=================================================================
Memory around native instruction pointer (0x10426f238):0x10426f228  f1 41 14 1b a1 da 71 b8 21 01 00 35 31 7e 40 93  .A....q.!..51~@.
0x10426f238  81 7b 71 bc 20 20 20 1e ab 00 00 54 70 da 37 b8  .{q.   ....Tp.7.
0x10426f248  6f db 37 b8 f7 06 00 11 ab 7a 31 b8 8c 11 00 91  o.7......z1.....
0x10426f258  9f 81 00 f1 e1 fd ff 54 08 05 00 91 1f c1 37 eb  .......T......7.

=================================================================
	Managed Stacktrace:
=================================================================
	  at <unknown> <0xffffffff>
	  at ApiDefinition.Messaging:int_objc_msgSend_IntPtr_IntPtr_IntPtr_IntPtr_int_int_int_int <0x00104>
	  at MyAccelerateBinding.MyAccelerate:Canny <0x000c4>
	  at NovarumDX.Imaging.iOS.ImageFilters:DistanceTransform <0x001a0>
	  at NovarumDX.Imaging.iOS.PointModelFitter:GetDistanceTransform <0x0009c>
	  at NovarumDX.Imaging.PointModel.PointModelFitterBase:Run <0x0038e>
	  at NovarumDX.Imaging.iOS.Test.TestPMF:RunAnalysisDataset0 <0x00718>
	  at System.Object:runtime_invoke_direct_void__this__ <0x00088>
	  at <unknown> <0x00000>
	  at <unknown> <0xffffffff>
	  at System.Reflection.RuntimeMethodInfo:InternalInvoke <0x00074>
	  at System.Reflection.MethodBaseInvoker:InterpretedInvoke_Method <0x00050>
	  at System.Reflection.MethodBaseInvoker:InvokeWithNoArgs <0x000ba>
	  at System.Reflection.RuntimeMethodInfo:Invoke <0x00152>
	  at System.Reflection.MethodBase:Invoke <0x0004e>
	  at Xunit.Sdk.TestInvoker`1:CallTestMethod <0x00052>
	  at <<InvokeTestMethodAsync>b__1>d:MoveNext <0x00402>
	  at System.Runtime.CompilerServices.AsyncMethodBuilderCore:Start <0x00098>
	  at System.Runtime.CompilerServices.AsyncTaskMethodBuilder:Start <0x00016>
	  at <>c__DisplayClass48_0:<InvokeTestMethodAsync>b__1 <0x0006c>
	  at <AggregateAsync>d__4:MoveNext <0x0008a>
	  at System.Runtime.CompilerServices.AsyncMethodBuilderCore:Start <0x00098>
	  at System.Runtime.CompilerServices.AsyncTaskMethodBuilder:Start <0x00016>
	  at Xunit.Sdk.ExecutionTimer:AggregateAsync <0x00080>
	  at <>c__DisplayClass48_0:<InvokeTestMethodAsync>b__0 <0x000a4>
	  at <RunAsync>d__9:MoveNext <0x00068>
	  at System.Runtime.CompilerServices.AsyncMethodBuilderCore:Start <0x00098>
	  at System.Runtime.CompilerServices.AsyncTaskMethodBuilder:Start <0x00016>
	  at Xunit.Sdk.ExceptionAggregator:RunAsync <0x00080>
	  at <InvokeTestMethodAsync>d__48:MoveNext <0x00154>
	  at System.Runtime.CompilerServices.AsyncMethodBuilderCore:Start <0x00098>
	  at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1:Start <0x00016>
	  at Xunit.Sdk.TestInvoker`1:InvokeTestMethodAsync <0x00080>
	  at Xunit.Sdk.XunitTestInvoker:InvokeTestMethodAsync <0x00110>
	  at <<RunAsync>b__47_0>d:MoveNext <0x00490>
	  at System.Runtime.CompilerServices.AsyncMethodBuilderCore:Start <0x00098>
	  at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1:Start <0x00016>
	  at Xunit.Sdk.TestInvoker`1:<RunAsync>b__47_0 <0x0006c>
	  at <RunAsync>d__10`1:MoveNext <0x00068>
	  at System.Runtime.CompilerServices.AsyncMethodBuilderCore:Start <0x00098>
	  at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1:Start <0x00016>
	  at Xunit.Sdk.ExceptionAggregator:RunAsync <0x00080>
	  at Xunit.Sdk.TestInvoker`1:RunAsync <0x00056>
	  at Xunit.Sdk.XunitTestRunner:InvokeTestMethodAsync <0x00108>
	  at <InvokeTestAsync>d__4:MoveNext <0x001bc>
	  at System.Runtime.CompilerServices.AsyncMethodBuilderCore:Start <0x00098>
	  at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1:Start <0x00016>
	  at Xunit.Sdk.XunitTestRunner:InvokeTestAsync <0x00080>
	  at <>c__DisplayClass43_0:<RunAsync>b__0 <0x0003a>
	  at <RunAsync>d__10`1:MoveNext <0x00068>
	  at System.Runtime.CompilerServices.AsyncMethodBuilderCore:Start <0x00098>
	  at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1:Start <0x00016>
	  at Xunit.Sdk.ExceptionAggregator:RunAsync <0x00080>
	  at <RunAsync>d__43:MoveNext <0x00362>
	  at System.Runtime.CompilerServices.AsyncMethodBuilderCore:Start <0x00098>
	  at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1:Start <0x00016>
	  at Xunit.Sdk.TestRunner`1:RunAsync <0x0006c>
	  at Xunit.Sdk.XunitTestCaseRunner:RunTestAsync <0x00184>
	  at <RunAsync>d__19:MoveNext <0x00264>
	  at System.Runtime.CompilerServices.AsyncMethodBuilderCore:Start <0x00098>
	  at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1:Start <0x00016>
	  at Xunit.Sdk.TestCaseRunner`1:RunAsync <0x0006c>
	  at Xunit.Sdk.XunitTestCase:RunAsync <0x000ac>
	  at Xunit.Sdk.XunitTestMethodRunner:RunTestCaseAsync <0x000aa>
	  at <RunTestCasesAsync>d__32:MoveNext <0x0011e>
	  at System.Runtime.CompilerServices.AsyncMethodBuilderCore:Start <0x00098>
	  at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1:Start <0x00016>
	  at Xunit.Sdk.TestMethodRunner`1:RunTestCasesAsync <0x0006c>
	  at <RunAsync>d__31:MoveNext <0x00168>
	  at System.Runtime.CompilerServices.AsyncMethodBuilderCore:Start <0x00098>
	  at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1:Start <0x00016>
	  at Xunit.Sdk.TestMethodRunner`1:RunAsync <0x0006c>
	  at Xunit.Sdk.XunitTestClassRunner:RunTestMethodAsync <0x000ec>
	  at <RunTestMethodsAsync>d__38:MoveNext <0x00424>
	  at System.Runtime.CompilerServices.AsyncMethodBuilderCore:Start <0x00098>
	  at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1:Start <0x00016>
	  at Xunit.Sdk.TestClassRunner`1:RunTestMethodsAsync <0x0006c>
	  at <RunAsync>d__37:MoveNext <0x0028e>
	  at System.Runtime.CompilerServices.AsyncMethodBuilderCore:Start <0x00098>
	  at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1:Start <0x00016>
	  at Xunit.Sdk.TestClassRunner`1:RunAsync <0x0006c>
	  at Xunit.Sdk.XunitTestCollectionRunner:RunTestClassAsync <0x000fc>
	  at <RunTestClassesAsync>d__28:MoveNext <0x001f0>
	  at System.Runtime.CompilerServices.AsyncMethodBuilderCore:Start <0x00098>
	  at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1:Start <0x00016>
	  at Xunit.Sdk.TestCollectionRunner`1:RunTestClassesAsync <0x0006c>
	  at <RunAsync>d__27:MoveNext <0x0028e>
	  at System.Runtime.CompilerServices.AsyncMethodBuilderCore:Start <0x00098>
	  at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1:Start <0x00016>
	  at Xunit.Sdk.TestCollectionRunner`1:RunAsync <0x0006c>
	  at Xunit.Sdk.XunitTestAssemblyRunner:RunTestCollectionAsync <0x000b4>
	  at <>c__DisplayClass14_2:<RunTestCollectionsAsync>b__2 <0x000b6>
	  at System.Threading.Tasks.Task`1:InnerInvoke <0x00056>
	  at <>c:<.cctor>b__281_0 <0x00024>
	  at System.Threading.ExecutionContext:RunInternal <0x00136>
	  at System.Threading.Tasks.Task:ExecuteWithThreadLocal <0x00298>
	  at System.Threading.Tasks.Task:ExecuteEntry <0x000e6>
	  at <>c:<.cctor>b__8_0 <0x00024>
	  at Xunit.Sdk.MaxConcurrencySyncContext:RunOnSyncContext <0x0004a>
	  at <>c__DisplayClass11_0:<WorkerThreadProc>b__0 <0x00070>
	  at System.Action`1:invoke_void_T <0x0013e>
	  at System.Threading.ExecutionContext:RunInternal <0x00136>
	  at System.Threading.ExecutionContext:Run <0x00042>
	  at System.Object:lambda_method2 <0x00038>
	  at Xunit.Sdk.ExecutionContextHelper:Run <0x00050>
	  at Xunit.Sdk.MaxConcurrencySyncContext:WorkerThreadProc <0x001c0>
	  at <>c:<QueueUserWorkItem>b__5_0 <0x00046>
	  at System.Threading.Tasks.Task:InnerInvoke <0x000b0>
	  at <>c:<.cctor>b__281_0 <0x00024>
	  at System.Threading.ExecutionContext:RunInternal <0x00136>
	  at System.Threading.Tasks.Task:ExecuteWithThreadLocal <0x00298>
	  at System.Threading.Tasks.Task:ExecuteEntryUnsafe <0x000a2>
	  at <>c:<.cctor>b__10_0 <0x0002c>
	  at StartHelper:RunWorker <0x00110>
	  at StartHelper:Run <0x0008e>
	  at System.Threading.Thread:StartCallback <0x0004c>
	  at System.Object:runtime_invoke_direct_void__this__ <0x00088>
	  at <unknown> <0x00000>
=================================================================

=================================================================
	Native Crash Reporting
=================================================================
Got a SIGSEGV while executing native code. This usually indicates
a fatal error in the mono runtime or one of the native libraries 
used by your application.
=================================================================

An error has occurred in the native fault reporting. Some diagnostic information will be unavailable.

=================================================================
	Native stacktrace:
=================================================================
	0x103118724 - /private/var/containers/Bundle/Application/AE2283C8-B483-47C6-88FB-A33E94352F45/NovarumDX.Imaging.iOS.Test.app/NovarumDX.Imaging.iOS.Test : AppleCryptoNative_X509ImportCollection
	0x1031037ec - /private/var/containers/Bundle/Application/AE2283C8-B483-47C6-88FB-A33E94352F45/NovarumDX.Imaging.iOS.Test.app/NovarumDX.Imaging.iOS.Test : AppleCryptoNative_X509ImportCollection
	0x1030e6478 - /private/var/containers/Bundle/Application/AE2283C8-B483-47C6-88FB-A33E94352F45/NovarumDX.Imaging.iOS.Test.app/NovarumDX.Imaging.iOS.Test : AppleCryptoNative_X509ImportCollection
	0x21a70cca8 - /usr/lib/system/libsystem_platform.dylib : <redacted>
	0x21c - Unknown
	0x102e0c918 - /private/var/containers/Bundle/Application/AE2283C8-B483-47C6-88FB-A33E94352F45/NovarumDX.Imaging.iOS.Test.app/NovarumDX.Imaging.iOS.Test : xamarin_get_original_working_directory_path
	0x102dc995c - /private/var/containers/Bundle/Application/AE2283C8-B483-47C6-88FB-A33E94352F45/NovarumDX.Imaging.iOS.Test.app/NovarumDX.Imaging.iOS.Test : 
	0x103127154 - /private/var/containers/Bundle/Application/AE2283C8-B483-47C6-88FB-A33E94352F45/NovarumDX.Imaging.iOS.Test.app/NovarumDX.Imaging.iOS.Test : AppleCryptoNative_X509ImportCollection
	0x10311c3d8 - /private/var/containers/Bundle/Application/AE2283C8-B483-47C6-88FB-A33E94352F45/NovarumDX.Imaging.iOS.Test.app/NovarumDX.Imaging.iOS.Test : AppleCryptoNative_X509ImportCollection
	0x103119ecc - /private/var/containers/Bundle/Application/AE2283C8-B483-47C6-88FB-A33E94352F45/NovarumDX.Imaging.iOS.Test.app/NovarumDX.Imaging.iOS.Test : AppleCryptoNative_X509ImportCollection
	0x1030e95e8 - /private/var/containers/Bundle/Application/AE2283C8-B483-47C6-88FB-A33E94352F45/NovarumDX.Imaging.iOS.Test.app/NovarumDX.Imaging.iOS.Test : AppleCryptoNative_X509ImportCollection
	0x103091168 - /private/var/containers/Bundle/Application/AE2283C8-B483-47C6-88FB-A33E94352F45/NovarumDX.Imaging.iOS.Test.app/NovarumDX.Imaging.iOS.Test : AppleCryptoNative_X509ImportCollection
	0x103098714 - /private/var/containers/Bundle/Application/AE2283C8-B483-47C6-88FB-A33E94352F45/NovarumDX.Imaging.iOS.Test.app/NovarumDX.Imaging.iOS.Test : AppleCryptoNative_X509ImportCollection
	0x103055574 - /private/var/containers/Bundle/Application/AE2283C8-B483-47C6-88FB-A33E94352F45/NovarumDX.Imaging.iOS.Test.app/NovarumDX.Imaging.iOS.Test : AppleCryptoNative_X509ImportCollection
	0x10305f330 - /private/var/containers/Bundle/Application/AE2283C8-B483-47C6-88FB-A33E94352F45/NovarumDX.Imaging.iOS.Test.app/NovarumDX.Imaging.iOS.Test : AppleCryptoNative_X509ImportCollection
	0x103128720 - /private/var/containers/Bundle/Application/AE2283C8-B483-47C6-88FB-A33E94352F45/NovarumDX.Imaging.iOS.Test.app/NovarumDX.Imaging.iOS.Test : AppleCryptoNative_X509ImportCollection
	0x103126e04 - /private/var/containers/Bundle/Application/AE2283C8-B483-47C6-88FB-A33E94352F45/NovarumDX.Imaging.iOS.Test.app/NovarumDX.Imaging.iOS.Test : AppleCryptoNative_X509ImportCollection
	0x10311c2f8 - /private/var/containers/Bundle/Application/AE2283C8-B483-47C6-88FB-A33E94352F45/NovarumDX.Imaging.iOS.Test.app/NovarumDX.Imaging.iOS.Test : AppleCryptoNative_X509ImportCollection
	0x103119ecc - /private/var/containers/Bundle/Application/AE2283C8-B483-47C6-88FB-A33E94352F45/NovarumDX.Imaging.iOS.Test.app/NovarumDX.Imaging.iOS.Test : AppleCryptoNative_X509ImportCollection
	0x1030e95e8 - /private/var/containers/Bundle/Application/AE2283C8-B483-47C6-88FB-A33E94352F45/NovarumDX.Imaging.iOS.Test.app/NovarumDX.Imaging.iOS.Test : AppleCryptoNative_X509ImportCollection
	0x103091168 - /private/var/containers/Bundle/Application/AE2283C8-B483-47C6-88FB-A33E94352F45/NovarumDX.Imaging.iOS.Test.app/NovarumDX.Imaging.iOS.Test : AppleCryptoNative_X509ImportCollection
	0x1030a63fc - /private/var/containers/Bundle/Application/AE2283C8-B483-47C6-88FB-A33E94352F45/NovarumDX.Imaging.iOS.Test.app/NovarumDX.Imaging.iOS.Test : AppleCryptoNative_X509ImportCollection
	0x21a7b57d0 - /usr/lib/system/libsystem_pthread.dylib : _pthread_start
	0x21a7b5480 - /usr/lib/system/libsystem_pthread.dylib : thread_start

Exiting early due to double fault.
@PureWeen
Copy link
Author


Issue moved from dotnet/maui#27209


From @amdlopes on Friday, January 17, 2025 8:24:33 PM

Some edits with more info and correct console log from device.

@amdlopes
Copy link

@PureWeen could i please have permissions to edit the original ticket or is that not possible as soon as you move it?
I raised in MAUI because the unit test app is a MAUI app even of only targets .net-ios - apologies. It's probably related with .net-ios or iOS itself so i agree with the move.

Anyway, if not possible... Tried a few more things:

  • Reduce the number of args passed into the obj-C binded method - issue still occurs
  • I do some mallocs in the obj-C and these are done all in one go at the start and freed at the end. I moved the free instructions to be done as soon as the allocations are not longer needed - issue still occurs

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants