Repository navigation
[Android arm32] System.Security.Cryptography.Pkcs.Tests crashes in HmacCreate #131856
Description
Activity
- addedblocking-clean-ciBlocking PR or rolling runs of 'runtime' or 'runtime-extra-platforms'Blocking PR or rolling runs of 'runtime' or 'runtime-extra-platforms'untriagedNew issue has not been triaged by the area ownerNew issue has not been triaged by the area ownerKnown Build ErrorUse this to report build issues in the .NET Helix tabUse this to report build issues in the .NET Helix tab
on Aug 5, 2026 dotnet-policy-service commented
on Aug 5, 2026 ContributorMore actionsTagging subscribers to 'arch-android': @vitek-karas, @simonrozsival, @steveisok, @akoeplinger
See info in area-owners.md if you want to be subscribed.dotnet-policy-service commented
on Aug 5, 2026 ContributorMore actionsTagging subscribers to this area: @bartonjs, @vcsjones, @dotnet/area-system-security
See info in area-owners.md if you want to be subscribed.Posting what Copilot makes of the crash:
Conclusion: We can pinpoint the immediate crash mechanism, but not why ART reaches that invalid entrypoint.
- Crash mechanism
-
XHarness reports exit 80 ( APP_CRASH ); Android reports SIGSEGV , SEGV_ACCERR .
-
ART attempts to execute QuickImtConflictTrampoline from a boot.oat mapping that is rw- , not executable.
-
Native stack is identical in both occurrences:
/system/framework/arm/boot.oat QuickImtConflictTrampoline /memfd:jit-cache javax.crypto.Mac.getInstance+136 libart.so CallStaticObjectMethod... libSystem.Security...Android.so CryptoNative_HmacCreate+332
This occurs while CryptoNative_HmacCreate calls Java Mac.getInstance .
- Strongest indicator
- This looks most like an ART 32-bit JIT/dispatch problem, although that is not proven. Mac.getInstance has been ART-JIT-compiled, then dispatches through an IMT trampoline pointing into non-executable memory.
- Both failures have the same ART and boot.oat build IDs, offsets, test ordering, and stack—even though they occurred on two different Pixel 6a devices, different Android monthly builds, and different runtime builds.
- There is no LMK/OOM evidence in either log. The process exited from SIGSEGV , not an OOM kill.
- Memory pressure still cannot be excluded as a trigger, especially 32-bit virtual-address pressure or state left by the preceding deeply nested PFX tests.
Reacted by Matous Kozak@vcsjones Are you targeting .net 11 fix for this ? So we can triage it accordingly
- removeduntriagedNew issue has not been triaged by the area ownerNew issue has not been triaged by the area owner
on Aug 13, 2026 - removedblocking-clean-ciBlocking PR or rolling runs of 'runtime' or 'runtime-extra-platforms'Blocking PR or rolling runs of 'runtime' or 'runtime-extra-platforms'
on Sep 17, 2026 removing blocking-clean-ci as it has not failed in 30 days
24-Hour Hit Count 7-Day Hit Count 1-Month Count
0 0 0
Build Information
Build: 20260803.2
Build error leg or test failing:
android-arm Release AllSubsets_CoreCLR-System.Security.Cryptography.Pkcs.Testsruntime-extra-platformsmain10c04f707d28097296d509a66c6123ee848361e0Windows.11.Amd64.Android-armel.OpenError Details
The Android arm32 test process crashes while
Pkcs12InfoTests.ReadEmptyPfx(Int32)verifies a PKCS#12 MAC. XHarness reports exit code 80 (APP_CRASH).Error Message
{ "ErrorMessage": [ "Got a SIGSEGV while executing native code.", "at Interop+Crypto.<HmacCreate>", "at System.Security.Cryptography.Pkcs.Tests.Pkcs12.Pkcs12InfoTests.ReadEmptyPfx(Int32)" ], "BuildRetry": false, "ExcludeConsoleLog": false }Duplicate Search
No existing issue was found for this
HmacCreate/ReadEmptyPfxAndroid SIGSEGV signature. #37094 is a closed historical issue for different PKCS failures on Android.Note
This issue was drafted with GitHub Copilot assistance.
Known issue validation
Build: 🔎 https://dev.azure.com/dnceng-public/public/_build/results?buildId=1538577
Error message validated:
[Got a SIGSEGV while executing native code. at Interop+Crypto.<HmacCreate> at System.Security.Cryptography.Pkcs.Tests.Pkcs12.Pkcs12InfoTests.ReadEmptyPfx(Int32)]Result validation: ✅ Known issue matched with the provided build.
Validation performed at: 8/5/2026 6:51:18 AM UTC
Report
Summary