This is the mail archive of the glibc-cvs@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[glibc/arm/ilp32] aarch64: Fix ipc_perm definition for ILP32


https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=09358228d1830a3b31f79a9948b36f7fe375244b

commit 09358228d1830a3b31f79a9948b36f7fe375244b
Author: Steve Ellcey <sellcey@cavium.com>
Date:   Thu Aug 31 16:49:10 2017 +0100

    aarch64: Fix ipc_perm definition for ILP32
    
    Here is another aarch64 ILP32 patch.  The mode field in ipc_perm in ILP32
    should be a 16 bit field, not a 32 bit one.  This was out-of-sync with what the
    kernel had.  This was causing sysvipc/test-sysvsem to fail in ILP32 mode.
    
    2017-09-01  Yury Norov  <ynorov@caviumnetworks.com>
    	    Steve Ellcey  <sellcey@cavium.com>
    
    	* sysdeps/unix/sysv/linux/aarch64/bits/ipc.h (ipc_perm):
    	Ifdef and pad the mode field for ILP32.

Diff:
---
 sysdeps/unix/sysv/linux/aarch64/bits/ipc.h | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/sysdeps/unix/sysv/linux/aarch64/bits/ipc.h b/sysdeps/unix/sysv/linux/aarch64/bits/ipc.h
index b913774..a9f5a6b 100644
--- a/sysdeps/unix/sysv/linux/aarch64/bits/ipc.h
+++ b/sysdeps/unix/sysv/linux/aarch64/bits/ipc.h
@@ -46,7 +46,12 @@ struct ipc_perm
     __gid_t gid;			/* Owner's group ID.  */
     __uid_t cuid;			/* Creator's user ID.  */
     __gid_t cgid;			/* Creator's group ID.  */
+#ifdef __LP64__
     unsigned int mode;			/* Read/write permission.  */
+#else
+    unsigned short int mode;		/* Read/write permission.  */
+    unsigned short int __pad0;
+#endif
     unsigned short int __seq;		/* Sequence number.  */
     unsigned short int __pad1;
     __syscall_ulong_t __glibc_reserved1;


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]