From ee1b51294ab50179b60d6c548ddded5b91cd0cbb Mon Sep 17 00:00:00 2001 From: Tobias Klauser Date: Wed, 18 Nov 2020 08:53:00 +0100 Subject: runtime: use pipe2 syscall for Pipe in tests On FreeBSD >= 11 with a kernel built with COMPAT_FREEBSD11 but not COMPAT_FREEBSD10, the pipe syscall is not available. Thus, tests using runtime.pipe fail with ENOSYS. As suggested by Ian, fix this by calling pipe2(0) in these tests and fall back to pipe() in case of ENOSYS. Fixes #42659 Change-Id: Ifbb8008884b7901fe87830d162ad326122c5fab9 Reviewed-on: https://go-review.googlesource.com/c/go/+/270917 Trust: Tobias Klauser Run-TryBot: Tobias Klauser TryBot-Result: Go Bot Reviewed-by: Ian Lance Taylor --- src/runtime/export_unix_test.go | 1 - 1 file changed, 1 deletion(-) (limited to 'src/runtime/export_unix_test.go') diff --git a/src/runtime/export_unix_test.go b/src/runtime/export_unix_test.go index 621488eaba..307c63fd68 100644 --- a/src/runtime/export_unix_test.go +++ b/src/runtime/export_unix_test.go @@ -9,7 +9,6 @@ package runtime import "unsafe" var NonblockingPipe = nonblockingPipe -var Pipe = pipe var SetNonblock = setNonblock var Closeonexec = closeonexec -- cgit v1.3