diff options
Diffstat (limited to 'sysdeps/unix/sysv/linux/createthread.c')
-rw-r--r-- | sysdeps/unix/sysv/linux/createthread.c | 19 |
1 files changed, 8 insertions, 11 deletions
diff --git a/sysdeps/unix/sysv/linux/createthread.c b/sysdeps/unix/sysv/linux/createthread.c index 33e5f5d..21f9d24 100644 --- a/sysdeps/unix/sysv/linux/createthread.c +++ b/sysdeps/unix/sysv/linux/createthread.c @@ -110,7 +110,6 @@ create_thread (struct pthread *pd, const struct pthread_attr *attr, /* Now we have the possibility to set scheduling parameters etc. */ if (attr != NULL) { - INTERNAL_SYSCALL_DECL (err); int res; /* Set the affinity mask if necessary. */ @@ -118,21 +117,19 @@ create_thread (struct pthread *pd, const struct pthread_attr *attr, { assert (*stopped_start); - res = INTERNAL_SYSCALL (sched_setaffinity, err, 3, pd->tid, - attr->cpusetsize, attr->cpuset); + res = INTERNAL_SYSCALL_CALL (sched_setaffinity, pd->tid, + attr->cpusetsize, attr->cpuset); - if (__glibc_unlikely (INTERNAL_SYSCALL_ERROR_P (res, err))) + if (__glibc_unlikely (INTERNAL_SYSCALL_ERROR_P (res))) err_out: { /* The operation failed. We have to kill the thread. We let the normal cancellation mechanism do the work. */ pid_t pid = __getpid (); - INTERNAL_SYSCALL_DECL (err2); - (void) INTERNAL_SYSCALL_CALL (tgkill, err2, pid, pd->tid, - SIGCANCEL); + INTERNAL_SYSCALL_CALL (tgkill, pid, pd->tid, SIGCANCEL); - return INTERNAL_SYSCALL_ERRNO (res, err); + return INTERNAL_SYSCALL_ERRNO (res); } } @@ -141,10 +138,10 @@ create_thread (struct pthread *pd, const struct pthread_attr *attr, { assert (*stopped_start); - res = INTERNAL_SYSCALL (sched_setscheduler, err, 3, pd->tid, - pd->schedpolicy, &pd->schedparam); + res = INTERNAL_SYSCALL_CALL (sched_setscheduler, pd->tid, + pd->schedpolicy, &pd->schedparam); - if (__glibc_unlikely (INTERNAL_SYSCALL_ERROR_P (res, err))) + if (__glibc_unlikely (INTERNAL_SYSCALL_ERROR_P (res))) goto err_out; } } |