1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ 2 /* 3 * include/asm-xtensa/msgbuf.h 4 * 5 * The msqid64_ds structure for the Xtensa architecture. 6 * Note extra padding because this structure is passed back and forth 7 * between kernel and user space. 8 * 9 * Pad space is left for: 10 * - 2 miscellaneous 32-bit values 11 * 12 * This file is subject to the terms and conditions of the GNU General 13 * Public License. See the file "COPYING" in the main directory of 14 * this archive for more details. 15 */ 16 17 #ifndef _XTENSA_MSGBUF_H 18 #define _XTENSA_MSGBUF_H 19 20 #include <asm/ipcbuf.h> 21 22 struct msqid64_ds { 23 struct ipc64_perm msg_perm; 24 #ifdef __XTENSA_EB__ 25 unsigned long msg_stime_high; 26 unsigned long msg_stime; /* last msgsnd time */ 27 unsigned long msg_rtime_high; 28 unsigned long msg_rtime; /* last msgrcv time */ 29 unsigned long msg_ctime_high; 30 unsigned long msg_ctime; /* last change time */ 31 #elif defined(__XTENSA_EL__) 32 unsigned long msg_stime; /* last msgsnd time */ 33 unsigned long msg_stime_high; 34 unsigned long msg_rtime; /* last msgrcv time */ 35 unsigned long msg_rtime_high; 36 unsigned long msg_ctime; /* last change time */ 37 unsigned long msg_ctime_high; 38 #else 39 # error processor byte order undefined! 40 #endif 41 unsigned long msg_cbytes; /* current number of bytes on queue */ 42 unsigned long msg_qnum; /* number of messages in queue */ 43 unsigned long msg_qbytes; /* max number of bytes on queue */ 44 __kernel_pid_t msg_lspid; /* pid of last msgsnd */ 45 __kernel_pid_t msg_lrpid; /* last receive pid */ 46 unsigned long __unused4; 47 unsigned long __unused5; 48 }; 49 50 #endif /* _XTENSA_MSGBUF_H */ 51