Lines Matching refs:sops
1047 struct sembuf sops[seminfo.semopm];
1060 printf("call to semop(%d, 0x%x, %d)\n", semid, sops, nsops);
1089 printf("too many sops (max=%d, nsops=%d)\n",
1097 if ((eval = copyin(uap->sops, &sops, nsops * sizeof(struct sembuf))) != 0) {
1100 uap->sops, &sops, nsops * sizeof(struct sembuf));
1107 * Initial pass thru sops to see what permissions are needed.
1111 j |= (sops[i].sem_op == 0) ? SEM_R : SEM_A;
1138 sopptr = &sops[i];
1197 semakptr->u.sem_base[sops[j].sem_num].semval -=
1198 sops[j].sem_op;
1298 if ((sops[i].sem_flg & SEM_UNDO) == 0)
1300 adjval = sops[i].sem_op;
1304 sops[i].sem_num, -adjval);
1318 if ((sops[j].sem_flg & SEM_UNDO) == 0)
1320 adjval = sops[j].sem_op;
1324 sops[j].sem_num, adjval) != 0)
1329 semakptr->u.sem_base[sops[j].sem_num].semval -=
1330 sops[j].sem_op;
1336 } /* loop through the sops */
1341 sopptr = &sops[i];