Skip to content

x/sys: Android's amd64 seccomp policy blocks unix.EpollWait() but not epoll_pwait syscall #80080

Description

@chenxiaolong

Currently, golang.org/x/sys/unix only provides unix.EpollWait, which uses the epoll_wait syscall. However, this syscall is not permitted by Android's seccomp policy on amd64. This doesn't affect non-golang programs because bionic libc's epoll_wait function actually uses the epoll_pwait syscall:

https://android.googlesource.com/platform/bionic/+/refs/tags/android-17.0.0_r1/libc/bionic/sys_epoll.cpp#86

Would it be possible to define this package's EpollWait function in terms of the epoll_pwait syscall as well? I don't believe it should cause compatibility issues since it's been available since kernel 2.6.19.

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    FixPendingIssues that have a fix which has not yet been reviewed or submitted.

    Type

    No type

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions