summaryrefslogtreecommitdiff
path: root/arch/sparc/include/asm/ipcbuf.h
diff options
context:
space:
mode:
authorSam Ravnborg <sam@ravnborg.org>2009-01-05 02:44:22 +0300
committerDavid S. Miller <davem@davemloft.net>2009-01-05 02:44:52 +0300
commit83c86984bff2d793c91eb710af7857828b9ddb49 (patch)
treefdf0b4ca317f77ed91b48e5fdff681f6099a84b2 /arch/sparc/include/asm/ipcbuf.h
parentfa8efd50b353a36dbcd2c47a55335f002af4deb0 (diff)
downloadlinux-83c86984bff2d793c91eb710af7857828b9ddb49.tar.xz
sparc: unify ipcbuf.h
The ony difference is the size of the mode. sparc has extra padding to compensate for this. Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'arch/sparc/include/asm/ipcbuf.h')
-rw-r--r--arch/sparc/include/asm/ipcbuf.h38
1 files changed, 31 insertions, 7 deletions
diff --git a/arch/sparc/include/asm/ipcbuf.h b/arch/sparc/include/asm/ipcbuf.h
index 17d6ef7b23a4..66013b4fe10d 100644
--- a/arch/sparc/include/asm/ipcbuf.h
+++ b/arch/sparc/include/asm/ipcbuf.h
@@ -1,8 +1,32 @@
-#ifndef ___ASM_SPARC_IPCBUF_H
-#define ___ASM_SPARC_IPCBUF_H
-#if defined(__sparc__) && defined(__arch64__)
-#include <asm/ipcbuf_64.h>
-#else
-#include <asm/ipcbuf_32.h>
-#endif
+#ifndef __SPARC_IPCBUF_H
+#define __SPARC_IPCBUF_H
+
+/*
+ * The ipc64_perm structure for sparc/sparc64 architecture.
+ * Note extra padding because this structure is passed back and forth
+ * between kernel and user space.
+ *
+ * Pad space is left for:
+ * - 32-bit seq
+ * - on sparc for 32 bit mode (it is 32 bit on sparc64)
+ * - 2 miscellaneous 64-bit values
+ */
+
+struct ipc64_perm
+{
+ __kernel_key_t key;
+ __kernel_uid_t uid;
+ __kernel_gid_t gid;
+ __kernel_uid_t cuid;
+ __kernel_gid_t cgid;
+#ifndef __arch64__
+ unsigned short __pad0;
#endif
+ __kernel_mode_t mode;
+ unsigned short __pad1;
+ unsigned short seq;
+ unsigned long long __unused1;
+ unsigned long long __unused2;
+};
+
+#endif /* __SPARC_IPCBUF_H */