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

x/mobile: gomobile Apps crash on Android 8 at "runtime/internal/atomic.Cas" #23692

Open
dawndiy opened this Issue Feb 4, 2018 · 3 comments

Comments

Projects
None yet
3 participants
@dawndiy

dawndiy commented Feb 4, 2018

Please answer these questions before submitting your issue. Thanks!

What version of Go are you using (go version)?

go1.9.3

Does this issue reproduce with the latest release?

I just tested version 1.9.2 and 1.9.3, both of them have this issue.

What operating system and processor architecture are you using (go env)?

The gomobile App crash on Android 8.0.0~8.1.0 . The processor architecture is armeabi-v7a on real devices. Actually I got the issue from crash report of my Android App.

What did you do?

If possible, provide a recipe for reproducing the error.
A complete runnable program is good.
A link on play.golang.org is best.

Maybe this issue is similar to #20409 . I just got some limited information from the Android crash report.

What did you expect to see?

What caused the crash and how to fix this?

What did you see instead?

From crash report:

signal 31 (SIGSYS), code 1 (SYS_SECCOMP)
*** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***
pid: 0, tid: 0 >>> com.github.dawndiy.bifrostv <<<

backtrace:
 
  #00  pc 00000000003a4090  /data/app/com.github.dawndiy.bifrostv-cgCD2dB5iSPpbiG9ujWdPA==/lib/arm/libgojni.so (syscall.Syscall+40)
  #01  pc 000000000033b000  /data/app/com.github.dawndiy.bifrostv-cgCD2dB5iSPpbiG9ujWdPA==/lib/arm/libgojni.so (runtime/internal/atomic.Cas+16)

The crash happened on Android 8 device only, include Google Pixel, Pixel 2 and other Android 8 devices.

@gopherbot gopherbot added this to the Unreleased milestone Feb 4, 2018

@gopherbot gopherbot added the mobile label Feb 4, 2018

@eliasnaur

This comment has been minimized.

Contributor

eliasnaur commented Mar 14, 2018

Unfortunately there is no indication of what the blocked syscall was, like in #20409. Is there any way I can reproduce the crash? I have a Pixel but have never seen this crash before.

Does it still reproduce with Go 1.10?

@dawndiy

This comment has been minimized.

dawndiy commented Mar 21, 2018

@eliasnaur Thanks for your reply.

Unfortunately it still reproduce with Go 1.10, and I can't reproduce this issue stably. The logs above are from Firebase Crashlytics. If I find more detail information, I'll post here to help fix this issue.

@eliasnaur

This comment has been minimized.

Contributor

eliasnaur commented Mar 21, 2018

Can you reproduce it on your own? If so, I can try to reproduce it on my Pixel.

A stray thought: Are you using 64-bit atomics? If so, make sure the values you operate on are 64-bit aligned, as per https://golang.org/pkg/sync/atomic/#pkg-note-BUG.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment