Commit graph

20287 commits

Author SHA1 Message Date
Evgenii Stepanov
9886ea3e2d Merge "Fix CFI initialization crash on x86." 2017-02-03 01:47:15 +00:00
Elliott Hughes
33ae5a97f2 Merge "isnan and isinf aren't functions." 2017-02-03 00:32:01 +00:00
Evgenii Stepanov
68ecec1965 Fix CFI initialization crash on x86.
Third try.

Bug: 34752378
Test: bionic tests
Change-Id: I247c127489a8ee38404e104f28d916a704e35f36
2017-02-02 14:44:46 -08:00
Elliott Hughes
e76ee993ff isnan and isinf aren't functions.
isnan was a function in POSIX in 1997, but changed to a macro only in 2004
to align with the C standard. isinf wasn't in POSIX until 2004, where it
appeared as a macro only (but other C libraries already had it as a
function).

Now the C++ standard has added ::isnan and ::isinf functions with different
signatures from the historical ones, so we need to move our historical cruft
out of the way.

We'll keep the implementations for backwards compatibility.

Bug: http://b/34724220
Test: ran tests
Change-Id: Id665f0344af6fe6ed245106e60231f4ef2027f41
2017-02-02 14:02:49 -08:00
David James
a187a6f12e Merge "Revert "Remove the global thread list."" 2017-02-02 02:46:40 +00:00
Elliott Hughes
7484c21c4c Revert "Remove the global thread list."
This reverts commit b0e8c565a6.

Breaks swiftshader (http:/b/34883464).

Change-Id: I7b21193ba8a78f07d7ac65e41d0fe8516940a83b
2017-02-02 02:41:38 +00:00
Dan Albert
1fedfedda8 Merge "Exit failure if trying to load non-PIE." 2017-02-01 23:38:34 +00:00
Treehugger Robot
118b198af6 Merge "Check overflows in c-tor instead of doing it in d-tor" 2017-02-01 22:58:24 +00:00
Dimitry Ivanov
68e6c03081 Check overflows in c-tor instead of doing it in d-tor
Test: bionic-unit-tests --gtest_filter=dl*:Dl*
Change-Id: Id3b17a79732155b4e469c43c764afef1dfc59057
2017-02-01 12:55:11 -08:00
Treehugger Robot
3c838bbb4a Merge "Do not load second copy of a library into same namespace" 2017-02-01 19:23:56 +00:00
Dimitry Ivanov
3bd906146b Do not load second copy of a library into same namespace
This workaround was introduced in M in order to make sure
that linker loads libraries provided in apk in case a library
with the same name was loaded by the system.

This is no longer a problem starting with Android N because
app is using different namespace and therefore does not see
libraries loaded by the system.

Test: bionic-unit-tests --gtest_filter=dl*:Dl*
Change-Id: I9995258c0f361e8df35420682b84e85a0cb924b4
2017-02-01 09:43:09 -08:00
Elliott Hughes
9b9d4ebc8b Merge "Remove the global thread list." 2017-02-01 16:16:41 +00:00
Treehugger Robot
b88112dcfc Merge "bionic: move ADF uapi header out of bionic" 2017-02-01 04:38:15 +00:00
Evgenii Stepanov
9586fe2744 Merge "Revert "Fix CFI initialization crash on x86."" 2017-02-01 01:14:49 +00:00
Evgenii Stepanov
beb3eb1790 Revert "Fix CFI initialization crash on x86."
Breaks aosp-master/sdk.

This reverts commit 4ccd4317f9.
2017-01-31 17:10:03 -08:00
Evgenii Stepanov
dd76f744e7 Merge "Fix CFI initialization crash on x86." 2017-02-01 00:29:58 +00:00
Dan Albert
95e2e6f620 Exit failure if trying to load non-PIE.
Amazingly this was actually breaking the NDK's ability to build
libstdc++ for x86.

Test: mma
Bug: None
Change-Id: Iafa55c31fdeb35caca7d7d7a39a3e7afa0713557
2017-01-31 16:02:43 -08:00
Evgenii Stepanov
4ccd4317f9 Fix CFI initialization crash on x86.
Second try.

Bug: 34752378
Test: bionic tests
Change-Id: I0a7453154671918b2e6e72f0bb9074c29ceb0f34
2017-01-31 13:44:55 -08:00
Hans Boehm
3f5578708d Add "benchmark" to time atomic operations
The intent here is to confirm that the compiler behaves as expected,
and to guide optimization efforts, particularly where there is a
choice between primitives.

