Search Issue Tracker

Fixed

Fixed in 1.4.12, 1.6.2, 1.7.0-pre.1

Votes

0

Found in [Package]

1.6.0-pre.2

Issue ID

BUR-1186

Regression

Yes

App crashes when using Jobs Scheduling with error "Unable to find internal function `Unity.Collections.LowLevel.Unsafe.Unsafe'"

Package: Burst

-

Steps to reproduce:
1. Open the attached project
2. Have an Android (or IOS) device connected
3. In the Build Settings window switch to the Android (or IOS) platform
4. Click "Build And Run"

Expected results: app launches and displays spinning cube
Actual result: app crashes after the Unity splash screen is displayed

Reproducible with: 0.14.0-preview.16 (2020.1.0b15), 0.15.0-preview.21 (2020.3.4f1, 2021.1.3f1, 2021.2.0a13)
Not reproducible with: 0.12.0-preview.13 (2020.1.0b15)
Could not test with: 2018.4.34f1, 2019.4.24f1 - Collections 0.14.0-preview.16 and above are not available for these versions

Reproducible devices:
VLNQA00357 iPhone 12 mini (IOS 14.1)
VLNQA00335, Samsung Galaxy S20 5G (SM-G986B), Android 10, CPU: Exynos 990, GPU: Mali-G77
VLNQA00286, Meizu - (PRO 5), Android 7.0, CPU: Exynos 7 Octa 7420, GPU: Mali-T760
VLNQA00294, Oppo Reno Z 中国版 (PCDM10), Android 9, CPU: Mediatek MT6779 Helio P90, GPU: PowerVR Rogue GM9446
VLNQA00317, Vivo V1924A (V1924A), Android 9, CPU: Snapdragon 855 SM8150, GPU: Adreno (TM) 640
VLNQA00313, Huawei Y6 Ⅱ Compact (HUAWEI LYO-L01), Android 5.1, CPU: MediaTek MT6735, GPU: Mali-T720

Notes:
- Only reproduces with IL2CPP scripting backend selected, with both .NET Standard 2.0 and .NET 4.x
- Reproduces with and without Burst compilation enabled
- Does not reproduce on Windows and Linux Standalone builds

- Error message visible in the Android Logcat:
Error Unity Unable to find internal function `Unity.Collections.LowLevel.Unsafe.UnsafeUtility::Malloc`
Error Unity
Error Unity Unable to find internal function `Unity.Burst.LowLevel.BurstCompilerService::GetOrCreateSharedMemory`
Error Unity
Warn p_crash_132256 0xebadde09 skipped times: 0
Error CRASH *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
Error CRASH Version '2021.2.0a13 (71a161db37e2)', Build type 'Development', Scripting Backend 'il2cpp', CPU 'armeabi-v7a'
Error CRASH Build fingerprint: 'samsung/y2sxeea/y2s:10/QP1A.190711.020/G986BXXU2ATDD:user/release-keys'
Error CRASH Revision: '22'
Error CRASH ABI: 'arm'
Error CRASH Timestamp: 2021-04-22 12:01:03+0300

- Part of stack trace from IOS:
"test2ro was compiled with optimization - stepping may behave oddly; variables may not be available.
* thread #1, queue = 'com.apple.main-thread', stop reason = EXC_BAD_ACCESS (code=1, address=0x0)
frame #0: 0x0000000000000000
frame #1: 0x0000000103255f54 UnityFramework`burst.initialize0 + 100
frame #2: 0x0000000103256ccc UnityFramework`Staticburst_initialize + 16
frame #3: 0x0000000102a254dc UnityFramework`BurstCompilerService::StaticResolve(ScriptingMethodPtr, void*, int, void (*)(void*, int, void*), void (*)(void*, BurstLogType, char const*, char const*, int), char const*) + 76
frame #4: 0x0000000102a24ca4 UnityFramework`BurstCompilerService::CompileAsync(ScriptingObjectPtr, void*, int, void (*)(void*, int, void*), void (*)(void*, BurstLogType, char const*, char const*, int), char const*) + 280
frame #5: 0x0000000102a24d48 UnityFramework`BurstCompilerService::CompileAsync(ScriptingClassPtr, ScriptingObjectPtr, void*, int, void (*)(void*, int, void*), void (*)(void*, BurstLogType, char const*, char const*, int)) + 92
frame #6: 0x0000000102b4417c UnityFramework`ProcessCompilationRequests(dynamic_array<JobReflectionDataCompilationRequest, 0ul>&) + 96
frame #7: 0x0000000102b43d60 UnityFramework`JobReflectionData::ScheduleBurstCompilation() const + 76..."

  1. Resolution Note (fix version 1.7.0-pre.1):

    We now generate a link.xml to avoid stripping removing functions that burst initialise relies on.

  2. Resolution Note (fix version 1.6.2):

    Burst now generates a link.xml for all static constructors that it meets.

  3. Resolution Note (fix version 1.4.12):

    Generate link.xml to prevent static constructors being stripped.

  4. Resolution Note:

    Burst now generates a link.xml to avoid static constructors that burst requires from being deleted

Add comment

Log in to post comment

All about bugs

View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.