1e2be04c7SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0+ WITH Linux-syscall-note */ 2c3617f72SDavid Howells #ifndef _ASM_POWERPC_SEMBUF_H 3c3617f72SDavid Howells #define _ASM_POWERPC_SEMBUF_H 4c3617f72SDavid Howells 5c3617f72SDavid Howells /* 6c3617f72SDavid Howells * This program is free software; you can redistribute it and/or 7c3617f72SDavid Howells * modify it under the terms of the GNU General Public License 8c3617f72SDavid Howells * as published by the Free Software Foundation; either version 9c3617f72SDavid Howells * 2 of the License, or (at your option) any later version. 10c3617f72SDavid Howells */ 11c3617f72SDavid Howells 12c3617f72SDavid Howells /* 13c3617f72SDavid Howells * The semid64_ds structure for PPC architecture. 14c3617f72SDavid Howells * Note extra padding because this structure is passed back and forth 15c3617f72SDavid Howells * between kernel and user space. 16c3617f72SDavid Howells * 17c3617f72SDavid Howells * Pad space is left for: 18*d0b67de9SArnd Bergmann * - 2 miscellaneous 32/64-bit values 19c3617f72SDavid Howells */ 20c3617f72SDavid Howells 21c3617f72SDavid Howells struct semid64_ds { 22c3617f72SDavid Howells struct ipc64_perm sem_perm; /* permissions .. see ipc.h */ 23c3617f72SDavid Howells #ifndef __powerpc64__ 24*d0b67de9SArnd Bergmann unsigned long sem_otime_high; 25*d0b67de9SArnd Bergmann unsigned long sem_otime; /* last semop time */ 26*d0b67de9SArnd Bergmann unsigned long sem_ctime_high; 27*d0b67de9SArnd Bergmann unsigned long sem_ctime; /* last change time */ 28*d0b67de9SArnd Bergmann #else 29c3617f72SDavid Howells __kernel_time_t sem_otime; /* last semop time */ 30c3617f72SDavid Howells __kernel_time_t sem_ctime; /* last change time */ 31*d0b67de9SArnd Bergmann #endif 32c3617f72SDavid Howells unsigned long sem_nsems; /* no. of semaphores in array */ 33c3617f72SDavid Howells unsigned long __unused3; 34c3617f72SDavid Howells unsigned long __unused4; 35c3617f72SDavid Howells }; 36c3617f72SDavid Howells 37c3617f72SDavid Howells #endif /* _ASM_POWERPC_SEMBUF_H */ 38