OSDN Git Service
Treehugger Robot [Tue, 11 Apr 2017 23:48:56 +0000 (23:48 +0000)]
Merge "Don't let missing Treble property context files affect errno."
Christopher Ferris [Tue, 11 Apr 2017 23:14:55 +0000 (23:14 +0000)]
Merge "Fix missing parse_open_file method."
Elliott Hughes [Tue, 11 Apr 2017 20:38:36 +0000 (13:38 -0700)]
Don't let missing Treble property context files affect errno.
User code on a non-treble device was starting with errno == ENOENT rather
than 0 because of this treble support:
openat(AT_FDCWD, "/property_contexts", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
faccessat(AT_FDCWD, "/system/etc/selinux/plat_property_contexts", R_OK) = -1 ENOENT (No such file or directory)
This caused us to fail some toybox tests by reporting bogus errno values
where errno should have been left unset:
PASS: date -d @0
FAIL: date -d @0x123
echo -ne '' | TZ=UTC date -d @0x123 2>&1
--- expected
+++ actual
@@ -1 +1 @@
-date: bad date '@0x123'
+date: bad date '@0x123': No such file or directory
PASS: date -d
06021234
PASS: date -d
060212341982
FAIL: date -d 123
echo -ne '' | TZ=UTC date -d 123 2>&1
--- expected
+++ actual
@@ -1 +1 @@
-date: bad date '123'
+date: bad date '123': No such file or directory
PASS: date -d
1110143115.30
PASS: date -d
111014312015.30
PASS: date Unix time missing @
Bug: http://b/
37248982
Test: ran tests
Change-Id: Iacf08c89dbe207ec53a7837e6ac7f78f5541ef35
Alessio Balsini [Tue, 11 Apr 2017 16:27:29 +0000 (18:27 +0200)]
Fix missing parse_open_file method.
gensyscalls.py was failing to execute because of a missing "self"
keyword when calling parse_open_file.
Test: manual test running gensyscalls.py.
Change-Id: I78db2cba704c5ca56a730019e36601a7ccd069f8
Treehugger Robot [Tue, 11 Apr 2017 16:19:14 +0000 (16:19 +0000)]
Merge "Remove .(ll)ndk suffix from (ll)ndk_library"
Dan Willemsen [Fri, 7 Apr 2017 21:09:18 +0000 (14:09 -0700)]
Remove .(ll)ndk suffix from (ll)ndk_library
Soong handles these automatically now.
Bug:
33241851
Test: Android-aosp_arm.mk is the same before/after
Test: build.ninja is the same before/after
Test: build-aosp_arm.ninja is the same before/after
Merged-In: Ibfe4cf5db732d9007b1cc12dbc523c427de1b23d
Change-Id: Ibfe4cf5db732d9007b1cc12dbc523c427de1b23d
Treehugger Robot [Tue, 11 Apr 2017 06:07:06 +0000 (06:07 +0000)]
Merge "Send developers straight to the text relocation docs."
Elliott Hughes [Mon, 10 Apr 2017 16:52:33 +0000 (09:52 -0700)]
Send developers straight to the text relocation docs.
It's been years since we allowed text relocations, but I had a developer
ask me how to fix them at last week's O Developer Day. They'd never seen
our docs, so let's try to fix that for anyone else who's still confused...
Bug: N/A
Test: builds
Change-Id: I9202a7b0a3f024041b646c43c87585f4fab22d09
Christopher Ferris [Mon, 10 Apr 2017 19:49:37 +0000 (19:49 +0000)]
Merge "Refactor Config from a struct to a class."
Dan Willemsen [Fri, 7 Apr 2017 21:21:32 +0000 (21:21 +0000)]
Merge "Add LLNDK stub libraries for the VNDK"
Treehugger Robot [Thu, 6 Apr 2017 23:35:51 +0000 (23:35 +0000)]
Merge "versioner: fix LLVM assertion failure."
Tom Cherry [Thu, 6 Apr 2017 22:41:02 +0000 (22:41 +0000)]
Merge "Move scopeguard into android::base"
Christopher Ferris [Thu, 6 Apr 2017 02:13:03 +0000 (19:13 -0700)]
Refactor Config from a struct to a class.
This should make it easier to add new options, and to add options that
are complex. For example, I want to modify the behavior of
record_allocs_file so that it also enables record_allocs to a default
state.
Test: All unit tests pass.
Test: Enable the backtrace option and restart.
Change-Id: Idf5cdeed06ade3bc2c8ae39d228734bf65209b4f
Treehugger Robot [Thu, 6 Apr 2017 22:30:20 +0000 (22:30 +0000)]
Merge "Enable FORTIFY unit tests for clang"
Josh Gao [Thu, 6 Apr 2017 19:57:22 +0000 (12:57 -0700)]
versioner: fix LLVM assertion failure.
MemoryBuffer::getOpenFileSlice asserts that the map size passed in
isn't -1 (presumably because the offset can be nonzero). Switch to
getOpenFile, which results in an identical call to the implementation
function without the assert.
Bug: http://b/
37002637
Test: export FORCE_BUILD_LLVM_COMPONENTS=true
export FORCE_BUILD_LLVM_DEBUG=true
export FORCE_BUILD_LLVM_DISABLE_NDEBUG=true
mma -j && versioner
Change-Id: Ib610db9e07429aa3f64128eaef6ef555c4d1868e
Treehugger Robot [Thu, 6 Apr 2017 20:29:40 +0000 (20:29 +0000)]
Merge "Add support for disabling the greylist."
George Burgess IV [Thu, 6 Apr 2017 18:26:11 +0000 (11:26 -0700)]
Enable FORTIFY unit tests for clang
And add a thing to remind us to enable the malloc FORTIFY test when we
pull a new clang in.
Bug:
34747525
Test: vts -m BionicUnitTests on bullhead
Change-Id: If341a27756d608a0fa77ba6518e9bcc725f7632c
Elliott Hughes [Fri, 24 Mar 2017 00:42:49 +0000 (17:42 -0700)]
Add support for disabling the greylist.
Useful for testing whether apps have actually stopped using greylisted
libraries even if they still have references to them in their apk to support
old Android releases but also haven't bumped their targetSdkVersion yet.
Since we already have two expensive __system_property_get calls and this
would add a third, optimize two (but leave the third since it's not
obviously amenable to optimization). None of this matters for user builds,
but I don't want userdebug/eng to have distractingly different performance.
(cherrypick of
7933bec2872aa1c3430149c7649726333c0ac9d8.)
Bug: http://b/
36106661
Test: ran "can you escape 5" with and without this property
Change-Id: Id9a804695c1dca9b4be2ebd0e72f01817bb13cba
Hans Boehm [Thu, 6 Apr 2017 01:02:28 +0000 (01:02 +0000)]
Merge "Fix compare_exchange_weak tests to allow spurious failure"
Treehugger Robot [Wed, 5 Apr 2017 23:57:12 +0000 (23:57 +0000)]
Merge "libc: add const-correct string.h overloads"
Tom Cherry [Wed, 5 Apr 2017 23:20:29 +0000 (16:20 -0700)]
Move scopeguard into android::base
Test: boot bullhead, bionic unit tests
Change-Id: I223249684867655ecb53713b10da41d3014f96ae
Hans Boehm [Wed, 5 Apr 2017 00:34:59 +0000 (17:34 -0700)]
Fix compare_exchange_weak tests to allow spurious failure
Test: Ran bionic unit tests on angler.
Bug:
36869788
Change-Id: Ic1e0e4e409ac719d5b426391a771b4858a6149ee
Dan Willemsen [Mon, 20 Mar 2017 21:07:47 +0000 (14:07 -0700)]
Add LLNDK stub libraries for the VNDK
The stub libraries are the same as the (equivalent version) NDK, but
they also contain symbols tagged with 'vndk'. Except there are none of
those in Bionic currently.
For headers, the LLNDK/VNDK isn't using a sysroot like the NDK. Nor is
it hardcoding an explicit source path list like the platform. Instead it
runs the bionic/libc/include directory through versioner like the NDK,
then exports those generated headers and the kernel headers from the
stub library like any other exported header. Except it uses -isystem
instead of -I due to export_headers_as_system.
Test: aosp_arm; m -j
Test: Enable BOARD_VNDK_VERSION on aosp_arm; m -j
Test: Inspect out/soong/build.ninja before/after (w/o vndk)
Change-Id: Ief58a73907a83053b408b1d4b62999cba470d61c
Treehugger Robot [Wed, 5 Apr 2017 22:28:59 +0000 (22:28 +0000)]
Merge "libc: remove newlines in prototypes in string.h"
George Burgess IV [Wed, 5 Apr 2017 20:24:05 +0000 (13:24 -0700)]
libc: remove newlines in prototypes in string.h
This gives more useful diagnostics if clang needs to mention these
functions (or a parameter of them).
Bug:
36984245
Test: m on bullhead completes successfully.
Change-Id: I17c2b624d08bc9dd3f08185b30029ed0c49ebb08
George Burgess IV [Wed, 5 Apr 2017 00:34:02 +0000 (17:34 -0700)]
libc: add const-correct string.h overloads
libcxx provides const-correct overloads for a few string.h functions.
These overloads use clang's enable_if attribute, so they're preferred
over our FORTIFY'ed equivalents.
This weakens _FORTIFY_SOURCE=2 when used with some of these functions,
since clang needs to see __pass_object_size in order to pass an accurate
result for __builtin_object_size(s, 1) at a callsite. Since those
functions don't have __pass_object_size on their params, clang can't do
that. This makes LLVM lower the __builtin_object_size calls, which means
we get the same result as __builtin_object_size(s, 0).
We have to provide all of the overloads in Bionic, since enable_if is
only used to disambiguate overloads with (otherwise) the same type. In
other words:
// overload 1
char *strchr(const char *, int s) __attribute__((enable_if(1, "")));
// overload 2
char *strchr(char *, int s);
void foo() {
char cs[1] = {};
strchr(static_cast<const char *>(cs), '\0'); // calls overload #1.
strchr(cs, '\0'); // calls overload #2.
}
Bug:
34747525
Test: m checkbuild on bullhead internal master + AOSP. vts -m
BionicUnitTests passes on both. Surprisingly, the only code that this
seems to break is contained in Bionic.
Change-Id: Ie406f42fb3d1c5bf940dc857889876fc39b57c90
Neil Fuller [Wed, 5 Apr 2017 14:11:14 +0000 (14:11 +0000)]
Merge "Add (duplicate) license from new XML file"
Neil Fuller [Wed, 5 Apr 2017 13:57:00 +0000 (14:57 +0100)]
Add (duplicate) license from new XML file
This change was forgotten when I uploaded tzlookup.xml for
review. I meant to check this with enh@. Apologies. This fixes
the the NOTICE file so others can upload.
Test: repo upload
Change-Id: I9e722952f9ae8c8d971b1c2d23d53079d85f4ae7
Neil Fuller [Wed, 5 Apr 2017 13:33:32 +0000 (13:33 +0000)]
Merge "Addition of a new system file for time zone data"
Treehugger Robot [Wed, 5 Apr 2017 02:12:00 +0000 (02:12 +0000)]
Merge "Remove obsolete Android.mk comments"
Dan Willemsen [Tue, 4 Apr 2017 22:51:26 +0000 (15:51 -0700)]
Remove obsolete Android.mk comments
Test: none
Change-Id: I0419800d44a7918a4415baf840c7d30bf30a18ed
Christopher Ferris [Tue, 4 Apr 2017 21:10:55 +0000 (21:10 +0000)]
Merge "Add kryo support."
Treehugger Robot [Tue, 4 Apr 2017 20:01:36 +0000 (20:01 +0000)]
Merge "libc: use __bos instead of __bos0 for strchr."
George Burgess IV [Tue, 4 Apr 2017 01:03:36 +0000 (18:03 -0700)]
libc: use __bos instead of __bos0 for strchr.
I dunno why I used __bos0 in the first place; clang's strrchr (and
GCC's strchr+strrchr) both use __bos.
Bug:
34747525
Test: m. Device still boots. cts -m BionicUnitTests shows no new
failures.
Change-Id: Ifec0e05a6a1144fa3e3ac70562af3ec57c09c194
Josh Gao [Tue, 4 Apr 2017 00:49:24 +0000 (00:49 +0000)]
Merge "Break android_set_abort_message out of libc_logging."
am:
1c864b630f
Change-Id: I7d8ab343a09a0e2166d0462a3b378257cb837f67
Josh Gao [Tue, 4 Apr 2017 00:40:38 +0000 (00:40 +0000)]
Merge "Break android_set_abort_message out of libc_logging."
Josh Gao [Mon, 3 Apr 2017 23:26:49 +0000 (23:26 +0000)]
Merge changes I70edafb7,I96cba65e,I5142a335
am:
1400acc159
Change-Id: I8a336aac72ba8fa173ef2ea3364a55d7d84fc4f5
Treehugger Robot [Mon, 3 Apr 2017 23:17:58 +0000 (23:17 +0000)]
Merge changes I70edafb7,I96cba65e,I5142a335
* changes:
versioner: remove useless log message.
versioner: fix indentation in usage.
versioner: guard preprocessing messages with -v.
Josh Gao [Mon, 3 Apr 2017 22:13:29 +0000 (15:13 -0700)]
Break android_set_abort_message out of libc_logging.
libc_logging is getting statically linked into the crash handler
library, resulting in two copies of the abort message code existing in
processes, one in the linker, and one in the crash handler.
Move android_set_abort_message to its own file to solve this.
Bug: http://b/
36862204
Test: /data/nativetest/debuggerd_test/debuggerd_test32
Change-Id: Ie198c5a3bb07645aa43296915c9a6752693f14a9
Josh Gao [Mon, 3 Apr 2017 20:41:38 +0000 (20:41 +0000)]
Merge changes I826756d9,I00e2edb2
am:
6367f5ee55
Change-Id: I0585784475e8288fc06e5ca1089ff227f87001bd
Josh Gao [Mon, 3 Apr 2017 20:33:16 +0000 (20:33 +0000)]
Merge changes I826756d9,I00e2edb2
* changes:
libc_logging: mention that they're async signal safe.
linker: update dependencies.
Josh Gao [Mon, 3 Apr 2017 18:48:55 +0000 (11:48 -0700)]
versioner: remove useless log message.
Test: tools/versioner/run_tests.py
Change-Id: I70edafb7ad6a6274e7daa508903520dbb4b399c8
Josh Gao [Mon, 3 Apr 2017 18:24:48 +0000 (11:24 -0700)]
versioner: fix indentation in usage.
Test: versioner -h
Change-Id: I96cba65e53c564c8f47714c74d300e8f3dee7e82
Josh Gao [Mon, 3 Apr 2017 18:24:17 +0000 (11:24 -0700)]
versioner: guard preprocessing messages with -v.
Bug: http://b/
36751878
Test: tools/versioner/run_tests.py
Change-Id: I5142a33519b101548ccaec8a3bc498e446a648a7
Christopher Ferris [Wed, 29 Mar 2017 20:10:56 +0000 (13:10 -0700)]
Add kryo support.
Currently, using kryo is the same as using krait, but there are specialized
routines that are pending that will be used after this commit.
Bug:
36728278
Test: Built and booted a sailfish using kryo.
Change-Id: Id7510640673c31f7536367041212db6d96a564f0
Nick Kralevich [Mon, 3 Apr 2017 17:26:26 +0000 (17:26 +0000)]
Merge "Cleanup ANDROID_DNS_MODE and BIONIC_DNSCACHE"
am:
4df5ca1e02
Change-Id: I899ca838e59469348cd9bd25296ab9ac8e298291
Treehugger Robot [Mon, 3 Apr 2017 17:21:53 +0000 (17:21 +0000)]
Merge "Cleanup ANDROID_DNS_MODE and BIONIC_DNSCACHE"
Nick Kralevich [Sat, 1 Apr 2017 16:54:19 +0000 (09:54 -0700)]
Cleanup ANDROID_DNS_MODE and BIONIC_DNSCACHE
For security reasons, when a binary is executed which causes a security
transition (eg, a setuid binary, setgid binary, filesystem capabilities,
or SELinux domain transition), the AT_SECURE flag is set. This causes
certain blacklisted environment variables to be stripped before the
process is executed. The list of blacklisted environment variables is
stored in UNSAFE_VARIABLE_NAMES. Generally speaking, most environment
variables used internally by libc show up in this list.
Add ANDROID_DNS_MODE to the list of unsafe variables.
Similar to RESOLV_HOST_CONF and RES_OPTIONS (which are already
blacklisted), this variable controls how name resolution requests are
handled. Allowing ANDROID_DNS_MODE to be set across a security
boundary could induce resolution failures or otherwise impact
name resolution.
Remove BIONIC_DNSCACHE. This does not appear to be used, and setting
this variable across a security boundary could cause name resolution
problems.
Test: Android compiles and runs with no obvious problems.
Change-Id: I835a7b42d6afbc9c67866594c7951cfd9b355d81
Dimitry Ivanov [Sun, 2 Apr 2017 02:20:13 +0000 (02:20 +0000)]
Merge "Fix lookup logic for linked namespaces"
am:
6a2c7f5a68
Change-Id: I6af8cccc6ca6a18ced2f4843621563319fdc29f5
Treehugger Robot [Sun, 2 Apr 2017 02:14:45 +0000 (02:14 +0000)]
Merge "Fix lookup logic for linked namespaces"
Elliott Hughes [Sat, 1 Apr 2017 07:41:13 +0000 (07:41 +0000)]
Merge "Only use environment variables on the host."
am:
5d8b8310aa
Change-Id: I4439714a733487a76221e789805b50ce958829f4
Treehugger Robot [Sat, 1 Apr 2017 07:35:14 +0000 (07:35 +0000)]
Merge "Only use environment variables on the host."
Elliott Hughes [Fri, 31 Mar 2017 22:35:21 +0000 (15:35 -0700)]
Only use environment variables on the host.
It's faster and safer to skip them on the device, where we know where
everything is anyway.
(cherrypick of
cf6365690cc68bdd7e16648fb7881ba0b5cae93d.)
Bug: http://b/
36807787
Test: ran tests
Change-Id: I0bb7879cc46f194152c67ddaf072cbebb424f789
Paul Lawrence [Sat, 1 Apr 2017 00:15:45 +0000 (00:15 +0000)]
Merge "Expand whitelist"
am:
7cf467bd23
Change-Id: Id4baef4988302e5178d5e7bf850f3e9a028b3162
Treehugger Robot [Sat, 1 Apr 2017 00:07:11 +0000 (00:07 +0000)]
Merge "Expand whitelist"
Vishwath Mohan [Fri, 31 Mar 2017 16:41:24 +0000 (16:41 +0000)]
Merge "Refactor sanitized library on-disk layout - bionic."
am:
2a41bf4190
Change-Id: I4f62c79e7f5e93c42e3f168609557e9f48a83a5b
Treehugger Robot [Fri, 31 Mar 2017 16:35:51 +0000 (16:35 +0000)]
Merge "Refactor sanitized library on-disk layout - bionic."
Paul Lawrence [Thu, 30 Mar 2017 22:24:13 +0000 (15:24 -0700)]
Expand whitelist
Bug:
36726183
Test: Builds, call 90 added to policy
(cherry picked from commit
3ba8223b9ac3db1642931876d19127ca6a9a0914)
Change-Id: Ib8db1b764ce22aadf8050031d40040dd6c0e669e
Neil Fuller [Thu, 30 Mar 2017 17:12:49 +0000 (18:12 +0100)]
Addition of a new system file for time zone data
This file is to replace the time_zones_by_country.xml
file from frameworks/base/core/res/res/xml/
This new file is intended to be updated outside of
an OTA, unlike time_zones_by_country.xml.
The tzlookup.xml file is read by code in libcore, not
frameworks/base.
The format of the file is slightly different from
time_zones_by_country.xml but the information is the
same as the current version. It was generated using
a sed transform and manual coallescing of the
<country> elements / comments:
sed 's/<timezones>$/<timezones>\n <countryzones>/' frameworks/base/core/res/res/xml/time_zones_by_country.xml \
| sed 's/<\/timezones>/ <\/countryzones>\n<\/timezones>/' \
| sed 's/<timezone\( code=\"..\">\)/<country\1\n <id>/g' \
| sed 's/<\/timezone>/<\/id>\n <\/country>/g'
The time_zones_by_country.xml file will be deleted
in a follow up change when the new code is wired into
the code that uses this data.
Test: See associated libcore change that will ensure the file
is kept in sync with tzdata when applying IANA rules
changes.
Bug:
25338903
Change-Id: I8912307bf6a41750ac06ffce9143e8055ea4e7c5
Vishwath Mohan [Wed, 29 Mar 2017 22:31:34 +0000 (15:31 -0700)]
Refactor sanitized library on-disk layout - bionic.
This CL changes the linker to point to the newly refactored location
of ASAN-ified libraries on disk.
This supports changes made by the following CLs -
https://android-review.googlesource.com/#/c/359087/
https://android-review.googlesource.com/#/c/359389/
Which refactor the on-disk location as follows:
/data/lib* --> /data/asan/system/lib*
/data/vendor/* --> /data/asan/vendor/*
There are a couple of advantages to this, including better isolation
from other components, and more transparent linker renaming and
SELinux policies.
Bug:
36574794
Bug:
36674745
Test: m -j40 && SANITIZE_TARGET="address" m -j40 and the device
boots. All sanitized libraries are correctly located in /data/asan/*.
Change-Id: Iad8b298a66c38eb0f6327f6b51027f0728aa7a40
Dan Albert [Fri, 31 Mar 2017 02:32:27 +0000 (02:32 +0000)]
Merge "Revert "isnan and isinf aren't functions.""
am:
6d225bdf7c
Change-Id: I57dedc84133b553f84a3eea4cd654a3ebe45aba4
Treehugger Robot [Fri, 31 Mar 2017 02:27:13 +0000 (02:27 +0000)]
Merge "Revert "isnan and isinf aren't functions.""
Dan Albert [Thu, 30 Mar 2017 23:34:27 +0000 (16:34 -0700)]
Revert "isnan and isinf aren't functions."
While this change is correct, GNU libstdc++ 4.9 isn't able to handle a
standard compliant C library. Its <cmath> will `#undef isnan` from
math.h and only adds the function overloads to the std namespace,
making it impossible to use both <cmath> (which gets included by a
lot of other standard headers) and ::isnan.
We're going to have to revert this until we can start turning down
support for gnustl.
This reverts commit
e76ee993ff30a639d24c7db6a080c14d1b1a10f2.
Bug: https://code.google.com/p/android/issues/detail?id=271629
Test: make checkbuild
Change-Id: I394f50271430e78ab801d85c3ee4e87019eda6af
Josh Gao [Thu, 30 Mar 2017 01:40:54 +0000 (01:40 +0000)]
Merge "Add more ptrace process resumption tests."
am:
ccec0f4c11
Change-Id: Ia951508d38a146fb879e3a7aa34e3b1bc4d6169f
Josh Gao [Thu, 30 Mar 2017 01:33:57 +0000 (01:33 +0000)]
Merge "Add more ptrace process resumption tests."
Elliott Hughes [Wed, 29 Mar 2017 23:14:56 +0000 (23:14 +0000)]
Merge "Fix x86 system calls made from ELF preinit."
am:
12a07044db
Change-Id: I6377f5bcc5edfc725c923b596490aa74e55ea224
Elliott Hughes [Wed, 29 Mar 2017 23:08:17 +0000 (23:08 +0000)]
Merge "Fix x86 system calls made from ELF preinit."
Dimitry Ivanov [Mon, 27 Mar 2017 21:11:02 +0000 (14:11 -0700)]
Fix lookup logic for linked namespaces
When looking for already loaded libraries include
linked namespaces to the search, but check if
the library is accessible from the main namespace.
Bug: http://b/
36008422
Bug: http://b/
35417197
Bug: http://b/
34052337
Bug: http://b/
36660652
Bug: https://issuetracker.google.com/
36636090
Test: run bionic-unit-tests --gtest_filter=dl*:Dl*
Change-Id: Ic7c1d48114da3ca5dc6512ef03f595dd17b6ed17
Josh Gao [Wed, 29 Mar 2017 22:01:15 +0000 (15:01 -0700)]
Add more ptrace process resumption tests.
Add tests to verify that ptrace unlink happens immediately for unreaped
processes.
Test: /data/nativetest/bionic-unit-tests/bionic-unit-tests --gtest_filter="Ptrace*"
Test: /data/nativetest64/bionic-unit-tests/bionic-unit-tests --gtest_filter="Ptrace*"
Change-Id: I9803ee5be2a0686c21556598ecf17348df09f601
Elliott Hughes [Wed, 29 Mar 2017 20:48:02 +0000 (13:48 -0700)]
Fix x86 system calls made from ELF preinit.
Used by CFI, so broke cfi_test#early_init@x86, but I've added a specific
test for this (and a similar test for getauxval from preinit, which this
patch does not fix).
Bug: http://b/
35885875
Test: ran tests
Change-Id: I43885bedfb88c0a26b4474bd3c27a87dec7bbc97
Dan Albert [Wed, 29 Mar 2017 18:05:14 +0000 (18:05 +0000)]
Merge changes from topic 'no-bionic-prebuilts'
am:
aa0b5054c5
Change-Id: I3a9d7e295163da53babfe5d539d04166eed3224a
Treehugger Robot [Wed, 29 Mar 2017 17:59:25 +0000 (17:59 +0000)]
Merge changes from topic 'no-bionic-prebuilts'
* changes:
Build the versioner even on unbundled branches.
Revert "Revert "Run the versioner as part of the build.""
Dimitry Ivanov [Tue, 28 Mar 2017 20:48:35 +0000 (20:48 +0000)]
Merge "linker: log only real dlerrors"
am:
df3b922fcf
Change-Id: I4608d63d8be71adaad664fbe685d0ec51ec19a27
Dimitry Ivanov [Tue, 28 Mar 2017 20:40:45 +0000 (20:40 +0000)]
Merge "linker: log only real dlerrors"
Dimitry Ivanov [Tue, 28 Mar 2017 18:08:58 +0000 (11:08 -0700)]
linker: log only real dlerrors
Currently linker reports all potential dlerrors
for example if library was not found in 'this'
namespace - it initializes linker error buffer
with not found message but when consequent
search in linked namespace succeeds this message
is droped because dlopen was successful.
This commit avoids logging false positive error
messages when debug.ld.* set to dlerror.
Test: manual
Change-Id: I480694a1b1bbacd6bd1d8505cd2ee491710964cc
Paul Lawrence [Tue, 28 Mar 2017 01:58:29 +0000 (01:58 +0000)]
Merge "Expose seccomp table"
am:
4b43140142
Change-Id: If4a0e4194e2b15bd2ce3bdc81c078074e462b1f9
Treehugger Robot [Tue, 28 Mar 2017 01:54:12 +0000 (01:54 +0000)]
Merge "Expose seccomp table"
Christopher Ferris [Tue, 28 Mar 2017 01:34:28 +0000 (01:34 +0000)]
Merge "bionic: arm64: generic: strcmp: align to 64B cache line"
am:
f785a6cbff
Change-Id: I3b5b76a6c9a0881c9f82012161254dbd480d062b
Christopher Ferris [Tue, 28 Mar 2017 01:27:17 +0000 (01:27 +0000)]
Merge "bionic: arm64: generic: strcmp: align to 64B cache line"
Dimitry Ivanov [Tue, 28 Mar 2017 01:09:57 +0000 (01:09 +0000)]
Merge "Make anonymous namespace isoalted."
am:
6b0f17e588
Change-Id: Ibecb1efa6b81242ffc1ffc6d5f60a13785fc8578
Dimitry Ivanov [Tue, 28 Mar 2017 00:59:08 +0000 (00:59 +0000)]
Merge "Make anonymous namespace isoalted."
Paul Lawrence [Mon, 27 Mar 2017 22:38:37 +0000 (15:38 -0700)]
Expose seccomp table
Test: Run with internal cl
https://googleplex-android-review.git.corp.google.com/#/c/
2028102/
and make sure passes
Bug:
20890063
Change-Id: Id78e5ea843554a5d3750b8f9b350f28ad4dca99b
Dimitry Ivanov [Mon, 27 Mar 2017 22:42:17 +0000 (15:42 -0700)]
Make anonymous namespace isoalted.
This addresses outstanding todo for anonymous namespace
and fixes an app compatibility bug.
Bug: http://b/
36008422
Test: start app from http://b/
36008422 and make sure it runs
Change-Id: Ie148418b944379ee1000e7274f2f6c1eca511d6c
Dan Albert [Mon, 27 Mar 2017 20:28:27 +0000 (13:28 -0700)]
Build the versioner even on unbundled branches.
This is needed to generate the NDK, so unbundled projects using the
NDK need to build this. If they don't need the NDK, they should just
remove bionic from their manifest.
Test: make checkbuild
Bug: None
Change-Id: I7db816c4a341cf34d4d11739dc64182af630ad63
Dan Albert [Wed, 22 Mar 2017 22:28:05 +0000 (15:28 -0700)]
Revert "Revert "Run the versioner as part of the build.""
This reverts commit
69c7562f5983ed5bc1d330b1f44b5cf506efb60e.
Test: make checkbuild
Change-Id: Ie443029398c01b45e0a0317a8074808b064f35d4
Dimitry Ivanov [Sat, 25 Mar 2017 07:49:41 +0000 (07:49 +0000)]
Merge "Revert "linker: add more directories to default lib paths""
am:
840ae69408
Change-Id: I49d120109ead5daa672bf7dff916029828c6b94e
Dimitry Ivanov [Sat, 25 Mar 2017 07:46:18 +0000 (07:46 +0000)]
Merge "Revert "linker: add more directories to default lib paths""
Dimitry Ivanov [Sat, 25 Mar 2017 05:21:08 +0000 (05:21 +0000)]
Merge "Load namespace configuration from ld.config.txt"
am:
deca8effd0
Change-Id: Iaf23427acf6a1e5a6336dc43838d1678b364a277
Treehugger Robot [Sat, 25 Mar 2017 05:17:31 +0000 (05:17 +0000)]
Merge "Load namespace configuration from ld.config.txt"
Dimitry Ivanov [Fri, 24 Mar 2017 23:06:39 +0000 (23:06 +0000)]
Merge "Disable compat_elf_hash_and_relocation_tables test for x86"
am:
fe96db819b
Change-Id: I6ff32babeeb514cd00704e797a713ac4149dc868
Dimitry Ivanov [Fri, 24 Mar 2017 23:02:54 +0000 (23:02 +0000)]
Merge "Disable compat_elf_hash_and_relocation_tables test for x86"
Dimitry Ivanov [Tue, 7 Mar 2017 19:19:05 +0000 (11:19 -0800)]
Load namespace configuration from ld.config.txt
This change allows customization of default namespace
configuration for different executables. It also enables
target_sdk_version setup for binaries (note that this
option should explicitly be enabled in ld.config.txt).
Bug: http://b/
30706810
Bug: http://b/
30435785
Test: run linker-unit-tests/bionic-unit-tests, boot angler
Change-Id: Ibbe87209acf1538fc9cec04944f3d22a190c38f1
Dimitry Ivanov [Fri, 24 Mar 2017 17:58:23 +0000 (10:58 -0700)]
Disable compat_elf_hash_and_relocation_tables test for x86
Bug: http://b/
36571076
Test: run bionic-unit-tests on fugu
Change-Id: I2f901bc99e55f15b06fe6a5b0d7a125d1b8241a8
Dimitry Ivanov [Fri, 24 Mar 2017 02:06:22 +0000 (02:06 +0000)]
Merge "loader: stop relying on AT_BASE"
am:
ad8dcd6023
Change-Id: Ie7a4ffd40a91d2b87468dc3374414cb4e6bed993
Treehugger Robot [Fri, 24 Mar 2017 02:03:57 +0000 (02:03 +0000)]
Merge "loader: stop relying on AT_BASE"
Dimitry Ivanov [Thu, 23 Mar 2017 23:17:15 +0000 (16:17 -0700)]
loader: stop relying on AT_BASE
android loader should not rely on the fact
that AT_BASE is set because kernel currently
does not set it when linker is run standalone
(The linker does not have PT_INTERP set)
This commit replaces AT_BASE with calculated value.
Bug: http://b/
30739481
Bug: http://b/
35890756
Test: run bionic-unit-tests --gtest_filter=dl*
Change-Id: Ic2eb73e4452624b1f2e05f46e99e4c17df0bbc3f
Paul Lawrence [Thu, 23 Mar 2017 20:46:25 +0000 (20:46 +0000)]
Merge "Expand whitelist"
am:
58df5b2b86
Change-Id: I58f915835c2b0617c2bc846f2d021ce0747013c1
Treehugger Robot [Thu, 23 Mar 2017 20:41:34 +0000 (20:41 +0000)]
Merge "Expand whitelist"
Paul Lawrence [Thu, 23 Mar 2017 19:20:00 +0000 (12:20 -0700)]
Expand whitelist
Bug:
36449658
Test: Builds
Change-Id: I610da03e7a3cede218d1657f53797ab72cbdf317
Christopher Ferris [Thu, 23 Mar 2017 19:15:50 +0000 (19:15 +0000)]
Merge "Verify at least 2 frames out of signal handler."
am:
8f804d71d0
Change-Id: I101d82f95345ebda7d385142301e5fa3e35daeed