1 /* SPDX-License-Identifier: GPL-2.0 */ 2 #ifndef _LINUX_SEM_H 3 #define _LINUX_SEM_H 4 5 #include <uapi/linux/sem.h> 6 7 struct task_struct; 8 struct sem_undo_list; 9 10 #ifdef CONFIG_SYSVIPC 11 12 struct sysv_sem { 13 struct sem_undo_list *undo_list; 14 }; 15 16 extern int copy_semundo(unsigned long clone_flags, struct task_struct *tsk); 17 extern void exit_sem(struct task_struct *tsk); 18 19 #else 20 21 struct sysv_sem { 22 /* empty */ 23 }; 24 copy_semundo(unsigned long clone_flags,struct task_struct * tsk)25static inline int copy_semundo(unsigned long clone_flags, struct task_struct *tsk) 26 { 27 return 0; 28 } 29 exit_sem(struct task_struct * tsk)30static inline void exit_sem(struct task_struct *tsk) 31 { 32 return; 33 } 34 #endif 35 36 #endif /* _LINUX_SEM_H */ 37