Lines Matching refs:semnum

850 static int wake_const_ops(struct sem_array *sma, int semnum,  in wake_const_ops()  argument
857 if (semnum == -1) in wake_const_ops()
860 pending_list = &sma->sems[semnum].pending_const; in wake_const_ops()
945 static int update_queue(struct sem_array *sma, int semnum, struct wake_q_head *wake_q) in update_queue() argument
951 if (semnum == -1) in update_queue()
954 pending_list = &sma->sems[semnum].pending_alter; in update_queue()
967 if (semnum != -1 && sma->sems[semnum].semval == 0) in update_queue()
1068 static int check_qop(struct sem_array *sma, int semnum, struct sem_queue *q, in check_qop() argument
1084 if (sop->sem_num != semnum) in check_qop()
1102 static int count_semcnt(struct sem_array *sma, ushort semnum, in count_semcnt() argument
1112 l = &sma->sems[semnum].pending_const; in count_semcnt()
1114 l = &sma->sems[semnum].pending_alter; in count_semcnt()
1125 semcnt += check_qop(sma, semnum, q, count_zero); in count_semcnt()
1129 semcnt += check_qop(sma, semnum, q, count_zero); in count_semcnt()
1339 static int semctl_setval(struct ipc_namespace *ns, int semid, int semnum, in semctl_setval() argument
1358 if (semnum < 0 || semnum >= sma->sem_nsems) { in semctl_setval()
1383 semnum = array_index_nospec(semnum, sma->sem_nsems); in semctl_setval()
1384 curr = &sma->sems[semnum]; in semctl_setval()
1388 un->semadj[semnum] = 0; in semctl_setval()
1401 static int semctl_main(struct ipc_namespace *ns, int semid, int semnum, in semctl_main() argument
1529 if (semnum < 0 || semnum >= nsems) in semctl_main()
1538 semnum = array_index_nospec(semnum, nsems); in semctl_main()
1539 curr = &sma->sems[semnum]; in semctl_main()
1549 err = count_semcnt(sma, semnum, 0); in semctl_main()
1552 err = count_semcnt(sma, semnum, 1); in semctl_main()
1648 static long ksys_semctl(int semid, int semnum, int cmd, unsigned long arg, int version) in ksys_semctl() argument
1679 return semctl_main(ns, semid, semnum, cmd, p); in ksys_semctl()
1689 return semctl_setval(ns, semid, semnum, val); in ksys_semctl()
1702 SYSCALL_DEFINE4(semctl, int, semid, int, semnum, int, cmd, unsigned long, arg) in SYSCALL_DEFINE4() argument
1704 return ksys_semctl(semid, semnum, cmd, arg, IPC_64); in SYSCALL_DEFINE4()
1708 long ksys_old_semctl(int semid, int semnum, int cmd, unsigned long arg) in ksys_old_semctl() argument
1712 return ksys_semctl(semid, semnum, cmd, arg, version); in ksys_old_semctl()
1715 SYSCALL_DEFINE4(old_semctl, int, semid, int, semnum, int, cmd, unsigned long, arg) in SYSCALL_DEFINE4() argument
1717 return ksys_old_semctl(semid, semnum, cmd, arg); in SYSCALL_DEFINE4()
1771 static long compat_ksys_semctl(int semid, int semnum, int cmd, int arg, int version) in compat_ksys_semctl() argument
1802 return semctl_main(ns, semid, semnum, cmd, p); in compat_ksys_semctl()
1804 return semctl_setval(ns, semid, semnum, arg); in compat_ksys_semctl()
1816 COMPAT_SYSCALL_DEFINE4(semctl, int, semid, int, semnum, int, cmd, int, arg) in COMPAT_SYSCALL_DEFINE4() argument
1818 return compat_ksys_semctl(semid, semnum, cmd, arg, IPC_64); in COMPAT_SYSCALL_DEFINE4()
1822 long compat_ksys_old_semctl(int semid, int semnum, int cmd, int arg) in compat_ksys_old_semctl() argument
1826 return compat_ksys_semctl(semid, semnum, cmd, arg, version); in compat_ksys_old_semctl()
1829 COMPAT_SYSCALL_DEFINE4(old_semctl, int, semid, int, semnum, int, cmd, int, arg) in COMPAT_SYSCALL_DEFINE4() argument
1831 return compat_ksys_old_semctl(semid, semnum, cmd, arg); in COMPAT_SYSCALL_DEFINE4()