Merge tag 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mst/vhost
[cris-mirror.git] / include / linux / msg.h
blob0a7eefeee0d11862d7e2932a1ee56750b562b24f
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef _LINUX_MSG_H
3 #define _LINUX_MSG_H
5 #include <linux/list.h>
6 #include <linux/time64.h>
7 #include <uapi/linux/msg.h>
9 /* one msg_msg structure for each message */
10 struct msg_msg {
11 struct list_head m_list;
12 long m_type;
13 size_t m_ts; /* message text size */
14 struct msg_msgseg *next;
15 void *security;
16 /* the actual message follows immediately */
19 /* one msq_queue structure for each present queue on the system */
20 struct msg_queue {
21 struct kern_ipc_perm q_perm;
22 time64_t q_stime; /* last msgsnd time */
23 time64_t q_rtime; /* last msgrcv time */
24 time64_t q_ctime; /* last change time */
25 unsigned long q_cbytes; /* current number of bytes on queue */
26 unsigned long q_qnum; /* number of messages in queue */
27 unsigned long q_qbytes; /* max number of bytes on queue */
28 pid_t q_lspid; /* pid of last msgsnd */
29 pid_t q_lrpid; /* last receive pid */
31 struct list_head q_messages;
32 struct list_head q_receivers;
33 struct list_head q_senders;
34 } __randomize_layout;
36 #endif /* _LINUX_MSG_H */