Test: Built and ran benchmark on Angler repeatedly. Manually confirmed
that the compiler behaves roughly as expected.

Change-Id: I059b245d1ba8296e9b28602559b53eafafe0a30f
2017-01-31 10:20:26 -08:00
Treehugger Robot
eb35144e58 Merge "s/NULL/nullptr/ in system properties code." 2017-01-31 18:19:48 +00:00
Elliott Hughes
8e7396c9d7 s/NULL/nullptr/ in system properties code.
gerrit still hasn't sent out the mail asking for this in an earlier code
review...

Bug: http://b/33926793
Test: builds and boots.
Change-Id: I080de633e50e47f9a052211d47da96b971b16424
2017-01-31 08:24:43 -08:00
Treehugger Robot
44bea80d31 Merge "clang-format system_properties.cpp." 2017-01-31 15:20:20 +00:00
Alex Cheung
9750d6b691 Merge "Revert "Fix CFI initialization crash on x86."" 2017-01-31 06:27:17 +00:00
Alex Cheung
6fcd7a7d28 Revert "Fix CFI initialization crash on x86."
This reverts commit be46d3871c.

Reverting due to broken build:

https://android-build.googleplex.com/builds/branch-dashboard/aosp-master?build_id=3687823

Change-Id: I30968398edd9a094fce878839ba0a002ed487a77
2017-01-31 04:19:50 +00:00
Elliott Hughes
9160ed9bb7 clang-format system_properties.cpp.
Asked for on a previous code review.

Bug: http://b/33926793
Test: builds and boots.
Change-Id: Idf34804896149db5edbddf4ed88396a5df7f708a
2017-01-30 17:54:57 -08:00
Evgenii Stepanov
a5066640cc Merge "Fix CFI initialization crash on x86." 2017-01-31 00:58:10 +00:00
Treehugger Robot
5dc75c6c4d Merge "glibc ipc64_perm __key compatibility." 2017-01-30 23:01:01 +00:00
Evgenii Stepanov
be46d3871c Fix CFI initialization crash on x86.
Bug: 34752378
Test: bionic tests
Change-Id: If8e33f76a1a2d83356d818fed506ea624f579860
2017-01-30 14:29:48 -08:00
Sandeep Patil
93e272d00a Merge "property_contexts: split into platform and non-platform components" 2017-01-30 19:16:17 +00:00
Treehugger Robot
0c6f806b1d Merge "Remove backwards compatibility for old system properties." 2017-01-28 16:44:11 +00:00
Elliott Hughes
a29821bb45 glibc ipc64_perm __key compatibility.
glibc gives the `struct ipc64_perm` fields `key` and `seq` double-underscore
names. strace refers to the fields by those names, and there's no obvious
reason not to go along with this.

Bug: N/A
Test: built strace 4.15 with a hacked NDK
Change-Id: I8b2b0f75363349d99edaecda50fe897ee0fa0c65
2017-01-27 19:12:32 -08:00
Elliott Hughes
f8562c5f8f Remove backwards compatibility for old system properties.
No-one is directly upgrading from pre-K to O...

Also move more implementation details out of the header file.

Bug: http://b/33926793
Test: boots
Change-Id: I7a0936acbb1cea8a3b2cd6797ec53ba7e4a050f3
2017-01-27 16:19:59 -08:00
Sandeep Patil
34f0cfa3a8 property_contexts: split into platform and non-platform components
Bug: 33746484
Bug: 34370523
Test: Successfully boot with original service and property contexts.
Test: Successfully boot with split serivce and property contexts.
Test: Incremental build works on sailfish (reported in b/34370523)
Test: adb sideload works with aosp updater (reported in b/34370523)

Change-Id: Idf24856193032a8bc89ec384a72451e578a9d5ac
Signed-off-by: Sandeep Patil <sspatil@google.com>
2017-01-27 13:12:32 -08:00
Treehugger Robot
6a9e0c8f15 Merge "Update to kernel headers v4.9.6." 2017-01-27 21:11:51 +00:00
Greg Hackmann
7518109063 bionic: move ADF uapi header out of bionic
ADF isn't a candidate for upstreaming and isn't (directly) usable from
unprivileged NDK code, so it makes more sense to keep video/adf.h as a
private header inside libadf, where it'll still be usable by HWC
implementations without shipping in the NDK.

