diff options
author | Ulrich Drepper <drepper@redhat.com> | 2000-10-20 06:14:58 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2000-10-20 06:14:58 +0000 |
commit | d0168cc0992a79245c17d892a622fec527b1fb03 (patch) | |
tree | e23a77cc4020fefd99b7de9e5e766ae5f6fc53a8 | |
parent | d9c1416a4a5b9b3da5f90eabae5d7cecfd3b6986 (diff) | |
download | glibc-d0168cc0992a79245c17d892a622fec527b1fb03.tar glibc-d0168cc0992a79245c17d892a622fec527b1fb03.tar.gz glibc-d0168cc0992a79245c17d892a622fec527b1fb03.tar.bz2 glibc-d0168cc0992a79245c17d892a622fec527b1fb03.zip |
(__new_semctl): Pass union semun as 4th argument to semctl syscall, not
address of it.
-rw-r--r-- | sysdeps/unix/sysv/linux/alpha/semctl.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/sysdeps/unix/sysv/linux/alpha/semctl.c b/sysdeps/unix/sysv/linux/alpha/semctl.c index 48bc2d45cf..ea1a1e4d71 100644 --- a/sysdeps/unix/sysv/linux/alpha/semctl.c +++ b/sysdeps/unix/sysv/linux/alpha/semctl.c @@ -73,7 +73,7 @@ __new_semctl (int semid, int semnum, int cmd, ...) #if __ASSUME_32BITUIDS > 0 return INLINE_SYSCALL (semctl, 4, semid, semnum, cmd | __IPC_64, - CHECK_SEMCTL (&arg, semid, cmd | __IPC_64)); + CHECK_SEMCTL (&arg, semid, cmd | __IPC_64)->array); #else switch (cmd) { case SEM_STAT: @@ -82,7 +82,7 @@ __new_semctl (int semid, int semnum, int cmd, ...) break; default: return INLINE_SYSCALL (semctl, 4, semid, semnum, cmd, - CHECK_SEMCTL (&arg, semid, cmd)); + CHECK_SEMCTL (&arg, semid, cmd)->array); } { @@ -93,7 +93,7 @@ __new_semctl (int semid, int semnum, int cmd, ...) /* Unfortunately there is no way how to find out for sure whether we should use old or new semctl. */ result = INLINE_SYSCALL (semctl, 4, semid, semnum, cmd | __IPC_64, - CHECK_SEMCTL (&arg, semid, cmd | __IPC_64)); + CHECK_SEMCTL (&arg, semid, cmd | __IPC_64)->array); if (result != -1 || errno != EINVAL) return result; @@ -113,7 +113,7 @@ __new_semctl (int semid, int semnum, int cmd, ...) } } result = INLINE_SYSCALL (semctl, 4, semid, semnum, cmd, - CHECK_SEMCTL (&arg, semid, cmd)); + CHECK_SEMCTL (&arg, semid, cmd)->array); if (result != -1 && cmd != IPC_SET) { memset(buf, 0, sizeof(*buf)); |