aboutsummaryrefslogtreecommitdiff
path: root/ChangeLog
diff options
context:
space:
mode:
authorFlorian Weimer <fweimer@redhat.com>2016-05-12 08:54:17 +0200
committerFlorian Weimer <fweimer@redhat.com>2016-05-12 15:26:55 +0200
commit56290d6e762c1194547e73ff0b948cd79d3a1e03 (patch)
treec6025736ee13b24a908e7d12496d47b636592345 /ChangeLog
parentcd065b68439076971640047cc6eaada27dcfd0f7 (diff)
downloadglibc-56290d6e762c1194547e73ff0b948cd79d3a1e03.zip
glibc-56290d6e762c1194547e73ff0b948cd79d3a1e03.tar.gz
glibc-56290d6e762c1194547e73ff0b948cd79d3a1e03.tar.bz2
Increase fork signal safety for single-threaded processes [BZ #19703]
This provides a band-aid and addresses the scenario where fork is called from a signal handler while the process is in the malloc subsystem (or has acquired the libio list lock). It does not address the general issue of async-signal-safety of fork; multi-threaded processes are not covered, and some glibc subsystems have fork handlers which are not async-signal-safe.
Diffstat (limited to 'ChangeLog')
-rw-r--r--ChangeLog10
1 files changed, 10 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index dee85ca..e623247 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,15 @@
2016-05-12 Florian Weimer <fweimer@redhat.com>
+ [BZ #19703]
+ Partially async-signal-safe fork for single-threaded processes.
+ * sysdeps/nptl/fork.c (__libc_fork): Introduce multiple_threads
+ variable. Do not acquire and reset/release malloc and libio locks
+ in single-threaded processes.
+ * malloc/tst-mallocfork2.c: New file.
+ * malloc/Makefile (tests): Add it.
+
+2016-05-12 Florian Weimer <fweimer@redhat.com>
+
* sysdeps/posix/getaddrinfo.c (gaih_inet_serv): Add tmpbuf
argument. Use scratch buffer instead of extend_alloca.
(gethosts): Use scratch buffer instead of extend_alloca.