Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
0002 #ifndef _ASM_SEMBUF_H
0003 #define _ASM_SEMBUF_H
0004 
0005 #include <asm/ipcbuf.h>
0006 
0007 /*
0008  * The semid64_ds structure for the MIPS architecture.
0009  * Note extra padding because this structure is passed back and forth
0010  * between kernel and user space.
0011  *
0012  * Pad space is left for 2 miscellaneous 64-bit values on mips64,
0013  * but used for the upper 32 bit of the time values on mips32.
0014  */
0015 
0016 #ifdef __mips64
0017 struct semid64_ds {
0018     struct ipc64_perm sem_perm;     /* permissions .. see ipc.h */
0019     long         sem_otime;     /* last semop time */
0020     long         sem_ctime;     /* last change time */
0021     unsigned long   sem_nsems;      /* no. of semaphores in array */
0022     unsigned long   __unused1;
0023     unsigned long   __unused2;
0024 };
0025 #else
0026 struct semid64_ds {
0027     struct ipc64_perm sem_perm;     /* permissions .. see ipc.h */
0028     unsigned long   sem_otime;      /* last semop time */
0029     unsigned long   sem_ctime;      /* last change time */
0030     unsigned long   sem_nsems;      /* no. of semaphores in array */
0031     unsigned long   sem_otime_high;
0032     unsigned long   sem_ctime_high;
0033 };
0034 #endif
0035 
0036 #endif /* _ASM_SEMBUF_H */