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 struct msqid64_ds { 21 struct ipc64_perm msg_perm; 22 #ifdef __XTENSA_EB__ 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 #elif defined(__XTENSA_EL__) 30 unsigned long msg_stime; /* last msgsnd time */ 31 unsigned long msg_stime_high; 32 unsigned long msg_rtime; /* last msgrcv time */ 33 unsigned long msg_rtime_high; 34 unsigned long msg_ctime; /* last change time */ 35 unsigned long msg_ctime_high; 36 #else 37 # error processor byte order undefined! 38 #endif 39 unsigned long msg_cbytes; /* current number of bytes on queue */ 40 unsigned long msg_qnum; /* number of messages in queue */ 41 unsigned long msg_qbytes; /* max number of bytes on queue */ 42 __kernel_pid_t msg_lspid; /* pid of last msgsnd */ 43 __kernel_pid_t msg_lrpid; /* last receive pid */ 44 unsigned long __unused4; 45 unsigned long __unused5; 46 }; 47 48 #endif /* _XTENSA_MSGBUF_H */ 49