5f5cc45cf0e027f6ca503dc229a4890fc7164b66 |
|
19-Aug-2014 |
Elliott Hughes <enh@google.com> |
Fix <features.h> (_BSD_SOURCE and _GNU_SOURCE). <features.h> is supposed to take user-settable stuff like _GNU_SOURCE and _BSD_SOURCE and turn them into __USE_GNU and __USE_BSD for use in the C library headers. Instead, bionic used to unconditionally define _BSD_SOURCE and _GNU_SOURCE, and then test _GNU_SOURCE in the header files (which makes no sense whatsoever). Bug: 14659579 Change-Id: Ice4cf21a364ea2e559071dc8329e995277d5b987
|
fa9e16efaf0e885f6044e725eb759ef6de10f7ef |
|
24-Jun-2014 |
Elliott Hughes <enh@google.com> |
Fix getpid caching across a clone. If you make clone, fork, or vfork system calls directly, you're still on your own, but we now do the right thing for the clone wrapper. With this implementation, children lose the getpid caching, but we've no reason to think that that covers any significant use cases. Bug: 15387103 Change-Id: Icfab6b63c708fea830960742ec92aeba8ce7680d
|
ebc8cd117a562f387c52ed4e1aeba0fb21f33194 |
|
07-Jun-2014 |
Elliott Hughes <enh@google.com> |
Rename __bionic_clone_entry to __start_thread. This seems a bit less obscure. Change-Id: I7dc528c253b73c861694f67556ad8f919bf92136
|
6203e7b853a587fbd70cea2e58b63ae38a71a13e |
|
30-May-2014 |
Elliott Hughes <enh@google.com> |
Add some missing __noreturn attributes. This is more honest, and lets us remove a hack. Change-Id: I309f064743ded5248573ccafc379f78d417db08d
|
0d236aa3f1e6d31b0c729448ae9d3ed1cad23fb4 |
|
09-May-2014 |
Elliott Hughes <enh@google.com> |
Align the child stack in clone(2). Also let clone(2) set the TLS for x86. Also ensure we initialize the TLS before we clone(2) for all architectures. Change-Id: Ie5fa4466e1c9ee116a281dfedef574c5ba60c0b5
|
954cf0d4e2669f91194b45f484152e47efa4f6c7 |
|
09-May-2014 |
Elliott Hughes <enh@google.com> |
Hide the __bionic_clone and __bionic_clone_entry implementation details. clone(2) is the public symbol. Also switch a test from __bionic_clone to clone; testing public API means the test now works on glibc too. Change-Id: If59def26a00c3afadb8a6cf9442094c35a59ffde
|
36d6188f8cd8b948fb797f11d9620d63d0c2215a |
|
19-Nov-2013 |
Elliott Hughes <enh@google.com> |
Clean up forking and cloning. The kernel now maintains the pthread_internal_t::tid field for us, and __clone was only used in one place so let's inline it so we don't have to leave such a dangerous function lying around. Also rename files to match their content and remove some useless #includes. Change-Id: I24299fb4a940e394de75f864ee36fdabbd9438f9
|