GNU Linux-libre 4.19.245-gnu1
[releases.git] / arch / parisc / include / uapi / asm / msgbuf.h
1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2 #ifndef _PARISC_MSGBUF_H
3 #define _PARISC_MSGBUF_H
4
5 #include <asm/bitsperlong.h>
6
7 /* 
8  * The msqid64_ds structure for parisc architecture, copied from sparc.
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 32-bit values
14  */
15
16 struct msqid64_ds {
17         struct ipc64_perm msg_perm;
18 #if __BITS_PER_LONG == 64
19         __kernel_time_t msg_stime;      /* last msgsnd time */
20         __kernel_time_t msg_rtime;      /* last msgrcv time */
21         __kernel_time_t msg_ctime;      /* last change time */
22 #else
23         unsigned long   msg_stime_high;
24         unsigned long   msg_stime;      /* last msgsnd time */
25         unsigned long   msg_rtime_high;
26         unsigned long   msg_rtime;      /* last msgrcv time */
27         unsigned long   msg_ctime_high;
28         unsigned long   msg_ctime;      /* last change time */
29 #endif
30         unsigned long   msg_cbytes;     /* current number of bytes on queue */
31         unsigned long   msg_qnum;       /* number of messages in queue */
32         unsigned long   msg_qbytes;     /* max number of bytes on queue */
33         __kernel_pid_t  msg_lspid;      /* pid of last msgsnd */
34         __kernel_pid_t  msg_lrpid;      /* last receive pid */
35         unsigned long   __unused1;
36         unsigned long   __unused2;
37 };
38
39 #endif /* _PARISC_MSGBUF_H */