svn commit: r293522 - in stable/10/sys: amd64/linux32 compat/linux i386/linux
Dmitry Chagin
dchagin at FreeBSD.org
Sat Jan 9 15:56:03 UTC 2016
Author: dchagin
Date: Sat Jan 9 15:56:01 2016
New Revision: 293522
URL: https://svnweb.freebsd.org/changeset/base/293522
Log:
MFC r283416:
x86_64 Linux do not use multiplexing on ipc system calls.
Move struct ipc_perm definition to the MD path as it differs for 64 and
32 bit platform.
Modified:
stable/10/sys/amd64/linux32/linux.h
stable/10/sys/compat/linux/linux_ipc.c
stable/10/sys/compat/linux/linux_ipc.h
stable/10/sys/i386/linux/linux.h
Directory Properties:
stable/10/ (props changed)
Modified: stable/10/sys/amd64/linux32/linux.h
==============================================================================
--- stable/10/sys/amd64/linux32/linux.h Sat Jan 9 15:54:55 2016 (r293521)
+++ stable/10/sys/amd64/linux32/linux.h Sat Jan 9 15:56:01 2016 (r293522)
@@ -573,6 +573,16 @@ union l_semun {
l_uintptr_t __pad;
} __packed;
+struct l_ipc_perm {
+ l_key_t key;
+ l_uid16_t uid;
+ l_gid16_t gid;
+ l_uid16_t cuid;
+ l_gid16_t cgid;
+ l_ushort mode;
+ l_ushort seq;
+};
+
/*
* Socket defines
*/
Modified: stable/10/sys/compat/linux/linux_ipc.c
==============================================================================
--- stable/10/sys/compat/linux/linux_ipc.c Sat Jan 9 15:54:55 2016 (r293521)
+++ stable/10/sys/compat/linux/linux_ipc.c Sat Jan 9 15:56:01 2016 (r293522)
@@ -117,16 +117,6 @@ bsd_to_linux_shm_info( struct shm_info *
lpp->swap_successes = bpp->swap_successes ;
}
-struct l_ipc_perm {
- l_key_t key;
- l_uid16_t uid;
- l_gid16_t gid;
- l_uid16_t cuid;
- l_gid16_t cgid;
- l_ushort mode;
- l_ushort seq;
-};
-
static void
linux_to_bsd_ipc_perm(struct l_ipc_perm *lpp, struct ipc_perm *bpp)
{
Modified: stable/10/sys/compat/linux/linux_ipc.h
==============================================================================
--- stable/10/sys/compat/linux/linux_ipc.h Sat Jan 9 15:54:55 2016 (r293521)
+++ stable/10/sys/compat/linux/linux_ipc.h Sat Jan 9 15:56:01 2016 (r293522)
@@ -82,7 +82,7 @@
#define LINUX_IPC_64 0x0100 /* New version (support 32-bit UIDs, bigger
message sizes, etc. */
-#if defined(__i386__) || defined(__amd64__)
+#if defined(__i386__) || (defined(__amd64__) && defined(COMPAT_LINUX32))
struct linux_msgctl_args
{
@@ -177,6 +177,6 @@ int linux_shmctl(struct thread *, struct
int linux_shmdt(struct thread *, struct linux_shmdt_args *);
int linux_shmget(struct thread *, struct linux_shmget_args *);
-#endif /* __i386__ || __amd64__ */
+#endif /* __i386__ || (__amd64__ && COMPAT_LINUX32) */
#endif /* _LINUX_IPC_H_ */
Modified: stable/10/sys/i386/linux/linux.h
==============================================================================
--- stable/10/sys/i386/linux/linux.h Sat Jan 9 15:54:55 2016 (r293521)
+++ stable/10/sys/i386/linux/linux.h Sat Jan 9 15:56:01 2016 (r293522)
@@ -550,6 +550,16 @@ union l_semun {
void *__pad;
};
+struct l_ipc_perm {
+ l_key_t key;
+ l_uid16_t uid;
+ l_gid16_t gid;
+ l_uid16_t cuid;
+ l_gid16_t cgid;
+ l_ushort mode;
+ l_ushort seq;
+};
+
/*
* Socket defines
*/
More information about the svn-src-stable-10
mailing list