xref: /linux-6.15/arch/xtensa/include/uapi/asm/msgbuf.h (revision 9ef0e004)
1e2be04c7SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
283596729SDavid Howells /*
383596729SDavid Howells  * include/asm-xtensa/msgbuf.h
483596729SDavid Howells  *
583596729SDavid Howells  * The msqid64_ds structure for the Xtensa architecture.
683596729SDavid Howells  * Note extra padding because this structure is passed back and forth
783596729SDavid Howells  * between kernel and user space.
883596729SDavid Howells  *
983596729SDavid Howells  * Pad space is left for:
1083596729SDavid Howells  * - 2 miscellaneous 32-bit values
1183596729SDavid Howells  *
1283596729SDavid Howells  * This file is subject to the terms and conditions of the GNU General
1383596729SDavid Howells  * Public License.  See the file "COPYING" in the main directory of
1483596729SDavid Howells  * this archive for more details.
1583596729SDavid Howells  */
1683596729SDavid Howells 
1783596729SDavid Howells #ifndef _XTENSA_MSGBUF_H
1883596729SDavid Howells #define _XTENSA_MSGBUF_H
1983596729SDavid Howells 
20*9ef0e004SMasahiro Yamada #include <asm/ipcbuf.h>
21*9ef0e004SMasahiro Yamada 
2283596729SDavid Howells struct msqid64_ds {
2383596729SDavid Howells 	struct ipc64_perm msg_perm;
2483596729SDavid Howells #ifdef __XTENSA_EB__
25b497ef57SArnd Bergmann 	unsigned long  msg_stime_high;
26b497ef57SArnd Bergmann 	unsigned long  msg_stime;	/* last msgsnd time */
27b497ef57SArnd Bergmann 	unsigned long  msg_rtime_high;
28b497ef57SArnd Bergmann 	unsigned long  msg_rtime;	/* last msgrcv time */
29b497ef57SArnd Bergmann 	unsigned long  msg_ctime_high;
30b497ef57SArnd Bergmann 	unsigned long  msg_ctime;	/* last change time */
3183596729SDavid Howells #elif defined(__XTENSA_EL__)
32b497ef57SArnd Bergmann 	unsigned long  msg_stime;	/* last msgsnd time */
33b497ef57SArnd Bergmann 	unsigned long  msg_stime_high;
34b497ef57SArnd Bergmann 	unsigned long  msg_rtime;	/* last msgrcv time */
35b497ef57SArnd Bergmann 	unsigned long  msg_rtime_high;
36b497ef57SArnd Bergmann 	unsigned long  msg_ctime;	/* last change time */
37b497ef57SArnd Bergmann 	unsigned long  msg_ctime_high;
3883596729SDavid Howells #else
3983596729SDavid Howells # error processor byte order undefined!
4083596729SDavid Howells #endif
4183596729SDavid Howells 	unsigned long  msg_cbytes;	/* current number of bytes on queue */
4283596729SDavid Howells 	unsigned long  msg_qnum;	/* number of messages in queue */
4383596729SDavid Howells 	unsigned long  msg_qbytes;	/* max number of bytes on queue */
4483596729SDavid Howells 	__kernel_pid_t msg_lspid;	/* pid of last msgsnd */
4583596729SDavid Howells 	__kernel_pid_t msg_lrpid;	/* last receive pid */
4683596729SDavid Howells 	unsigned long  __unused4;
4783596729SDavid Howells 	unsigned long  __unused5;
4883596729SDavid Howells };
4983596729SDavid Howells 
5083596729SDavid Howells #endif	/* _XTENSA_MSGBUF_H */
51