OSDN Git Service
Elliott Hughes [Tue, 19 Nov 2013 22:12:38 +0000 (14:12 -0800)]
am
1b2d214b: Merge "Clean up forking and cloning."
* commit '
1b2d214b62ad7bf46f37c79442a69d930aa29027':
Clean up forking and cloning.
Elliott Hughes [Tue, 19 Nov 2013 22:09:53 +0000 (22:09 +0000)]
Merge "Clean up forking and cloning."
Elliott Hughes [Tue, 19 Nov 2013 21:31:58 +0000 (13:31 -0800)]
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
Narayan Kamath [Tue, 19 Nov 2013 09:59:28 +0000 (01:59 -0800)]
am
9d70ddc4: Merge "Add test case for 1^NaN"
* commit '
9d70ddc466ed0bdb36908d69b1fe849904150eb7':
Add test case for 1^NaN
Narayan Kamath [Tue, 19 Nov 2013 09:56:53 +0000 (09:56 +0000)]
Merge "Add test case for 1^NaN"
Elliott Hughes [Tue, 19 Nov 2013 04:05:09 +0000 (20:05 -0800)]
am
318e86ed: Merge "bionic: call stdio cleanup on exit"
* commit '
318e86ed887e04e593f3db9b84b402d5501ced9b':
bionic: call stdio cleanup on exit
Elliott Hughes [Tue, 19 Nov 2013 04:01:54 +0000 (04:01 +0000)]
Merge "bionic: call stdio cleanup on exit"
Elliott Hughes [Tue, 19 Nov 2013 03:51:34 +0000 (19:51 -0800)]
am
303fe0cb: Merge "Fix pthread_join."
* commit '
303fe0cb38def66aa438b9caac32e5af298f840a':
Fix pthread_join.
Elliott Hughes [Tue, 19 Nov 2013 03:48:59 +0000 (03:48 +0000)]
Merge "Fix pthread_join."
Elliott Hughes [Sat, 16 Nov 2013 01:40:18 +0000 (17:40 -0800)]
Fix pthread_join.
Let the kernel keep pthread_internal_t::tid updated, including
across forks and for the main thread. This then lets us fix
pthread_join to only return after the thread has really exited.
Also fix the thread attributes of the main thread so we don't
unmap the main thread's stack (which is really owned by the
dynamic linker and contains things like environment variables),
which fixes crashes when joining with an exited main thread
and also fixes problems reported publicly with accessing environment
variables after the main thread exits (for which I've added a new
unit test).
In passing I also fixed a bug where if the clone(2) inside
pthread_create(3) fails, we'd unmap the child's stack and TLS (which
contains the mutex) and then try to unlock the mutex. Boom! It wasn't
until after I'd uploaded the fix for this that I came across a new
public bug reporting this exact failure.
Bug:
8206355
Bug:
11693195
Bug: https://code.google.com/p/android/issues/detail?id=57421
Bug: https://code.google.com/p/android/issues/detail?id=62392
Change-Id: I2af9cf6e8ae510a67256ad93cad891794ed0580b
Pawit Pornkitprasan [Thu, 14 Nov 2013 16:50:45 +0000 (23:50 +0700)]
bionic: call stdio cleanup on exit
As of
61e699a133a4807fe878a6cb0d7190d7c96e21f8, stdio clean up
functions are no longer registered in atexit and must be called
manually via __cleanup.
The issue this fixes is some static binaries linked against bionic
cannot output properly when piped or redirected because the buffer
is not flushed before closing.
This is done by pulling in exit.c (and other dependencies) from
netbsd.
Change-Id: I193e54a6d08900f291550029fe75ce76394d9e22
Christopher Ferris [Mon, 18 Nov 2013 23:29:38 +0000 (15:29 -0800)]
am
862faa12: Merge "Pull in cleaned version.h header."
* commit '
862faa12928038759e1bbdbc394a7d58b560f128':
Pull in cleaned version.h header.
Christopher Ferris [Mon, 18 Nov 2013 23:26:59 +0000 (23:26 +0000)]
Merge "Pull in cleaned version.h header."
Christopher Ferris [Mon, 18 Nov 2013 21:38:12 +0000 (13:38 -0800)]
am
be8344bb: Merge "Modify tests for another glibc difference."
* commit '
be8344bb068183715f808768341bce7fb69d5a70':
Modify tests for another glibc difference.
Christopher Ferris [Mon, 18 Nov 2013 21:35:20 +0000 (21:35 +0000)]
Merge "Modify tests for another glibc difference."
Narayan Kamath [Mon, 18 Nov 2013 18:47:48 +0000 (18:47 +0000)]
Add test case for 1^NaN
Should be 1.
Change-Id: I6cf723a419f51d3bda58286a538774b71276c7b5
Christopher Ferris [Sat, 16 Nov 2013 00:29:28 +0000 (16:29 -0800)]
Pull in cleaned version.h header.
Change-Id: Ia917af9336b63ed5a10147770a8110134cb274cb
Christopher Ferris [Fri, 15 Nov 2013 23:16:01 +0000 (15:16 -0800)]
Modify tests for another glibc difference.
It turns out that when passing a closed file to getdelim or getline, the
functions in glibc will properly return a failure, but errno might not be
set. Skip the errno check except on bionic.
Change-Id: I8d625f15303d4c2d42e8d28491ea8a368aea4d32
Elliott Hughes [Fri, 15 Nov 2013 23:31:28 +0000 (15:31 -0800)]
am
f246c589: Merge "Clean up the pthread_create trampoline."
* commit '
f246c589d66e5dc0e3cddc3c37261fb0e3fc67e9':
Clean up the pthread_create trampoline.
Elliott Hughes [Fri, 15 Nov 2013 23:27:36 +0000 (23:27 +0000)]
Merge "Clean up the pthread_create trampoline."
Elliott Hughes [Fri, 15 Nov 2013 22:57:45 +0000 (14:57 -0800)]
Clean up the pthread_create trampoline.
Bug:
8206355
Bug:
11693195
Change-Id: I35cc024d5b6ebd19d1d2e45610db185addaf45df
Christopher Ferris [Fri, 15 Nov 2013 22:51:02 +0000 (14:51 -0800)]
am
e39e3a77: Merge "Add new tests for memory/string routines."
* commit '
e39e3a77d6e8cf681718a572bc754fd64dfc87ff':
Add new tests for memory/string routines.
Elliott Hughes [Fri, 15 Nov 2013 22:47:32 +0000 (14:47 -0800)]
am
645d4269: Merge "Switch pthread_create over to __bionic_clone."
* commit '
645d4269d323acdcb20d1c31c15dbb4afbb9f46a':
Switch pthread_create over to __bionic_clone.
Christopher Ferris [Fri, 15 Nov 2013 22:47:07 +0000 (22:47 +0000)]
Merge "Add new tests for memory/string routines."
Elliott Hughes [Fri, 15 Nov 2013 22:42:56 +0000 (22:42 +0000)]
Merge "Switch pthread_create over to __bionic_clone."
Elliott Hughes [Fri, 15 Nov 2013 19:51:07 +0000 (11:51 -0800)]
Switch pthread_create over to __bionic_clone.
Bug:
8206355
Bug:
11693195
Change-Id: I04aadbc36c87e1b7e33324b9a930a1e441fbfed6
Christopher Ferris [Thu, 7 Nov 2013 01:32:11 +0000 (17:32 -0800)]
Add new tests for memory/string routines.
Create a few generic testing functions to allow any memory/string tests
to be created.
Add alignment tests for memcpy/memset/strcat/strcpy/strlen.
Add an overread test for memcpy/strcat/strcpy/strlen. This test attempts
to verify that the functions do not read past the end of their buffers
(src buffer in the case of src/dst functions).
Bug:
9797008
Change-Id: Ib3223ca1b99e729ae8229adc2d03f4dc3103d97c
Elliott Hughes [Fri, 15 Nov 2013 01:05:10 +0000 (17:05 -0800)]
am
05ec00bf: Merge "[MIPS] Reimplement syscall to invoke the system call directly"
* commit '
05ec00bf62ac168c9787a3d0640879ab3e502fe5':
[MIPS] Reimplement syscall to invoke the system call directly
Elliott Hughes [Fri, 15 Nov 2013 01:01:06 +0000 (01:01 +0000)]
Merge "[MIPS] Reimplement syscall to invoke the system call directly"
Chris Dearman [Wed, 13 Nov 2013 22:15:31 +0000 (14:15 -0800)]
[MIPS] Reimplement syscall to invoke the system call directly
Some MIPS kernels do not correctly restart interrupted system calls that
have been invoked using the indirect syscall (NR_syscall).
The simplest workaround is to handle the indirection in userland and then
call the required system call directly.
Change-Id: I8385399621529db9a52b463c96925f6decaaca30
Elliott Hughes [Thu, 14 Nov 2013 00:24:33 +0000 (16:24 -0800)]
am
ae5c3dd7: Merge "Remove the mips regdef.h and fpregdef.h old kernel headers."
* commit '
ae5c3dd73844e6a9e1a14dbf893eab5142902f18':
Remove the mips regdef.h and fpregdef.h old kernel headers.
Elliott Hughes [Thu, 14 Nov 2013 00:18:58 +0000 (00:18 +0000)]
Merge "Remove the mips regdef.h and fpregdef.h old kernel headers."
Elliott Hughes [Thu, 14 Nov 2013 00:13:01 +0000 (16:13 -0800)]
Remove the mips regdef.h and fpregdef.h old kernel headers.
Bug:
11559337
Change-Id: I6352cac9c4ef425cb21e34d0299223711ec079af
Elliott Hughes [Wed, 13 Nov 2013 23:01:31 +0000 (15:01 -0800)]
am
c4250430: Merge "Add unit tests for pow\'s behavior with NaNs."
* commit '
c425043063eae2fa3e8622bf77ef1ab3a805f156':
Add unit tests for pow's behavior with NaNs.
Elliott Hughes [Wed, 13 Nov 2013 22:57:36 +0000 (22:57 +0000)]
Merge "Add unit tests for pow's behavior with NaNs."
Elliott Hughes [Wed, 13 Nov 2013 21:33:12 +0000 (13:33 -0800)]
am
44cbe94b: Merge "Add a unit test for syscall(2)."
* commit '
44cbe94bba2e7e4b1369c86b11d66d6b60f0e333':
Add a unit test for syscall(2).
Elliott Hughes [Wed, 13 Nov 2013 21:29:23 +0000 (13:29 -0800)]
Add unit tests for pow's behavior with NaNs.
Bug:
11669804
Change-Id: Idfa6527640c8d0c2cf3e5343bf7afe013e237545
Elliott Hughes [Wed, 13 Nov 2013 21:29:05 +0000 (21:29 +0000)]
Merge "Add a unit test for syscall(2)."
Elliott Hughes [Wed, 13 Nov 2013 21:14:31 +0000 (13:14 -0800)]
Add a unit test for syscall(2).
Change-Id: Ic7d9735d46711af93c3a1747de7b2eb8cebea094
Elliott Hughes [Tue, 12 Nov 2013 01:04:28 +0000 (17:04 -0800)]
am
22ba86ee: Merge "Add extra regression tests for an already-fixed dynamic linker bug."
* commit '
22ba86ee44867c2d16973fc2f8da3b0f5b58cc5e':
Add extra regression tests for an already-fixed dynamic linker bug.
Elliott Hughes [Tue, 12 Nov 2013 01:01:24 +0000 (01:01 +0000)]
Merge "Add extra regression tests for an already-fixed dynamic linker bug."
Elliott Hughes [Mon, 11 Nov 2013 23:48:06 +0000 (15:48 -0800)]
Add extra regression tests for an already-fixed dynamic linker bug.
Bug: https://code.google.com/p/android/issues/detail?id=61799
Change-Id: I84af68f8430a06e999297c2e57e06ecb45adf81e
Elliott Hughes [Fri, 8 Nov 2013 23:22:43 +0000 (15:22 -0800)]
am
6768c1ee: Merge "Add a temporary uapi/linux/compiler.h until upstream has one."
* commit '
6768c1ee510a8e93175b54e93cb583f009766eed':
Add a temporary uapi/linux/compiler.h until upstream has one.
Elliott Hughes [Fri, 8 Nov 2013 23:20:18 +0000 (23:20 +0000)]
Merge "Add a temporary uapi/linux/compiler.h until upstream has one."
Elliott Hughes [Fri, 8 Nov 2013 23:15:18 +0000 (15:15 -0800)]
am
ff5b0fc8: Merge "Remove the dependency on the non-uapi __kernel_nlink_t."
* commit '
ff5b0fc8f3406c98561e17bd2a6c5433e192f5be':
Remove the dependency on the non-uapi __kernel_nlink_t.
Elliott Hughes [Fri, 8 Nov 2013 23:13:54 +0000 (15:13 -0800)]
Add a temporary uapi/linux/compiler.h until upstream has one.
Bug:
11559337
Change-Id: I205974b1a26e4f85d0e11503afa80669195d211c
Elliott Hughes [Fri, 8 Nov 2013 23:12:35 +0000 (23:12 +0000)]
Merge "Remove the dependency on the non-uapi __kernel_nlink_t."
Elliott Hughes [Fri, 8 Nov 2013 22:38:12 +0000 (14:38 -0800)]
Remove the dependency on the non-uapi __kernel_nlink_t.
The kernel doesn't have an nlink_t; it just uses the equivalent of
uint32_t. We already had a usable __nlink_t in the C library, so
let's just define our nlink_t in terms of __nlink_t, which is what
__nlink_t was meant for anyway.
Note that our struct stat just follows the kernel, and doesn't refer
to nlink_t anyway.
Change-Id: I2a56e418e42404b1741b08c50554b03c11caebae
Elliott Hughes [Fri, 8 Nov 2013 22:20:59 +0000 (14:20 -0800)]
am
68723453: Merge "Generate the uapi headers for mips and x86/x86_64."
* commit '
68723453ac920004fcba2a820c2d56919a5b7081':
Generate the uapi headers for mips and x86/x86_64.
Elliott Hughes [Fri, 8 Nov 2013 22:18:46 +0000 (22:18 +0000)]
Merge "Generate the uapi headers for mips and x86/x86_64."
Elliott Hughes [Fri, 8 Nov 2013 19:45:48 +0000 (11:45 -0800)]
Generate the uapi headers for mips and x86/x86_64.
Bug:
11559337
Change-Id: I23b1a43e7bfa8fa6f9df7e59d2e731a0ec52dafc
Elliott Hughes [Thu, 7 Nov 2013 20:43:22 +0000 (12:43 -0800)]
am
486c8616: Merge "Prepare to switch to the uapi <linux/signal.h>."
* commit '
486c8616ac030b14d37d364a0ed541c4c6c90716':
Prepare to switch to the uapi <linux/signal.h>.
Elliott Hughes [Thu, 7 Nov 2013 20:41:19 +0000 (20:41 +0000)]
Merge "Prepare to switch to the uapi <linux/signal.h>."
Elliott Hughes [Thu, 7 Nov 2013 20:28:46 +0000 (12:28 -0800)]
Prepare to switch to the uapi <linux/signal.h>.
<time.h> didn't need to copy the cruft from <signal.h>, and
<signal.h> only needs the uid_t hack when it's not using
uapi headers.
pthread_exit.cpp should include what it uses.
Change-Id: I836c36abe0f0a781d41fc425b249d1c7686bb124
Elliott Hughes [Thu, 7 Nov 2013 18:46:37 +0000 (10:46 -0800)]
am
266eb4a4: Merge "Stop using the non-uapi <linux/err.h> header file."
* commit '
266eb4a44c4cdd9502980511ff2846fde5c66454':
Stop using the non-uapi <linux/err.h> header file.
Elliott Hughes [Thu, 7 Nov 2013 18:44:49 +0000 (18:44 +0000)]
Merge "Stop using the non-uapi <linux/err.h> header file."
Elliott Hughes [Thu, 7 Nov 2013 18:31:05 +0000 (10:31 -0800)]
Stop using the non-uapi <linux/err.h> header file.
We only need it for MAX_ERRNO, and it's time we had somewhere to put
the little assembler utility macros we've been putting off writing.
Change-Id: I9354d2e0dc47c689296a34b5b229fc9ba75f1a83
Elliott Hughes [Thu, 7 Nov 2013 01:35:36 +0000 (17:35 -0800)]
am
a034e1d3: Merge "Remove pathconf\'s dependencies on non-uapi header files."
* commit '
a034e1d3e06207f079e814101bb3bce1924264e0':
Remove pathconf's dependencies on non-uapi header files.
Elliott Hughes [Thu, 7 Nov 2013 01:32:27 +0000 (01:32 +0000)]
Merge "Remove pathconf's dependencies on non-uapi header files."
Elliott Hughes [Thu, 7 Nov 2013 01:21:09 +0000 (17:21 -0800)]
Remove pathconf's dependencies on non-uapi header files.
Change-Id: I597996e4b141b009916f7ad2866dd100e08aa4d3
Elliott Hughes [Thu, 7 Nov 2013 01:19:30 +0000 (17:19 -0800)]
am
f945732e: Merge "Fix a TODO; we\'ve had SOCK_CLOEXEC for a while now."
* commit '
f945732e21e3c1291943d21fa5fee0c43792bbec':
Fix a TODO; we've had SOCK_CLOEXEC for a while now.
Elliott Hughes [Thu, 7 Nov 2013 01:16:47 +0000 (01:16 +0000)]
Merge "Fix a TODO; we've had SOCK_CLOEXEC for a while now."
Elliott Hughes [Thu, 7 Nov 2013 01:05:46 +0000 (17:05 -0800)]
am
9e63e03d: Merge "Clean up the 32-bit kernel support, fix LP64 fcntl declaration."
* commit '
9e63e03d34fc0b4d87cff047a4bc55f8ebc5e12a':
Clean up the 32-bit kernel support, fix LP64 fcntl declaration.
Elliott Hughes [Thu, 7 Nov 2013 01:04:56 +0000 (17:04 -0800)]
Fix a TODO; we've had SOCK_CLOEXEC for a while now.
Change-Id: I4bc39b57f3c33441ead74127f576bf5a4e311566
Elliott Hughes [Thu, 7 Nov 2013 01:02:54 +0000 (01:02 +0000)]
Merge "Clean up the 32-bit kernel support, fix LP64 fcntl declaration."
Elliott Hughes [Thu, 7 Nov 2013 00:20:54 +0000 (16:20 -0800)]
Clean up the 32-bit kernel support, fix LP64 fcntl declaration.
In practice, thanks to all the registers the stubs don't actually change,
but it's confusing to have an incorrect declaration.
I suspect that fcntl remains broken for aarch64; it happens to work for
x86_64 because the first vararg argument gets placed in the right register
anyway, but I have no reason to believe that's true for aarch64.
This patch adds a unit test, though, so we'll be able to tell when we get
as far as running the unit tests.
Change-Id: I58dd0054fe99d7d51d04c22781d8965dff1afbf3
Ben Cheng [Wed, 6 Nov 2013 23:58:39 +0000 (15:58 -0800)]
am
af10f9e9: Merge "Add processed uapi kernel headers for ARM."
* commit '
af10f9e927ed22c8bccc80919e10df4d5f4aecdd':
Add processed uapi kernel headers for ARM.
Ben Cheng [Wed, 6 Nov 2013 23:55:25 +0000 (23:55 +0000)]
Merge "Add processed uapi kernel headers for ARM."
Ben Cheng [Wed, 6 Nov 2013 23:51:05 +0000 (15:51 -0800)]
Add processed uapi kernel headers for ARM.
Change-Id: Id34de841b7b4b5a1bf7d22eb793860f92f24a6e5
Elliott Hughes [Wed, 6 Nov 2013 22:26:58 +0000 (14:26 -0800)]
am
7115c802: Merge "Fix pread/pwrite for LP64."
* commit '
7115c80231aa88272294076c8775c09727ece85a':
Fix pread/pwrite for LP64.
Elliott Hughes [Wed, 6 Nov 2013 22:25:17 +0000 (22:25 +0000)]
Merge "Fix pread/pwrite for LP64."
Elliott Hughes [Wed, 6 Nov 2013 21:10:37 +0000 (13:10 -0800)]
Fix pread/pwrite for LP64.
Unlike on 32-bit systems where off_t is 32-bit, we don't want to
throw away the top 32 bits of an LP64 system's 64-bit off_t.
Change-Id: Ib2e0daeb4fc0b8ab3d1b983d0b371d8f81033b50
Elliott Hughes [Wed, 6 Nov 2013 20:34:22 +0000 (12:34 -0800)]
am
c4dbc16e: Merge "Make cpp.py less braindead."
* commit '
c4dbc16eb03bcc0a3ea04cd32ce7551ad94b2bfc':
Make cpp.py less braindead.
Elliott Hughes [Wed, 6 Nov 2013 20:31:09 +0000 (20:31 +0000)]
Merge "Make cpp.py less braindead."
Elliott Hughes [Tue, 5 Nov 2013 22:54:29 +0000 (14:54 -0800)]
Make cpp.py less braindead.
The old code ignored operator precedence (!), despite having two tables
of operator precedence. The code's still pretty awful, but I've cleaned
it up enough to fix this, the most important bug.
This patch lets us correctly clean the uapi unistd.h, stat.h, and swab.h files,
and also fixes the mess we were already making of various old kernel
header files. I've added a bunch more tests, fixed the existing tests that
the existing script was already failing (!), and changed the script so that
the tests are run every time the script is run.
We can probably remove some of the old kernel header files that we were
parsing incorrectly, but we can worry about that later.
Bug:
11253477
Change-Id: Ie66c65b3a7ae13b4e98ed8038a6a534f06eae0e5
Elliott Hughes [Tue, 5 Nov 2013 21:58:18 +0000 (13:58 -0800)]
am
f1258672: Merge "Fix <sys/select.h> for LP64, clean up <time.h>."
* commit '
f1258672d1eed41da30612a70690c19ff1966b73':
Fix <sys/select.h> for LP64, clean up <time.h>.
Elliott Hughes [Tue, 5 Nov 2013 21:54:38 +0000 (21:54 +0000)]
Merge "Fix <sys/select.h> for LP64, clean up <time.h>."
Elliott Hughes [Tue, 5 Nov 2013 21:28:36 +0000 (13:28 -0800)]
Fix <sys/select.h> for LP64, clean up <time.h>.
The 64-bit uapi headers don't define FD_CLR and friends, so this
patch updates libc/kernel/common/linux/time.h after the change
b934bbec145e9e084bf48149a3a94ae3dd132157 in external/kernel-headers,
then fixes <sys/select.h> to work in this new world, and removes
some now-unnecessary duplication from <time.h> (with other cruft
cleaned up while I'm here).
Change-Id: Ifd26f901b4d200c65065b3e6ef1b74055127e052
Elliott Hughes [Tue, 5 Nov 2013 20:04:34 +0000 (12:04 -0800)]
am
9b9f0d0c: Merge "Remove unnecessary #include."
* commit '
9b9f0d0cd05b5249e4b8119a8bd12ec17712b9da':
Remove unnecessary #include.
Elliott Hughes [Tue, 5 Nov 2013 20:00:29 +0000 (20:00 +0000)]
Merge "Remove unnecessary #include."
Elliott Hughes [Tue, 5 Nov 2013 19:59:06 +0000 (11:59 -0800)]
Remove unnecessary #include.
Change-Id: I99dade0b3803272ee29eba2ad36b0311f8a24c31
Elliott Hughes [Thu, 31 Oct 2013 23:05:50 +0000 (16:05 -0700)]
am
943cc1b5: Merge "Refresh libc/kernel/common/linux/uinput.h"
* commit '
943cc1b58892c627f65f44b7f0fcf365048b7364':
Refresh libc/kernel/common/linux/uinput.h
Elliott Hughes [Thu, 31 Oct 2013 23:03:15 +0000 (23:03 +0000)]
Merge "Refresh libc/kernel/common/linux/uinput.h"
Scott Anderson [Fri, 25 Oct 2013 22:04:49 +0000 (15:04 -0700)]
Refresh libc/kernel/common/linux/uinput.h
Change-Id: Icd830af5aee63276554ebf7bfe8192965209cc59
Signed-off-by: Scott Anderson <saa@google.com>
Elliott Hughes [Thu, 31 Oct 2013 22:10:25 +0000 (15:10 -0700)]
am
4d2ab4c7: Merge "Fix linker crashes during unknown symbol lookup"
* commit '
4d2ab4c758a8c76193452b139778e90531721930':
Fix linker crashes during unknown symbol lookup
Elliott Hughes [Thu, 31 Oct 2013 22:06:59 +0000 (22:06 +0000)]
Merge "Fix linker crashes during unknown symbol lookup"
Sergey Melnikov [Thu, 31 Oct 2013 14:02:12 +0000 (18:02 +0400)]
Fix linker crashes during unknown symbol lookup
Integration of kernel VDSO into internal bionic data structures using
common functions.
Fix for dl_iterate_phdr function: the function provides incorrect
address of object in case of nonzero virtual and base addresses.
Location in address space of a particular program header should be
calculated using the formula: addr = base_addr + virtual_addr.
Signed-off-by: Sergey Melnikov <sergey.melnikov@intel.com>
Change-Id: Ie2ab4257fd456242aab8afed0bd5bd6b29e81d6d
Elliott Hughes [Thu, 31 Oct 2013 21:25:03 +0000 (14:25 -0700)]
am
cc9b7456: Merge "Move the pthread debugging flags to the right place."
* commit '
cc9b7456b66b7c7c218a9d1f00d7aef1f5ecf409':
Move the pthread debugging flags to the right place.
Elliott Hughes [Thu, 31 Oct 2013 21:23:29 +0000 (21:23 +0000)]
Merge "Move the pthread debugging flags to the right place."
Elliott Hughes [Thu, 31 Oct 2013 21:09:39 +0000 (14:09 -0700)]
Move the pthread debugging flags to the right place.
Change-Id: Ie805bd837d1f72cdf1818e056c0baeb0857e4e84
Elliott Hughes [Thu, 31 Oct 2013 20:41:00 +0000 (13:41 -0700)]
am
0360e3ab: Merge "<pthread.h> fixes and pthread cleanup."
* commit '
0360e3ab2d21d4b4b3d5590765857bef595c0046':
<pthread.h> fixes and pthread cleanup.
Elliott Hughes [Thu, 31 Oct 2013 20:36:48 +0000 (20:36 +0000)]
Merge "<pthread.h> fixes and pthread cleanup."
Elliott Hughes [Wed, 30 Oct 2013 21:40:09 +0000 (14:40 -0700)]
<pthread.h> fixes and pthread cleanup.
<pthread.h> was missing nonnull attributes, noreturn on pthread_exit,
and had incorrect cv qualifiers for several standard functions.
I've also marked the non-standard stuff (where I count glibc rather
than POSIX as "standard") so we can revisit this cruft for LP64 and
try to ensure we're compatible with glibc.
I've also broken out the pthread_cond* functions into a new file.
I've made the remaining pthread files (plus ptrace) part of the bionic code
and fixed all the warnings.
I've added a few more smoke tests for chunks of untested pthread functionality.
We no longer need the libc_static_common_src_files hack for any of the
pthread implementation because we long since stripped out the rest of
the armv5 support, and this hack was just to ensure that __get_tls in libc.a
went via the kernel if necessary.
This patch also finishes the job of breaking up the pthread.c monolith, and
adds a handful of new tests.
Change-Id: Idc0ae7f5d8aa65989598acd4c01a874fe21582c7
Elliott Hughes [Wed, 30 Oct 2013 21:40:17 +0000 (14:40 -0700)]
am
d0d0b52d: Merge "Remove an obsolete ARM gdb hack."
* commit '
d0d0b52da375bfa85947a4257198791f615f18a8':
Remove an obsolete ARM gdb hack.
Elliott Hughes [Wed, 30 Oct 2013 21:37:56 +0000 (21:37 +0000)]
Merge "Remove an obsolete ARM gdb hack."
Elliott Hughes [Wed, 30 Oct 2013 21:32:42 +0000 (14:32 -0700)]
Remove an obsolete ARM gdb hack.
Experiment shows that the claim in the makefile was false: gdb works fine
setting breakpoints in these functions when compiled without special treatment.
Change-Id: Ibdf4dd5a14d171c954b8c2089daaf28e1c310be9
Elliott Hughes [Wed, 30 Oct 2013 02:15:37 +0000 (19:15 -0700)]
am
47a73363: Merge "Factor out some of the makefile cruft."
* commit '
47a73363fcdb88811eedbe484720fb08dc30a995':
Factor out some of the makefile cruft.
Elliott Hughes [Wed, 30 Oct 2013 02:13:34 +0000 (02:13 +0000)]
Merge "Factor out some of the makefile cruft."
Elliott Hughes [Tue, 29 Oct 2013 23:59:54 +0000 (16:59 -0700)]
Factor out some of the makefile cruft.
I really don't want to add yet another copy for aarch64.
Also sort arm, mips, and x86.
Also silence the "TARGET_ARCH_VARIANT" warning for non-ARM; Intel and MIPS
have both complained about it.
Change-Id: I32c592a90c0cf0cdae250d84035b3e4655543781
Elliott Hughes [Tue, 29 Oct 2013 23:31:23 +0000 (16:31 -0700)]
am
7a8e20c9: Merge "Explain the sigprocmask in pthread_exit."
* commit '
7a8e20c9c7c11b0ef11b718f18be5e2df22edc1a':
Explain the sigprocmask in pthread_exit.