]> Cypherpunks repositories - gostls13.git/commitdiff
internal/poll: use fcntl64 on 32-bit GNU/Linux systems
authorTobias Klauser <tklauser@distanz.ch>
Tue, 24 Dec 2019 00:24:43 +0000 (01:24 +0100)
committerTobias Klauser <tobias.klauser@gmail.com>
Thu, 26 Dec 2019 13:53:31 +0000 (13:53 +0000)
Use FcntlSyscall from internal/syscall/unix to get fcntl64 on 32-bit
Linux systems.

Updates #36211

Change-Id: If48a6e09606ca9f7f6e22f3e8dc9a25fb3ccaf65
Reviewed-on: https://go-review.googlesource.com/c/go/+/212537
Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Ian Lance Taylor <iant@golang.org>
src/go/build/deps_test.go
src/internal/poll/splice_linux.go

index fd256ee000c3cb69165feeca151dc44dc4483149..a64c2b32419cdd769d7eef7ff576c8a7f081aee5 100644 (file)
@@ -168,7 +168,7 @@ var pkgDeps = map[string][]string{
        },
 
        "internal/cfg":     {"L0"},
-       "internal/poll":    {"L0", "internal/oserror", "internal/race", "syscall", "time", "unicode/utf16", "unicode/utf8", "internal/syscall/windows"},
+       "internal/poll":    {"L0", "internal/oserror", "internal/race", "syscall", "time", "unicode/utf16", "unicode/utf8", "internal/syscall/windows", "internal/syscall/unix"},
        "internal/testlog": {"L0"},
        "os":               {"L1", "os", "syscall", "time", "internal/oserror", "internal/poll", "internal/syscall/windows", "internal/syscall/unix", "internal/testlog"},
        "path/filepath":    {"L2", "os", "syscall", "internal/syscall/windows"},
index 4f97298417c3df6c623a5a3cbc0faf31faf1b152..5b17ae85516bfafd79b554dcb998ca17f0a6d6e7 100644 (file)
@@ -5,6 +5,7 @@
 package poll
 
 import (
+       "internal/syscall/unix"
        "sync/atomic"
        "syscall"
        "unsafe"
@@ -169,7 +170,7 @@ func newTempPipe() (prfd, pwfd int, sc string, err error) {
                defer atomic.StorePointer(&disableSplice, unsafe.Pointer(p))
 
                // F_GETPIPE_SZ was added in 2.6.35, which does not have the -EAGAIN bug.
-               if _, _, errno := syscall.Syscall(syscall.SYS_FCNTL, uintptr(fds[0]), syscall.F_GETPIPE_SZ, 0); errno != 0 {
+               if _, _, errno := syscall.Syscall(unix.FcntlSyscall, uintptr(fds[0]), syscall.F_GETPIPE_SZ, 0); errno != 0 {
                        *p = true
                        destroyTempPipe(fds[0], fds[1])
                        return -1, -1, "fcntl", errno