+2003-07-07 Ulrich Drepper <drepper@redhat.com>
+
+ * sysdeps/unix/sysv/linux/kernel-features.h: Version
+ __ASSUME_CORRECT_SI_PID and __ASSUME_TGKILL if possible.
+
+ * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Adjust for
+ compilation with HAVE_AUX_SECURE defined.
+
2003-07-05 Richard Henderson <rth@redhat.com>
* sysdeps/alpha/elf/initfini.c: Avoid .ent/.end.
+2003-07-05 Richard Henderson <rth@redhat.com>
+
+ * sysdeps/alpha/elf/pt-initfini.c: Avoid .ent/.end.
+ * sysdeps/unix/sysv/linux/alpha/lowlevellock.h (lll_futex_wait,
+ lll_futex_timed_wait, lll_futex_wake, lll_futex_requeue): On success
+ return actual return value from the syscall, not 0.
+
2003-07-07 Ulrich Drepper <drepper@redhat.com>
* descr.h (struct pthread): Add pid field.
/*@_init_PROLOG_BEGINS*/ \n\
.section .init, \"ax\", @progbits \n\
.globl _init \n\
- .ent _init \n\
+ .type _init,@function \n\
+ .usepv _init,std \n\
_init: \n\
ldgp $29, 0($27) \n\
subq $30, 16, $30 \n\
stq $26, 0($30) \n\
stq $29, 8($30) \n\
- .prologue 1 \n\
bsr $26, __pthread_initialize_minimal_internal !samegp \n\
.align 3 \n\
- .end _init \n\
- .size _init, 0 \n\
/*@_init_PROLOG_ENDS*/ \n\
\n\
/*@_init_EPILOG_BEGINS*/ \n\
/*@_fini_PROLOG_BEGINS*/ \n\
.section .fini, \"ax\", @progbits \n\
.globl _fini \n\
- .ent _fini \n\
+ .type _fini,@function \n\
+ .usepv _fini,std \n\
_fini: \n\
ldgp $29, 0($27) \n\
subq $30, 16, $30 \n\
stq $26, 0($30) \n\
stq $29, 8($30) \n\
- .prologue 1 \n\
.align 3 \n\
- .end _fini \n\
- .size _fini, 0 \n\
/*@_fini_PROLOG_ENDS*/ \n\
\n\
/*@_fini_EPILOG_BEGINS*/ \n\
long int __ret; \
__ret = INTERNAL_SYSCALL (futex, __err, 4, \
(futexp), FUTEX_WAIT, (val), 0); \
- INTERNAL_SYSCALL_ERROR_P (__ret, __err)? -__ret: 0; \
+ INTERNAL_SYSCALL_ERROR_P (__ret, __err)? -__ret : __ret; \
})
#define lll_futex_timed_wait(futexp, val, timespec) \
long int __ret; \
__ret = INTERNAL_SYSCALL (futex, __err, 4, \
(futexp), FUTEX_WAIT, (val), (timespec)); \
- INTERNAL_SYSCALL_ERROR_P (__ret, __err)? -__ret: 0; \
+ INTERNAL_SYSCALL_ERROR_P (__ret, __err)? -__ret : __ret; \
})
#define lll_futex_wake(futexp, nr) \
long int __ret; \
__ret = INTERNAL_SYSCALL (futex, __err, 4, \
(futexp), FUTEX_WAKE, (nr), 0); \
- INTERNAL_SYSCALL_ERROR_P (__ret, __err)? -__ret: 0; \
+ INTERNAL_SYSCALL_ERROR_P (__ret, __err)? -__ret : __ret; \
})
#define lll_futex_requeue(futexp, nr_wake, nr_move, mutex) \
({ \
INTERNAL_SYSCALL_DECL (__err); \
long int __ret; \
- \
__ret = INTERNAL_SYSCALL (futex, __err, 5, \
(futexp), FUTEX_REQUEUE, (nr_wake), (nr_move), \
(mutex)); \
- INTERNAL_SYSCALL_ERROR_P (__ret, __err)? -__ret: 0; \
+ INTERNAL_SYSCALL_ERROR_P (__ret, __err)? -__ret : __ret; \
})
/* Set *futex to 1 if it is 0, atomically. Returns the old value */