You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
What operating system and processor architecture are you using (go env)?
iOS 9.3.4 arm64 (though I believe this applies to armv7 as well)
What did you do?
Create a gomobile library with gomobile bind -target ios and link the framework into an iOS app. Run the app, then switch away for five minutes or more. Switch back to the app.
What did you expect to see?
Normal operation.
What did you see instead?
Upon returning to the app, one thread will have crashed via notok as a result of a failed madvise syscall during scavenging. GODEBUG=scavenge=1 accelerates things significantly, and it will crash almost immediately.
It seems this was fixed for 386 and amd64 a while ago, but the same treatment never got applied to arm/arm64. I tested a similar fix and it solved my problem, but I'm not that confident in my ability to edit ARM assembly correctly.
Frustratingly, I couldn't replicate the problem with any of the gomobile example apps. I suspect that they are too simple to sufficiently provoke the GC.
The text was updated successfully, but these errors were encountered:
go version
)?go version go1.7 darwin/amd64
go env
)?iOS 9.3.4 arm64 (though I believe this applies to armv7 as well)
Create a gomobile library with
gomobile bind -target ios
and link the framework into an iOS app. Run the app, then switch away for five minutes or more. Switch back to the app.Normal operation.
Upon returning to the app, one thread will have crashed via
notok
as a result of a failedmadvise
syscall during scavenging.GODEBUG=scavenge=1
accelerates things significantly, and it will crash almost immediately.It seems this was fixed for 386 and amd64 a while ago, but the same treatment never got applied to arm/arm64. I tested a similar fix and it solved my problem, but I'm not that confident in my ability to edit ARM assembly correctly.
Frustratingly, I couldn't replicate the problem with any of the gomobile example apps. I suspect that they are too simple to sufficiently provoke the GC.
The text was updated successfully, but these errors were encountered: