Merge tag 'mm-nonmm-stable-2024-05-19-11-56' of git://git.kernel.org/pub/scm/linux...
[sfrench/cifs-2.6.git] / arch / mips / include / uapi / asm / msgbuf.h
1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2 #ifndef _ASM_MSGBUF_H
3 #define _ASM_MSGBUF_H
4
5 #include <asm/ipcbuf.h>
6
7 /*
8  * The msqid64_ds structure for the MIPS architecture.
9  * Note extra padding because this structure is passed back and forth
10  * between kernel and user space.
11  *
12  * Pad space is left for:
13  * - 2 miscellaneous unsigned long values
14  */
15
16 #if defined(__mips64)
17 struct msqid64_ds {
18         struct ipc64_perm msg_perm;
19         long msg_stime;                 /* last msgsnd time */
20         long msg_rtime;                 /* last msgrcv time */
21         long msg_ctime;                 /* last change time */
22         unsigned long  msg_cbytes;      /* current number of bytes on queue */
23         unsigned long  msg_qnum;        /* number of messages in queue */
24         unsigned long  msg_qbytes;      /* max number of bytes on queue */
25         __kernel_pid_t msg_lspid;       /* pid of last msgsnd */
26         __kernel_pid_t msg_lrpid;       /* last receive pid */
27         unsigned long  __unused4;
28         unsigned long  __unused5;
29 };
30 #elif defined (__MIPSEB__)
31 struct msqid64_ds {
32         struct ipc64_perm msg_perm;
33         unsigned long  msg_stime_high;
34         unsigned long  msg_stime;       /* last msgsnd time */
35         unsigned long  msg_rtime_high;
36         unsigned long  msg_rtime;       /* last msgrcv time */
37         unsigned long  msg_ctime_high;
38         unsigned long  msg_ctime;       /* last change time */
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 #elif defined (__MIPSEL__)
48 struct msqid64_ds {
49         struct ipc64_perm msg_perm;
50         unsigned long  msg_stime;       /* last msgsnd time */
51         unsigned long  msg_stime_high;
52         unsigned long  msg_rtime;       /* last msgrcv time */
53         unsigned long  msg_rtime_high;
54         unsigned long  msg_ctime;       /* last change time */
55         unsigned long  msg_ctime_high;
56         unsigned long  msg_cbytes;      /* current number of bytes on queue */
57         unsigned long  msg_qnum;        /* number of messages in queue */
58         unsigned long  msg_qbytes;      /* max number of bytes on queue */
59         __kernel_pid_t msg_lspid;       /* pid of last msgsnd */
60         __kernel_pid_t msg_lrpid;       /* last receive pid */
61         unsigned long  __unused4;
62         unsigned long  __unused5;
63 };
64 #else
65 #warning no endianness set
66 #endif
67
68 #endif /* _ASM_MSGBUF_H */