summaryrefslogtreecommitdiffstats
path: root/ipc/msg.c
diff options
context:
space:
mode:
authorEric W. Biederman <ebiederm@xmission.com>2018-03-23 03:37:34 +0100
committerEric W. Biederman <ebiederm@xmission.com>2018-03-24 17:25:35 +0100
commit34b56df922b10ac2876f268c522951785bf333fd (patch)
treebe3e5fe875e7f1e6a6889c4b32bf4958e064793f /ipc/msg.c
parentshm: Move struct shmid_kernel into ipc/shm.c (diff)
downloadlinux-34b56df922b10ac2876f268c522951785bf333fd.tar.xz
linux-34b56df922b10ac2876f268c522951785bf333fd.zip
msg: Move struct msg_queue into ipc/msg.c
All of the users are now in ipc/msg.c so make the definition local to that file to make code maintenance easier. AKA to prevent rebuilding the entire kernel when struct msg_queue changes. Signed-off-by: "Eric W. Biederman" <ebiederm@xmission.com>
Diffstat (limited to 'ipc/msg.c')
-rw-r--r--ipc/msg.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/ipc/msg.c b/ipc/msg.c
index cdfab0825fce..af5a963306c4 100644
--- a/ipc/msg.c
+++ b/ipc/msg.c
@@ -43,6 +43,23 @@
#include <linux/uaccess.h>
#include "util.h"
+/* one msq_queue structure for each present queue on the system */
+struct msg_queue {
+ struct kern_ipc_perm q_perm;
+ time64_t q_stime; /* last msgsnd time */
+ time64_t q_rtime; /* last msgrcv time */
+ time64_t q_ctime; /* last change time */
+ unsigned long q_cbytes; /* current number of bytes on queue */
+ unsigned long q_qnum; /* number of messages in queue */
+ unsigned long q_qbytes; /* max number of bytes on queue */
+ pid_t q_lspid; /* pid of last msgsnd */
+ pid_t q_lrpid; /* last receive pid */
+
+ struct list_head q_messages;
+ struct list_head q_receivers;
+ struct list_head q_senders;
+} __randomize_layout;
+
/* one msg_receiver structure for each sleeping receiver */
struct msg_receiver {
struct list_head r_list;