Lines Matching refs:semid

120 		int semid, int semnum, int adjval);
121 static void semundo_clear(int semid, int semnum);
549 semundo_adjust(struct proc *p, int *supidx, int semid,
590 if (sueptr->une_id != semid || sueptr->une_num != semnum)
628 new_sueptr->une_id = semid;
637 semundo_clear(int semid, int semnum)
651 if (sueptr->une_id == semid) {
679 int semid = uap->semid;
690 AUDIT_ARG(svipc_id, semid);
695 printf("call to semctl(%d, %d, %d, 0x%qx)\n", semid, semnum, cmd, user_arg);
698 semid = IPCID_TO_IX(semid);
700 if (semid < 0 || semid >= seminfo.semmni) {
702 printf("Invalid semid\n");
708 semakptr = &sema[semid];
710 semakptr->u.sem_perm._seq != IPCID_TO_SEQ(uap->semid)) {
742 semundo_clear(semid, -1);
864 semundo_clear(semid, semnum);
882 semundo_clear(semid, -1);
901 int semid, eval;
919 for (semid = 0; semid < seminfo.semmni; semid++) {
920 if ((sema[semid].u.sem_perm.mode & SEM_ALLOC) &&
921 sema[semid].u.sem_perm._key == key)
924 if (semid < seminfo.semmni) {
928 if ((eval = ipcperm(cred, &sema[semid].u.sem_perm,
931 if (nsems < 0 || sema[semid].u.sem_nsems < nsems) {
946 eval = mac_sysvsem_check_semget(cred, &sema[semid]);
979 for (semid = 0; semid < seminfo.semmni; semid++) {
980 if ((sema[semid].u.sem_perm.mode & SEM_ALLOC) == 0)
983 if (semid == seminfo.semmni) {
997 printf("semid %d is available\n", semid);
999 sema[semid].u.sem_perm._key = key;
1000 sema[semid].u.sem_perm.cuid = kauth_cred_getuid(cred);
1001 sema[semid].u.sem_perm.uid = kauth_cred_getuid(cred);
1002 sema[semid].u.sem_perm.cgid = kauth_cred_getgid(cred);
1003 sema[semid].u.sem_perm.gid = kauth_cred_getgid(cred);
1004 sema[semid].u.sem_perm.mode = (semflg & 0777) | SEM_ALLOC;
1005 sema[semid].u.sem_perm._seq =
1006 (sema[semid].u.sem_perm._seq + 1) & 0x7fff;
1007 sema[semid].u.sem_nsems = nsems;
1008 sema[semid].u.sem_otime = 0;
1009 sema[semid].u.sem_ctime = sysv_semtime();
1010 sema[semid].u.sem_base = &sem_pool[semtot];
1012 bzero(sema[semid].u.sem_base,
1013 sizeof(sema[semid].u.sem_base[0])*nsems);
1015 mac_sysvsem_label_associate(cred, &sema[semid]);
1018 printf("sembase = 0x%x, next = 0x%x\n", sema[semid].u.sem_base,
1030 *retval = IXSEQ_TO_IPCID(semid, sema[semid].u.sem_perm);
1045 int semid = uap->semid;
1055 AUDIT_ARG(svipc_id, uap->semid);
1060 printf("call to semop(%d, 0x%x, %d)\n", semid, sops, nsops);
1063 semid = IPCID_TO_IX(semid); /* Convert back to zero origin */
1065 if (semid < 0 || semid >= seminfo.semmni) {
1070 semakptr = &sema[semid];
1075 if (semakptr->u.sem_perm._seq != IPCID_TO_SEQ(uap->semid)) {
1247 semakptr = &sema[semid]; /* sema may have been reallocated */
1249 semakptr->u.sem_perm._seq != IPCID_TO_SEQ(uap->semid) ||
1303 eval = semundo_adjust(p, &supidx, semid,
1323 if (semundo_adjust(p, &supidx, semid,
1421 int semid;
1427 semid = sueptr->une_id;
1431 semakptr = &sema[semid];
1433 panic("semexit - semid not allocated");
1440 semid,