msgbuf.h 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  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. #ifndef _XTENSA_MSGBUF_H
  17. #define _XTENSA_MSGBUF_H
  18. #include <asm/ipcbuf.h>
  19. struct msqid64_ds {
  20. struct ipc64_perm msg_perm;
  21. #ifdef __XTENSA_EB__
  22. unsigned long msg_stime_high;
  23. unsigned long msg_stime; /* last msgsnd time */
  24. unsigned long msg_rtime_high;
  25. unsigned long msg_rtime; /* last msgrcv time */
  26. unsigned long msg_ctime_high;
  27. unsigned long msg_ctime; /* last change time */
  28. #elif defined(__XTENSA_EL__)
  29. unsigned long msg_stime; /* last msgsnd time */
  30. unsigned long msg_stime_high;
  31. unsigned long msg_rtime; /* last msgrcv time */
  32. unsigned long msg_rtime_high;
  33. unsigned long msg_ctime; /* last change time */
  34. unsigned long msg_ctime_high;
  35. #else
  36. # error processor byte order undefined!
  37. #endif
  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. #endif /* _XTENSA_MSGBUF_H */