-
Notifications
You must be signed in to change notification settings - Fork 17.7k
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
all: failures with EBADF on Linux-based platforms since 2024-02-21 #65857
Comments
Found new dashboard test flakes for:
2024-02-21 21:26 android-amd64-emu go@750738b5 os (log)
|
Found new dashboard test flakes for:
2024-02-22 16:40 android-amd64-emu go@55bb3d1c os (log)
|
Found new dashboard test flakes for:
2024-02-21 20:50 android-amd64-emu pkgsite@463d7c94 go@7fd62ba8 x/pkgsite/cmd/internal/pkgsite.TestServer (log)
2024-02-21 21:28 android-386-emu go@05c05796 go/build.TestDependencies (log)
2024-02-21 21:28 android-amd64-emu go@05c05796 os.TestSpliceFile (log)
2024-02-21 22:46 android-386-emu tools@c111c4df go@507d1b22 x/tools/go/analysis/passes/asmdecl.Test (log)
|
This appears to have started as of https://go.dev/cl/528438 (attn @kolyshkin @prattmic @ianlancetaylor). |
The I found one such plausible race and commented on it in https://go.dev/cl/c/go/+/528438/23#message-7776b03e24828c38c7e462ff45280105fc677d83. I suggest that we treat this as a regression possibly affecting all |
This comment was marked as off-topic.
This comment was marked as off-topic.
Found new dashboard test flakes for:
2024-02-22 22:32 android-amd64-emu pkgsite@094b90f1 go@ad377e90 x/pkgsite/cmd/internal/pkgsite.TestServer (log)
2024-02-22 22:32 android-amd64-emu pkgsite@094b90f1 go@ad377e90 x/pkgsite/cmd/pkgsite (log)
2024-02-22 22:32 android-amd64-emu pkgsite@094b90f1 go@ad377e90 x/pkgsite/devtools/cmd/csphash (log)
|
Change https://go.dev/cl/566477 mentions this issue: |
Found new dashboard test flakes for:
2024-02-23 08:34 android-amd64-emu go@ad377e90 net.TestBuffers_WriteTo (log)
|
This looks very much like Will work on that next week. |
Found new dashboard test flakes for:
2024-02-23 05:06 linux-riscv64-jsing go@faf2a841 os.TestCopyFSWithSymlinks (log)
|
Found new dashboard test flakes for:
2024-02-23 00:19 linux-riscv64-jsing go@d9be6097 os.TestCopyFSWithSymlinks (log)
|
Found new dashboard test flakes for:
2024-02-22 18:17 android-386-emu tools@054c06df go@8a0fbd75 x/tools/go/analysis/passes/asmdecl.Test (log)
|
The reason for EBADF on Android was this code in https://go-review.googlesource.com/c/go/+/528438: if runtime.GOOS == "linux" {
h = getPidfd(sysattr.Sys)
} On android, |
Change https://go.dev/cl/570036 mentions this issue: |
Use Process.handle field to store pidfd, and make use of it. Only use pidfd functionality if all the needed syscalls are available. 1. Add/use pidfdWorks, which checks that all needed pidfd-related functionality works. 2. os.StartProcess: obtain the pidfd from the kernel, if possible, using the functionality added by CL 520266. Note we could not modify syscall.StartProcess to return pidfd directly because it is a public API and its callers do not expect it, so we have to use ensurePidfd and getPidfd. 3. (*Process).Kill: use pidfdSendSignal, if available and the pidfd is known. Otherwise, fall back to the old implementation. 4. (*Process).Wait: use pidfdWait, if available, otherwise fall back to using waitid/wait4. This is more complicated than expected due to struct siginfo_t idiosyncrasy. NOTE pidfdSendSignal and pidfdWait are used without a race workaround (blockUntilWaitable and sigMu, added by CL 23967) because with pidfd, PID recycle issue doesn't exist (IOW, pidfd, unlike PID, is guaranteed to refer to one particular process) and thus the race doesn't exist either. Rework of CL 528438 (reverted in CL 566477 because of #65857). For #62654. Updates #13987. Change-Id: If5ef8920bd8619dc428b6282ffe4fb8c258ca224 Reviewed-on: https://go-review.googlesource.com/c/go/+/570036 TryBot-Result: Gopher Robot <gobot@golang.org> Run-TryBot: Kirill Kolyshkin <kolyshkin@gmail.com> LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Auto-Submit: Cherry Mui <cherryyz@google.com> Reviewed-by: Cherry Mui <cherryyz@google.com> Reviewed-by: Michael Pratt <mpratt@google.com>
Issue created automatically to collect these failures.
Example (log):
— watchflakes
The text was updated successfully, but these errors were encountered: