• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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