7 int semget(key_t key
, int n
, int fl
)
9 /* The kernel uses the wrong type for the sem_nsems member
10 * of struct semid_ds, and thus might not check that the
11 * n fits in the correct (per POSIX) userspace type, so
12 * we have to check here. */
13 if (n
> USHRT_MAX
) return __syscall_ret(-EINVAL
);
15 return syscall(SYS_semget
, key
, n
, fl
);
17 return syscall(SYS_ipc
, IPCOP_semget
, key
, n
, fl
);