blob: 9e0c2e2302746512b0622ee079f21fdf058507d6 [file] [log] [blame]
b.liue9582032025-04-17 19:18:16 +08001/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2#ifndef _ASM_MSGBUF_H
3#define _ASM_MSGBUF_H
4
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 * - 2 miscellaneous unsigned long values
13 */
14
15#if defined(__mips64)
16struct msqid64_ds {
17 struct ipc64_perm msg_perm;
18 long msg_stime; /* last msgsnd time */
19 long msg_rtime; /* last msgrcv time */
20 long msg_ctime; /* last change time */
21 unsigned long msg_cbytes; /* current number of bytes on queue */
22 unsigned long msg_qnum; /* number of messages in queue */
23 unsigned long msg_qbytes; /* max number of bytes on queue */
24 __kernel_pid_t msg_lspid; /* pid of last msgsnd */
25 __kernel_pid_t msg_lrpid; /* last receive pid */
26 unsigned long __unused4;
27 unsigned long __unused5;
28};
29#elif defined (__MIPSEB__)
30struct msqid64_ds {
31 struct ipc64_perm msg_perm;
32 unsigned long msg_stime_high;
33 unsigned long msg_stime; /* last msgsnd time */
34 unsigned long msg_rtime_high;
35 unsigned long msg_rtime; /* last msgrcv time */
36 unsigned long msg_ctime_high;
37 unsigned long msg_ctime; /* last change time */
38 unsigned long msg_cbytes; /* current number of bytes on queue */
39 unsigned long msg_qnum; /* number of messages in queue */
40 unsigned long msg_qbytes; /* max number of bytes on queue */
41 __kernel_pid_t msg_lspid; /* pid of last msgsnd */
42 __kernel_pid_t msg_lrpid; /* last receive pid */
43 unsigned long __unused4;
44 unsigned long __unused5;
45};
46#elif defined (__MIPSEL__)
47struct msqid64_ds {
48 struct ipc64_perm msg_perm;
49 unsigned long msg_stime; /* last msgsnd time */
50 unsigned long msg_stime_high;
51 unsigned long msg_rtime; /* last msgrcv time */
52 unsigned long msg_rtime_high;
53 unsigned long msg_ctime; /* last change time */
54 unsigned long msg_ctime_high;
55 unsigned long msg_cbytes; /* current number of bytes on queue */
56 unsigned long msg_qnum; /* number of messages in queue */
57 unsigned long msg_qbytes; /* max number of bytes on queue */
58 __kernel_pid_t msg_lspid; /* pid of last msgsnd */
59 __kernel_pid_t msg_lrpid; /* last receive pid */
60 unsigned long __unused4;
61 unsigned long __unused5;
62};
63#else
64#warning no endianess set
65#endif
66
67#endif /* _ASM_MSGBUF_H */