-
Notifications
You must be signed in to change notification settings - Fork 17.9k
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
runtime: crashes on Android O #23750
Comments
Marking for 1.9.5, but note that this is also not fixed in 1.10. We need some way to get a sense of whether the patches will work on a range of systems; likely they will but some experience is needed. Probably best to commit them after 1.10 branches, and then consider backports to 1.10.1 and 1.9.5. |
Change https://golang.org/cl/92895 mentions this issue: |
@ianlancetaylor This should probably be reopened until 04e6ae6 is backported to 1.9 and 1.10 branches. |
CL 102792 OK for Go 1.10.1 |
Change https://golang.org/cl/102791 mentions this issue: |
Change https://golang.org/cl/102792 mentions this issue: |
Looks like we should also include CL 100877 and 100878 in 1.10.1 and 1.9.5. |
Done. |
…4-bit machines Android O disallows open on 64-bit, so let's use openat with AT_FDCWD to achieve the same behavior. Android O disallows epoll_wait on 64-bit, so let's use epoll_pwait with the last argument as NULL to achieve the same behavior. See here: https://android.googlesource.com/platform/bionic/+/master/libc/seccomp/arm64_app_policy.cpp https://android.googlesource.com/platform/bionic/+/master/libc/seccomp/mips64_app_policy.cpp https://android.googlesource.com/platform/bionic/+/master/libc/seccomp/x86_64_app_policy.cpp Fixes #23750 Change-Id: If8d5a663357471e5d2c1f516151344a9d05b188a Reviewed-on: https://go-review.googlesource.com/92895 Reviewed-by: Ian Lance Taylor <[email protected]> Reviewed-by: Austin Clements <[email protected]> Run-TryBot: Ian Lance Taylor <[email protected]> TryBot-Result: Gobot Gobot <[email protected]> Reviewed-on: https://go-review.googlesource.com/102792 Run-TryBot: Andrew Bonventre <[email protected]>
Last year golang changed from epoll_wait to epoll_pwait golang/go#23750 This causes golang panic errors on mac when running secomp secure compiles using docker 18.09.1. It may start to become a problem on linux where we are running on 17.03.2-ce in production.
Android O has a seccomp filter.
Unfortunately it disallows use of
open
andepoll_wait
, which are used by the Go runtime. Fortunately, it allows foropenat
andepoll_pwait
, which map directly to the former ones by passing them the right arguments.So far as I can see, these support
open
andepoll_wait
:So far as I can see, these support
openat
andepoll_pwait
:In other words, 64-bit architectures are affected. ARM64 was already fixed. This CL fixes the remaining two architectures: https://go-review.googlesource.com/c/go/+/92895
The text was updated successfully, but these errors were encountered: