/* brk system call for Linux/i386.
- Copyright (C) 1995, 1996, 2000, 2002 Free Software Foundation, Inc.
+ Copyright (C) 1995, 1996, 2000, 2002, 2003 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
{
void *__unbounded newbrk;
- newbrk = (void *__unbounded) INTERNAL_SYSCALL (brk, 1, __ptrvalue (addr));
+ INTERNAL_SYSCALL_DECL (err);
+ newbrk = (void *__unbounded) INTERNAL_SYSCALL (brk, err, 1,
+ __ptrvalue (addr));
__curbrk = newbrk;
k_newact.sa_restorer = &restore;
}
- result = INTERNAL_SYSCALL (sigaction, 3, sig,
- act ? __ptrvalue (&k_newact) : 0,
- oact ? __ptrvalue (&k_oldact) : 0);
+ result = INLINE_SYSCALL (sigaction, 3, sig,
+ act ? __ptrvalue (&k_newact) : 0,
+ oact ? __ptrvalue (&k_oldact) : 0);
if (result < 0)
- {
- __set_errno (-result);
- return -1;
- }
+ return -1;
if (oact)
{
-/* Copyright (C) 2002 Free Software Foundation, Inc.
+/* Copyright (C) 2002, 2003 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
{
pid_t child = *(pid_t *) arg;
- INTERNAL_SYSCALL (kill, 2, child, SIGKILL);
+ INTERNAL_SYSCALL_DECL (err);
+ INTERNAL_SYSCALL (kill, err, 2, child, SIGKILL);
TEMP_FAILURE_RETRY (__waitpid (child, NULL, 0));
/* brk system call for Linux/m68k.
- Copyright (C) 1996, 1997 Free Software Foundation, Inc.
+ Copyright (C) 1996, 1997, 2003 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
{
void *newbrk;
- newbrk = (void *) INTERNAL_SYSCALL (brk, 1, addr);
+ INTERNAL_SYSCALL_DECL (err);
+ newbrk = (void *) INTERNAL_SYSCALL (brk, err, 1, addr);
__curbrk = newbrk;
if (newbrk < addr)
-/* Copyright (C) 2000, 2002 Free Software Foundation, Inc.
+/* Copyright (C) 2000, 2002, 2003 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Andreas Schwab <schwab@suse.de>.
return GL(dl_pagesize);
#ifdef __NR_getpagesize
- result = INTERNAL_SYSCALL (getpagesize, 0);
+ INTERNAL_SYSCALL_DECL (err);
+ result = INTERNAL_SYSCALL (getpagesize, err, 0);
/* The only possible error is ENOSYS. */
- if (!INTERNAL_SYSCALL_ERROR_P (result))
+ if (!INTERNAL_SYSCALL_ERROR_P (result, err))
return result;
#endif
/* XXX The size argument hopefully will have to be changed to the
real size of the user-level sigset_t. */
#ifdef INTERNAL_SYSCALL
- ret = INTERNAL_SYSCALL (rt_sigtimedwait, 4, CHECK_SIGSET (set),
+ INTERNAL_SYSCALL_DECL (err);
+ ret = INTERNAL_SYSCALL (rt_sigtimedwait, err, 4, CHECK_SIGSET (set),
NULL, NULL, _NSIG / 8);
- if (! INTERNAL_SYSCALL_ERROR_P (ret))
+ if (! INTERNAL_SYSCALL_ERROR_P (ret, err))
{
*sig = ret;
ret = 0;
}
else
- ret = INTERNAL_SYSCALL_ERRNO (ret);
+ ret = INTERNAL_SYSCALL_ERRNO (ret, err);
#else
ret = INLINE_SYSCALL (rt_sigtimedwait, 4, CHECK_SIGSET (set),
NULL, NULL, _NSIG / 8);