]> Cypherpunks repositories - gostls13.git/commitdiff
syscall: mkerrors.sh: don't define _FILE_OFFSET_BITS if __LP64__
authorIan Lance Taylor <iant@golang.org>
Tue, 12 May 2015 03:49:32 +0000 (20:49 -0700)
committerIan Lance Taylor <iant@golang.org>
Wed, 13 May 2015 00:40:49 +0000 (00:40 +0000)
If __LP64__ is defined then the type "long" is 64-bits, and there is
no need to explicitly request _FILE_OFFSET_BITS == 64.  This changes
the definitions of F_GETLK, F_SETLK, and F_SETLKW on PPC to the values
that the kernel requires.  The values used in C when _FILE_OFFSET_BITS
== 64 are corrected by the glibc fcntl function before making the
system call.

With this change, regenerate ppc64le files on Ubuntu trusty.

Change-Id: I8dddbd8a6bae877efff818f5c5dd06291ade3238
Reviewed-on: https://go-review.googlesource.com/9962
Reviewed-by: Minux Ma <minux@golang.org>
src/syscall/mkerrors.sh
src/syscall/zerrors_linux_ppc64le.go
src/syscall/ztypes_linux_ppc64le.go

index d25527bbf92fca0fab865d12a7e15026ac643706..438de6e5d83ec49f9d6aa7cad3f806bc28073bcb 100755 (executable)
@@ -87,7 +87,9 @@ includes_FreeBSD='
 includes_Linux='
 #define _LARGEFILE_SOURCE
 #define _LARGEFILE64_SOURCE
+#ifndef __LP64__
 #define _FILE_OFFSET_BITS 64
+#endif
 #define _GNU_SOURCE
 
 #include <bits/sockaddr.h>
index fdecdf24dd3e83114f6070652baf8d8b467d2433..17c4c4cf3a12db8252d0e8f9092faba150c5f579 100644 (file)
@@ -366,9 +366,9 @@ const (
        F_SETFD                          = 0x2
        F_SETFL                          = 0x4
        F_SETLEASE                       = 0x400
-       F_SETLK                          = 0xd
+       F_SETLK                          = 0x6
        F_SETLK64                        = 0xd
-       F_SETLKW                         = 0xe
+       F_SETLKW                         = 0x7
        F_SETLKW64                       = 0xe
        F_SETOWN                         = 0x8
        F_SETOWN_EX                      = 0xf
index c6b6f1615dcc516d0aeeceb994380b327eeaa33c..0de1770f7f8f523a9946bc88c4d34ed61bc13171 100644 (file)
@@ -549,7 +549,7 @@ type Sysinfo_t struct {
        Totalhigh uint64
        Freehigh  uint64
        Unit      uint32
-       X_f       [0]byte
+       X_f       [0]uint8
        Pad_cgo_1 [4]byte
 }