blob: a1533959742e4693f69f1f6b2311db956cc5cd01 [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001#ifndef _ASM_MSGBUF_H
2#define _ASM_MSGBUF_H
3
4#include <linux/config.h>
5
6/*
7 * The msqid64_ds structure for the MIPS architecture.
8 * Note extra padding because this structure is passed back and forth
9 * between kernel and user space.
10 *
11 * Pad space is left for:
12 * - extension of time_t to 64-bit on 32-bitsystem to solve the y2038 problem
13 * - 2 miscellaneous unsigned long values
14 */
15
16struct msqid64_ds {
17 struct ipc64_perm msg_perm;
Ralf Baechle875d43e2005-09-03 15:56:16 -070018#if defined(CONFIG_32BIT) && !defined(CONFIG_CPU_LITTLE_ENDIAN)
Linus Torvalds1da177e2005-04-16 15:20:36 -070019 unsigned long __unused1;
20#endif
21 __kernel_time_t msg_stime; /* last msgsnd time */
Ralf Baechle875d43e2005-09-03 15:56:16 -070022#if defined(CONFIG_32BIT) && defined(CONFIG_CPU_LITTLE_ENDIAN)
Linus Torvalds1da177e2005-04-16 15:20:36 -070023 unsigned long __unused1;
24#endif
Ralf Baechle875d43e2005-09-03 15:56:16 -070025#if defined(CONFIG_32BIT) && !defined(CONFIG_CPU_LITTLE_ENDIAN)
Linus Torvalds1da177e2005-04-16 15:20:36 -070026 unsigned long __unused2;
27#endif
28 __kernel_time_t msg_rtime; /* last msgrcv time */
Ralf Baechle875d43e2005-09-03 15:56:16 -070029#if defined(CONFIG_32BIT) && defined(CONFIG_CPU_LITTLE_ENDIAN)
Linus Torvalds1da177e2005-04-16 15:20:36 -070030 unsigned long __unused2;
31#endif
Ralf Baechle875d43e2005-09-03 15:56:16 -070032#if defined(CONFIG_32BIT) && !defined(CONFIG_CPU_LITTLE_ENDIAN)
Linus Torvalds1da177e2005-04-16 15:20:36 -070033 unsigned long __unused3;
34#endif
35 __kernel_time_t msg_ctime; /* last change time */
Ralf Baechle875d43e2005-09-03 15:56:16 -070036#if defined(CONFIG_32BIT) && defined(CONFIG_CPU_LITTLE_ENDIAN)
Linus Torvalds1da177e2005-04-16 15:20:36 -070037 unsigned long __unused3;
38#endif
39 unsigned long msg_cbytes; /* current number of bytes on queue */
40 unsigned long msg_qnum; /* number of messages in queue */
41 unsigned long msg_qbytes; /* max number of bytes on queue */
42 __kernel_pid_t msg_lspid; /* pid of last msgsnd */
43 __kernel_pid_t msg_lrpid; /* last receive pid */
44 unsigned long __unused4;
45 unsigned long __unused5;
46};
47
48#endif /* _ASM_MSGBUF_H */