···11-#ifdef __KERNEL__22-# ifdef CONFIG_X86_3233-# include "msgbuf_32.h"44-# else55-# include "msgbuf_64.h"66-# endif77-#else88-# ifdef __i386__99-# include "msgbuf_32.h"1010-# else1111-# include "msgbuf_64.h"1212-# endif11+#ifndef _ASM_X86_MSGBUF_H22+#define _ASM_X86_MSGBUF_H33+44+/*55+ * The msqid64_ds structure for i386 architecture.66+ * Note extra padding because this structure is passed back and forth77+ * between kernel and user space.88+ *99+ * Pad space on i386 is left for:1010+ * - 64-bit time_t to solve y2038 problem1111+ * - 2 miscellaneous 32-bit values1212+ *1313+ * Pad space on x8664 is left for:1414+ * - 2 miscellaneous 64-bit values1515+ */1616+struct msqid64_ds {1717+ struct ipc64_perm msg_perm;1818+ __kernel_time_t msg_stime; /* last msgsnd time */1919+#ifdef __i386__2020+ unsigned long __unused1;1321#endif2222+ __kernel_time_t msg_rtime; /* last msgrcv time */2323+#ifdef __i386__2424+ unsigned long __unused2;2525+#endif2626+ __kernel_time_t msg_ctime; /* last change time */2727+#ifdef __i386__2828+ unsigned long __unused3;2929+#endif3030+ unsigned long msg_cbytes; /* current number of bytes on queue */3131+ unsigned long msg_qnum; /* number of messages in queue */3232+ unsigned long msg_qbytes; /* max number of bytes on queue */3333+ __kernel_pid_t msg_lspid; /* pid of last msgsnd */3434+ __kernel_pid_t msg_lrpid; /* last receive pid */3535+ unsigned long __unused4;3636+ unsigned long __unused5;3737+};3838+3939+#endif /* _ASM_X86_MSGBUF_H */
-31
include/asm-x86/msgbuf_32.h
···11-#ifndef _I386_MSGBUF_H22-#define _I386_MSGBUF_H33-44-/* 55- * The msqid64_ds structure for i386 architecture.66- * Note extra padding because this structure is passed back and forth77- * between kernel and user space.88- *99- * Pad space is left for:1010- * - 64-bit time_t to solve y2038 problem1111- * - 2 miscellaneous 32-bit values1212- */1313-1414-struct msqid64_ds {1515- struct ipc64_perm msg_perm;1616- __kernel_time_t msg_stime; /* last msgsnd time */1717- unsigned long __unused1;1818- __kernel_time_t msg_rtime; /* last msgrcv time */1919- unsigned long __unused2;2020- __kernel_time_t msg_ctime; /* last change time */2121- unsigned long __unused3;2222- unsigned long msg_cbytes; /* current number of bytes on queue */2323- unsigned long msg_qnum; /* number of messages in queue */2424- unsigned long msg_qbytes; /* max number of bytes on queue */2525- __kernel_pid_t msg_lspid; /* pid of last msgsnd */2626- __kernel_pid_t msg_lrpid; /* last receive pid */2727- unsigned long __unused4;2828- unsigned long __unused5;2929-};3030-3131-#endif /* _I386_MSGBUF_H */
-27
include/asm-x86/msgbuf_64.h
···11-#ifndef _X8664_MSGBUF_H22-#define _X8664_MSGBUF_H33-44-/* 55- * The msqid64_ds structure for x86-64 architecture.66- * Note extra padding because this structure is passed back and forth77- * between kernel and user space.88- *99- * Pad space is left for:1010- * - 2 miscellaneous 64-bit values1111- */1212-1313-struct msqid64_ds {1414- struct ipc64_perm msg_perm;1515- __kernel_time_t msg_stime; /* last msgsnd time */1616- __kernel_time_t msg_rtime; /* last msgrcv time */1717- __kernel_time_t msg_ctime; /* last change time */1818- unsigned long msg_cbytes; /* current number of bytes on queue */1919- unsigned long msg_qnum; /* number of messages in queue */2020- unsigned long msg_qbytes; /* max number of bytes on queue */2121- __kernel_pid_t msg_lspid; /* pid of last msgsnd */2222- __kernel_pid_t msg_lrpid; /* last receive pid */2323- unsigned long __unused4;2424- unsigned long __unused5;2525-};2626-2727-#endif