libadf exports its entire include/ directory, so this shouldn't have any
impact on HWC implementations that already link against libadf.

Test: mmm system/core/adf/libadf
Test: /data/nativetest64/adf-unit-tests/adf-unit-tests (on Nexus 9)
Change-Id: I6573f539cfd7fc65433237d0b115b8b7b2728133
Signed-off-by: Greg Hackmann <ghackmann@google.com>
2017-01-27 13:01:51 -08:00
Christopher Ferris
351a796d2d Update to kernel headers v4.9.6.
Test: Built arm/arm64/x86/x86_64 targets.
Change-Id: Id4d2711aaa96fe537f3726a0a89f2959e9cca34a
2017-01-27 10:49:48 -08:00
Christopher Ferris
00e388df4e Merge "Update to kernel headers v4.9.3." 2017-01-27 17:50:46 +00:00
Pavel Labath
15db5d0d29 Merge "Silence unused variable warning in sys_ptrace_test" 2017-01-27 13:59:17 +00:00
Pavel Labath
bb9713dd91 Silence unused variable warning in sys_ptrace_test
This fixes the mips build broken by
I7d8a7d79585477d78da1f033c85f8d2cc3b34340.

Change-Id: Ib960bdb51ac81be068f1fdf702aa7c10b183f2a0
Test: lunch mips && cd bionic && mma
2017-01-27 13:06:22 +00:00
Pavel Labath
3f62787cf9 Merge "Add hardware breakpoint ptrace test" 2017-01-27 12:39:52 +00:00
Pavel Labath
fb082ee00c Add hardware breakpoint ptrace test
This adds a ptrace test which tests the hardware breakpoint
functionality of the ptrace api.

I've also renamed the test case to sys_ptrace to better match the naming
scheme in the other files. I've ran the tests on angler (32 and 64 bit)
and fugu.

Test: run the test
Change-Id: I7d8a7d79585477d78da1f033c85f8d2cc3b34340
2017-01-27 12:39:32 +00:00
Treehugger Robot
2ca556bb6e Merge "Remove dependency on libc.a from the linker" 2017-01-27 03:03:50 +00:00
Dimitry Ivanov
55aae03a60 Merge "Remove bionic-unit-tests-gcc" 2017-01-27 01:28:03 +00:00
Dimitry Ivanov
451909da31 Remove dependency on libc.a from the linker
Provide stub for unused but needed symbol __find_icu_symbol
which is not included to libc_nomalloc.a.

Test: mm and boot
Change-Id: I57ca09c990556d1d401e2f4a75bc49b61b4cd85d
2017-01-26 17:08:01 -08:00
Dimitry Ivanov
3c81d5b361 Remove bionic-unit-tests-gcc
Test: mm
Bug: 34747525
Change-Id: Ib17ac3535b6f3358af7098df0602d19c6e318cb7
2017-01-26 15:47:55 -08:00
Max Spector
577a944200 Merge "Adding kuser_helper on note to all arm32 binaries." 2017-01-26 18:43:40 +00:00
Victor Khimenko
3c0363d7fd Merge "Fix bionic-unit-tests in arch with binary translator" 2017-01-26 10:11:14 +00:00
Treehugger Robot
0c45c7dc5e Merge "Don't mark __res_params or android_net_context as packed." 2017-01-26 07:13:21 +00:00
mspector
2e3d6a1d67 Adding kuser_helper on note to all arm32 binaries.
A kernel change is going in for 64bit arm to disable kuser_helper vector
pages for 32bit processes.  This change adds a special elf note to
all arm32 binaries built with bionic.  This note tells the kernel to
load the kuser_helper vector page for the process.

Bug: 33689037
Test: Manual - Phone boots, 32bit binaries have the notes, 64bit
binaries do not.
Change-Id: Ib8366e2a0810092b71381d57dee4bdaa56369a24
2017-01-25 17:33:05 -08:00
Christopher Ferris
6a9755d20a Update to kernel headers v4.9.3.
Test: Built arm, arm64, x86, x86_64 targets.
Test: Booted on angler, and ran bionic unit tests (32 bit and 64 bit).

Change-Id: I14a8dcbea11b41f83431eabed6590cd25af07b1d
2017-01-25 16:23:56 -08:00