glibc/malloc
Xi Ruoyao 5a85786a90
Make __getrandom_nocancel set errno and add a _nostatus version
The __getrandom_nocancel function returns errors as negative values
instead of errno.  This is inconsistent with other _nocancel functions
and it breaks "TEMP_FAILURE_RETRY (__getrandom_nocancel (p, n, 0))" in
__arc4random_buf.  Use INLINE_SYSCALL_CALL instead of
INTERNAL_SYSCALL_CALL to fix this issue.

But __getrandom_nocancel has been avoiding from touching errno for a
reason, see BZ 29624.  So add a __getrandom_nocancel_nostatus function
and use it in tcache_key_initialize.

Signed-off-by: Xi Ruoyao <xry111@xry111.site>
Reviewed-by: Adhemerval Zanella  <adhemerval.zanella@linaro.org>
Signed-off-by: Andreas K. Hüttel <dilfridge@gentoo.org>
2024-01-12 14:23:11 +01:00
..
alloc_buffer_alloc_array.c
alloc_buffer_allocate.c
alloc_buffer_copy_bytes.c
alloc_buffer_copy_string.c
alloc_buffer_create_failure.c
arena.c
Depend
dynarray_at_failure.c
dynarray_emplace_enlarge.c
dynarray_finalize.c
dynarray_resize_clear.c
dynarray_resize.c
dynarray-skeleton.c
dynarray.h
hooks.c
Makefile
malloc-check.c
malloc-debug.c
malloc-internal.h
malloc.c Make __getrandom_nocancel set errno and add a _nostatus version 2024-01-12 14:23:11 +01:00
malloc.h
mallocbug.c
mcheck-impl.c
mcheck-init.c
mcheck.c
mcheck.h
memusage.c
memusage.sh Update copyright dates not handled by scripts/update-copyrights 2024-01-01 10:53:40 -08:00
memusagestat.c Update copyright dates not handled by scripts/update-copyrights 2024-01-01 10:53:40 -08:00
morecore.c
mtrace-impl.c
mtrace.c
mtrace.pl Update copyright dates not handled by scripts/update-copyrights 2024-01-01 10:53:40 -08:00
obstack.c
obstack.h
reallocarray.c
scratch_buffer_grow_preserve.c
scratch_buffer_grow.c
scratch_buffer_set_array_size.c
set-freeres.c
thread-freeres.c
tst-aligned-alloc-static.c
tst-aligned-alloc.c
tst-alloc_buffer.c
tst-calloc.c
tst-compathooks-off.c
tst-compathooks-on.c
tst-dynarray-at-fail.c
tst-dynarray-fail.c
tst-dynarray-shared.h
tst-dynarray.c
tst-free-errno.c
tst-interpose-aux-nothread.c
tst-interpose-aux-thread.c
tst-interpose-aux.c
tst-interpose-aux.h
tst-interpose-nothread.c
tst-interpose-skeleton.c
tst-interpose-static-nothread.c
tst-interpose-static-thread.c
tst-interpose-thread.c
tst-mallinfo2.c
tst-malloc_info.c
tst-malloc-backtrace.c
tst-malloc-check.c
tst-malloc-fork-deadlock.c
tst-malloc-stats-cancellation.c
tst-malloc-tcache-leak.c
tst-malloc-thread-exit.c
tst-malloc-thread-fail.c
tst-malloc-too-large.c
tst-malloc-usable-tunables.c
tst-malloc-usable.c
tst-malloc.c
tst-mallocalign1.c
tst-mallocfork2.c
tst-mallocfork3.c
tst-mallocfork.c
tst-mallocstate.c
tst-mallopt.c
tst-memalign-2.c
tst-memalign-3.c
tst-memalign.c
tst-mtrace.c
tst-mtrace.sh
tst-mxfast.c
tst-obstack.c
tst-posix_memalign.c
tst-pvalloc-fortify.c
tst-pvalloc.c
tst-realloc.c
tst-reallocarray.c
tst-safe-linking.c
tst-scratch_buffer.c
tst-tcfree1.c
tst-tcfree2.c
tst-tcfree3.c
tst-trim1.c
tst-valloc.c
Versions