1 /* 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) 16 struct msqid64_ds { 17 struct ipc64_perm msg_perm; 18 __kernel_time_t msg_stime; /* last msgsnd time */ 19 __kernel_time_t msg_rtime; /* last msgrcv time */ 20 __kernel_time_t 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__) 30 struct 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__) 47 struct 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 */ 68