pqcrypto icon indicating copy to clipboard operation
pqcrypto copied to clipboard

SIGABRT from `PQCRYPTO_RUST_randombytes`

Open Rawa opened this issue 3 weeks ago • 6 comments

Hello!

In our app, MullvadVPN on android, We've seen rare crashes (SIGABRT) stemming from PQCRYPTO_RUST_randombytes on mostly Android TV devices. I believe one thing they have in common is that they run in a 32-bit mode, even though they may have 64 bit hardware. This has been true for each report I've seen so far.

Unfortunately, I have no way of reproducing this issue, we get about 100 crashes each month. So I don't have much to go on here. I've attached a bunch of reports from our Google Play Console below that might be of help.

*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
pid: 0, tid: 6627 >>> net.mullvad.mullvadvpn <<<

backtrace:
  #00  pc 0x0000000000038f08  /apex/com.android.runtime/lib/bionic/libc.so (abort+172)
  #01  pc 0x00000000006ce00d  /data/app/~~LUfQapgBdk_T-IpOql5Ktw==/net.mullvad.mullvadvpn-nTFH_VjW7v-mvKczCOafiw==/lib/arm/libmullvad_jni.so (PQCRYPTO_RUST_randombytes) (BuildId: 8f7a222b11f6fd2dae186a7105ffd816)
  #02  pc 0x0000000000000004 
*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
pid: 0, tid: 2504 >>> net.mullvad.mullvadvpn <<<

backtrace:
  #00  pc 0x00000000000388c0  /apex/com.android.runtime/lib/bionic/libc.so (abort+172)
  #01  pc 0x00000000006ce00d  /data/app/~~anxwKPWiuVxSBJTrndcxLg==/net.mullvad.mullvadvpn-jFyYe6wewF2EEECFP0hTrA==/lib/arm/libmullvad_jni.so (PQCRYPTO_RUST_randombytes) (BuildId: 8f7a222b11f6fd2dae186a7105ffd816)
  #02  pc 0x00000000000d4afe  [anon:scudo:secondary]
*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
pid: 0, tid: 12078 >>> net.mullvad.mullvadvpn <<<

backtrace:
  #00  pc 0x0000000000062b20  /apex/com.android.runtime/lib/bionic/libc.so (abort+172)
  #01  pc 0x00000000006ce00d  /data/app/~~eSgcug1ApEDnwzunMFxgSA==/net.mullvad.mullvadvpn-aQa27glROI1Ha-nhM4lvVQ==/lib/arm/libmullvad_jni.so (PQCRYPTO_RUST_randombytes) (BuildId: 8f7a222b11f6fd2dae186a7105ffd816)
  #02  pc 0x0000000000000e3e  [anon:libc_malloc]
*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
pid: 0, tid: 12172 >>> net.mullvad.mullvadvpn <<<

backtrace:
  #00  pc 0x000000000003bf0a  /apex/com.android.runtime/lib/bionic/libc.so (abort+138)
  #01  pc 0x00000000006ce00d  /data/app/~~vnEIJtB4yRyETmTrEgUuaQ==/net.mullvad.mullvadvpn-MVL15SBpDIIxDNN7skGyTQ==/lib/arm/libmullvad_jni.so (PQCRYPTO_RUST_randombytes) (BuildId: 8f7a222b11f6fd2dae186a7105ffd816)
  #02  pc 0x0000000000057042  [anon:scudo:primary]
*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
pid: 0, tid: 6373 >>> net.mullvad.mullvadvpn <<<

backtrace:
  #00  pc 0x0000000000038f08  /apex/com.android.runtime/lib/bionic/libc.so (abort+172)
  #01  pc 0x00000000006ce00d  /data/app/~~LUfQapgBdk_T-IpOql5Ktw==/net.mullvad.mullvadvpn-nTFH_VjW7v-mvKczCOafiw==/lib/arm/libmullvad_jni.so (PQCRYPTO_RUST_randombytes) (BuildId: 8f7a222b11f6fd2dae186a7105ffd816)
  #02  pc 0x0000000000030d53  /apex/com.android.runtime/lib/bionic/libc.so (scudo::Allocator<scudo::AndroidConfig, &(scudo_malloc_postinit)>::quarantineOrDeallocateChunk(scudo::Options, void*, scudo::Chunk::UnpackedHeader*, unsigned long)+238)
  #03  pc 0x0000000000000005
*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
pid: 0, tid: 7098 >>> net.mullvad.mullvadvpn <<<

backtrace:
  #00  pc 0x000000000003b5f6  /apex/com.android.runtime/lib/bionic/libc.so (abort+138)
  #01  pc 0x000000000070b741  /data/app/~~pQOaAJE_S_waD1AQtEzKnA==/net.mullvad.mullvadvpn-CtKDJ9ipENHDWfUpecHNng==/lib/arm/libmullvad_jni.so (PQCRYPTO_RUST_randombytes) (BuildId: 1ddd96751f993fea3ff65308193ed8c7)
  #02  pc 0x000000000001b17a  [anon:dalvik-concurrent copying gc mark stack]

Let me know if there is anything I can assist with helping debugging this issue.

Rawa avatar Dec 05 '25 14:12 Rawa