OSDN Git Service

android-x86/bionic.git
7 years agoMerge "Clean up __isthreaded."
Treehugger Robot [Fri, 12 May 2017 01:35:49 +0000 (01:35 +0000)]
Merge "Clean up __isthreaded."

7 years agoMerge "Run bionic/libc/tools/genversion-scripts.py"
Treehugger Robot [Thu, 11 May 2017 23:52:13 +0000 (23:52 +0000)]
Merge "Run bionic/libc/tools/genversion-scripts.py"

7 years agoClean up __isthreaded.
Elliott Hughes [Thu, 11 May 2017 22:29:03 +0000 (15:29 -0700)]
Clean up __isthreaded.

__isthreaded is annoying for ARC++ and useless for everyone. Just hard-code
the value in ndk_cruft for LP32 and be done with it.

Bug: N/A
Test: builds
Change-Id: I08f11a404bbec55ed57cb1e18b5116163c7d7d13

7 years agoRun bionic/libc/tools/genversion-scripts.py
Elliott Hughes [Thu, 11 May 2017 22:14:41 +0000 (15:14 -0700)]
Run bionic/libc/tools/genversion-scripts.py

When 2e8e5e60b6ecbcfe2110242e41b9ec5340b11cf5 was cherrypicked, we
didn't regenerate the generated files.

Bug: N/A
Test: builds
Change-Id: I87730e834520aea742738708237d11a798bf3220

7 years agoMerge "Fix clang-tidy perfomrance warnings."
Treehugger Robot [Thu, 11 May 2017 02:46:42 +0000 (02:46 +0000)]
Merge "Fix clang-tidy perfomrance warnings."

7 years agoFix clang-tidy perfomrance warnings.
wy [Wed, 10 May 2017 22:21:13 +0000 (15:21 -0700)]
Fix clang-tidy perfomrance warnings.

Change-Id: Ibf3d32a5ba1cb70158d857be3d20aa3d1a870341
Test: build with WITH_TIDY=1

7 years agoMerge "greylist is no longer enabled by default."
Treehugger Robot [Wed, 10 May 2017 02:33:28 +0000 (02:33 +0000)]
Merge "greylist is no longer enabled by default."

7 years agoMerge "Remove known failures from arm ifunc tests"
Treehugger Robot [Wed, 10 May 2017 02:27:56 +0000 (02:27 +0000)]
Merge "Remove known failures from arm ifunc tests"

7 years agoMerge "Cope with AT_SYSINFO not being set on x86."
Treehugger Robot [Wed, 10 May 2017 01:28:53 +0000 (01:28 +0000)]
Merge "Cope with AT_SYSINFO not being set on x86."

7 years agogreylist is no longer enabled by default.
Jiyong Park [Fri, 5 May 2017 13:07:05 +0000 (22:07 +0900)]
greylist is no longer enabled by default.

greylist is needed only for application namepaces. Since we started using
linker-namesapces for vendors and other platform apps linker should not
enable greylist workaround by default.

Bug: http://b/37731053
Bug: https://issuetracker.google.com/38146125
Test: sailfish builds and boots
Test: bionic-unit-tests and linker-unit-tests pass
Change-Id: Iee83db6fb1ae754f5ade18491321d9bca3b5ead4
(cherry picked from commit e8ffe56a9c2bacc6bd880238250ad61e2bbb257b)

7 years agoMerge "Zero-initialize user_desc for __set_thread_area."
Elliott Hughes [Tue, 9 May 2017 23:59:07 +0000 (23:59 +0000)]
Merge "Zero-initialize user_desc for __set_thread_area."

7 years agoZero-initialize user_desc for __set_thread_area.
Elliott Hughes [Tue, 9 May 2017 21:39:24 +0000 (14:39 -0700)]
Zero-initialize user_desc for __set_thread_area.

The kernel does seem to read some of the "unused" fields if only to do
basic validity checks.

valgrind complained about this, and I'm not convinced it's spurious.

Bug: http://b/38034461
Test: ran tests
Change-Id: I077fcc75bf0738491242166fc4576a9693ce18a5

7 years agoCope with AT_SYSINFO not being set on x86.
Elliott Hughes [Tue, 9 May 2017 21:26:30 +0000 (14:26 -0700)]
Cope with AT_SYSINFO not being set on x86.

Bug: http://b/38034461
Test: ran dexdump under valgrind on x86
Change-Id: I6a54c7ed4fe4e68731e099d9569ab788379820f8

7 years agoMerge "Add new memchr/strrchr tests."
Christopher Ferris [Tue, 9 May 2017 16:40:29 +0000 (16:40 +0000)]
Merge "Add new memchr/strrchr tests."

7 years agoAdd new memchr/strrchr tests.
Christopher Ferris [Mon, 8 May 2017 21:24:29 +0000 (14:24 -0700)]
Add new memchr/strrchr tests.

There are new optimizations for these functions, so adding some extra
testing for these routines.

Also, clean up the strchr test slightly with some extra comments.

Test: Ran new tests on glibc version, and on angler.
Change-Id: I41bf4e5e2c84295cc1ce9d2226ed57c2d228d7b8

7 years agoMerge "Make raise/abort work with stale cached pid/tid values."
Treehugger Robot [Sat, 6 May 2017 00:56:20 +0000 (00:56 +0000)]
Merge "Make raise/abort work with stale cached pid/tid values."

7 years agoMake raise/abort work with stale cached pid/tid values.
Josh Gao [Fri, 5 May 2017 20:27:15 +0000 (13:27 -0700)]
Make raise/abort work with stale cached pid/tid values.

Switch raise to using tgkill with direct syscalls of getpid/gettid,
and switch abort to use raise(SIGABRT).

Bug: http://b/37769298
Test: debuggerd_test
Change-Id: If6f9d17fd8ae6177e742dc9f2f44bd78539431ba

7 years agoMerge changes from topic 'mips_seccomp_fixes'
Treehugger Robot [Fri, 5 May 2017 18:31:31 +0000 (18:31 +0000)]
Merge changes from topic 'mips_seccomp_fixes'

* changes:
  [MIPS64] Enable necessary mips64 syscalls in seccomp whitelist
  Fix MIPS seccomp definitions for PRIMARY and SECONDARY arch

7 years ago[MIPS64] Enable necessary mips64 syscalls in seccomp whitelist
Lazar Trsic [Fri, 5 May 2017 12:44:11 +0000 (14:44 +0200)]
[MIPS64] Enable necessary mips64 syscalls in seccomp whitelist

Allow execution of: newfstatat, fstat and cacheflush syscalls
for mips64 arch.

Test: Boot mips64 emulator to homescreen with 3.18 kernel.
emulator -kernel prebuilts/qemu-kernel/mips64/3.18/kernel-qemu2

Change-Id: Ib5d6b0060f3e17b64d86fc944aa83a5240d512f8

7 years agoFix MIPS seccomp definitions for PRIMARY and SECONDARY arch
Lazar Trsic [Fri, 5 May 2017 12:29:34 +0000 (14:29 +0200)]
Fix MIPS seccomp definitions for PRIMARY and SECONDARY arch

Set correct values for PRIMARY and SECONDARY arch definitions
to match LE MIPS architectures.
This change is resolving boot problem for mips32 arch with 3.18 kernel.
This also fixes mips64 issue related to PRIMARY_ARCH definition,
but in order to boot to home screen it needs additional syscalls whitelisted
which will be introduced in separate patch.

Tested on emulator:
emulator -kernel prebuilts/qemu-kernel/mips/3.18/kernel-qemu2

Change-Id: I68dfd136c22141933a8a8c5336db01a02f00b0df

7 years agoMerge "libc: clean up ARM64 copyright notices"
Treehugger Robot [Fri, 5 May 2017 07:15:08 +0000 (07:15 +0000)]
Merge "libc: clean up ARM64 copyright notices"

7 years agolibc: clean up ARM64 copyright notices
Jake Weinstein [Thu, 4 May 2017 16:08:39 +0000 (12:08 -0400)]
libc: clean up ARM64 copyright notices

Test: None needed

Change-Id: I3626a92329e954f67bada6ed73f3033225bbfef5

7 years agoMerge changes Ia7200bf0,I86999bb7
Treehugger Robot [Thu, 4 May 2017 04:08:22 +0000 (04:08 +0000)]
Merge changes Ia7200bf0,I86999bb7

* changes:
  versioner: fix leak.
  versioner: add symlink for dependencies.

7 years agoRemove known failures from arm ifunc tests
Dimitry Ivanov [Wed, 3 May 2017 18:01:00 +0000 (11:01 -0700)]
Remove known failures from arm ifunc tests

Since clang does not produce IRELATIVE relocations
this test started passing when we switched away from gcc
This is still a problem because it now leads to
situation where static ifuncs become globally visible
but this is a different problem.

Test: bionic-unit-tests --gtest_filer=dl*
Change-Id: Id27ba5093b88519c00acbc43ab8a991a671a9f51

7 years agoMerge "Move libc_log code into libasync_safe."
Christopher Ferris [Wed, 3 May 2017 17:43:33 +0000 (17:43 +0000)]
Merge "Move libc_log code into libasync_safe."

7 years agoMerge "Add ifunc for variable test-case"
Dimitry Ivanov [Wed, 3 May 2017 16:11:25 +0000 (16:11 +0000)]
Merge "Add ifunc for variable test-case"

7 years agoMove libc_log code into libasync_safe.
Christopher Ferris [Tue, 25 Apr 2017 00:48:32 +0000 (17:48 -0700)]
Move libc_log code into libasync_safe.

This library is used by a number of different libraries in the system.
Make it easy for platform libraries to use this library and create
an actual exported include file.

Change the names of the functions to reflect the new name of the library.

Run clang_format on the async_safe_log.cpp file since the formatting is
all over the place.

Bug: 31919199

Test: Compiled for angler/bullhead, and booted.
Test: Ran bionic unit tests.
Test: Ran the malloc debug tests.
Change-Id: I8071bf690c17b0ea3bc8dc5749cdd5b6ad58478a

7 years agoMerge "Shared namespaces inherit parent ns properties"
Treehugger Robot [Wed, 3 May 2017 01:28:34 +0000 (01:28 +0000)]
Merge "Shared namespaces inherit parent ns properties"

7 years agoShared namespaces inherit parent ns properties
Dimitry Ivanov [Tue, 2 May 2017 00:45:38 +0000 (17:45 -0700)]
Shared namespaces inherit parent ns properties

Make shared namespace inherit namespace links and
search/permitted paths from the parent namespace.

Bug: http://b/37854032
Test: bionic_unit_tests --gtest_filter=dl*:Dl*
Change-Id: I174661d4a1dd0cbe4a378179073719aa955f3592
(cherry picked from commit ec43dd6c36d75014c4e4dc592dd67ab20033a76a)

7 years agoAdd ifunc for variable test-case
Dimitry Ivanov [Tue, 2 May 2017 23:31:56 +0000 (16:31 -0700)]
Add ifunc for variable test-case

Also move ifunc tests to clang and c++.

Test: bionic-unit-tests --gtest_filter=dlfcn.ifunc*
Change-Id: I008c4fc01470c8e4d314003c03a2b63ff9bf7fd8

7 years agoMerge "Fix pthread_barrier_smoke test (part 2)."
Yabin Cui [Tue, 2 May 2017 23:20:32 +0000 (23:20 +0000)]
Merge "Fix pthread_barrier_smoke test (part 2)."

7 years agoFix pthread_barrier_smoke test (part 2).
Yabin Cui [Tue, 2 May 2017 23:18:13 +0000 (16:18 -0700)]
Fix pthread_barrier_smoke test (part 2).

Bug:http://b/37652807
Test: run bionic-unit-tests.
Change-Id: Iaea553177956c5d08f754210273637f69d888c20

7 years agoMerge "Fix test compile errors after LLVM rebase"
Treehugger Robot [Tue, 2 May 2017 22:25:58 +0000 (22:25 +0000)]
Merge "Fix test compile errors after LLVM rebase"

7 years agoMerge "Fix pthread_barrier_smoke test."
Treehugger Robot [Tue, 2 May 2017 21:51:40 +0000 (21:51 +0000)]
Merge "Fix pthread_barrier_smoke test."

7 years agoFix test compile errors after LLVM rebase
Yi Kong [Sun, 30 Apr 2017 22:08:05 +0000 (15:08 -0700)]
Fix test compile errors after LLVM rebase

After the new rebase of Clang, we now support the alloc_size attribute,
so we can remove the warning about switching to alloc_size once Clang
has support.

Also fix an issue where 'false' is returned in a main method.

Test: make cts
Bug: 37752547
Change-Id: I32ee814aaa0338567cb8174a68d7ee1bfece2f75

7 years agoFix pthread_barrier_smoke test.
Yabin Cui [Tue, 2 May 2017 19:57:39 +0000 (12:57 -0700)]
Fix pthread_barrier_smoke test.

Bug: http://b/37652807
Test: run bionic-unit-tests.
Change-Id: Id7245223bc2a284efed6e710892b58947ef5d555

7 years agoMerge "versioner: disable container overflow checks"
Treehugger Robot [Tue, 2 May 2017 03:50:28 +0000 (03:50 +0000)]
Merge "versioner: disable container overflow checks"

7 years agoMerge "linker: add android_get_exported_namespace"
Treehugger Robot [Tue, 2 May 2017 01:37:02 +0000 (01:37 +0000)]
Merge "linker: add android_get_exported_namespace"

7 years agoversioner: disable container overflow checks
Andreas Gampe [Sat, 29 Apr 2017 02:32:13 +0000 (19:32 -0700)]
versioner: disable container overflow checks

Temporary workaround.

Bug: 37775238
Test: ASAN_OPTIONS= SANITIZE_HOST=address m
Change-Id: If9e9df45d83f8412caafcece87337a5c9df3a1c8

7 years agoMerge "fix half-deleted comments in tests"
Treehugger Robot [Mon, 1 May 2017 20:17:20 +0000 (20:17 +0000)]
Merge "fix half-deleted comments in tests"

7 years agofix half-deleted comments in tests
George Burgess IV [Mon, 1 May 2017 18:15:30 +0000 (11:15 -0700)]
fix half-deleted comments in tests

they were half-deleted in If341a27756d608a0fa77ba6518e9bcc725f7632c.

Bug: None
Test: mma
Change-Id: I4e0c8208a7f2a55d273f4c87adca1d755dc98b77

7 years agoMerge "Restore ELF32_ST_INFO/ELF64_ST_INFO."
Elliott Hughes [Mon, 1 May 2017 14:42:50 +0000 (14:42 +0000)]
Merge "Restore ELF32_ST_INFO/ELF64_ST_INFO."

7 years agoRestore ELF32_ST_INFO/ELF64_ST_INFO.
Elliott Hughes [Mon, 1 May 2017 05:56:10 +0000 (22:56 -0700)]
Restore ELF32_ST_INFO/ELF64_ST_INFO.

Mistakenly removed years ago, along with its genuinely duplicated companions.
This patch also redefines one of those rather than use the Linux uapi header
definition, which leads to signed/unsigned warnings in calling code.

Bug: https://github.com/android-ndk/ndk/issues/377
Test: ran tests
Change-Id: Ib25b17949f04969f12b945ca88ab87d080677cf9

7 years agoMerge "Include the libc/kernel/android/scsi headers in the NDK."
Treehugger Robot [Fri, 28 Apr 2017 02:48:02 +0000 (02:48 +0000)]
Merge "Include the libc/kernel/android/scsi headers in the NDK."

7 years agolinker: add android_get_exported_namespace
Jiyong Park [Mon, 3 Apr 2017 14:10:37 +0000 (23:10 +0900)]
linker: add android_get_exported_namespace

Depending on how ld.config.txt is configured, there can be multiple
built-in namespaces created by the linker from the beginning of a
process. android_get_exported_namespace is a platform only API for
getting a handle (android_namespace_t*) to one of the built-in namespaces
with given name. The returned namespace can then be given to
android_dlopen_ext in order to explicitly specify the target namespace
where the library is searched and loaded from.

Note that this function only returns 'exported' namespaces created via
ld.config.txt file. In order to export a namespace, the visible property
should be set to true:

namespace.<name>.visible = true

Namespaces are hidden by default. Hidden namespaces and namespaces
that are created programmatically, notably 'classloader-namespace',
aren't returned by this function.

Bug: 36851137
Test: confirmed that namespaces created with ld.config.txt is retrieved.
Test: linker-unit-tests passes
Merged-in: I714b510fa24f77e42c3dfc4c827b3befa8bb2951
Change-Id: I0d05fa7e0e116009edf8ea362ab46774bc617cbf
(cherry picked from commit d7c4832e6a640be972017e85ab21e72950dfeddd)

7 years agoversioner: fix leak.
Josh Gao [Fri, 28 Apr 2017 00:22:52 +0000 (17:22 -0700)]
versioner: fix leak.

Replace an intentional leak of a buffer allocated by realpath with a use
of android::base::Realpath.

Bug: http://b/37727515
Test: tools/versioner/run_tests.py
Change-Id: Ia7200bf0e1c485050e860e21ff15784941366bec

7 years agoversioner: add symlink for dependencies.
Josh Gao [Mon, 3 Apr 2017 20:02:57 +0000 (13:02 -0700)]
versioner: add symlink for dependencies.

Add a symlink where dependencies used to live, so that `versioner`
works.

Test: versioner
Test: tools/versioner/run_tests.py
Change-Id: I86999bb79baad16039709306591cb9540fb533ca

7 years agoInclude the libc/kernel/android/scsi headers in the NDK.
Elliott Hughes [Thu, 27 Apr 2017 23:26:55 +0000 (16:26 -0700)]
Include the libc/kernel/android/scsi headers in the NDK.

We have some non-upstream (but Android common kernel) scsi headers to include
in the NDK.

Bug: N/A
Test: checked out/soong/ndk/sysroot
Change-Id: If7611e1e554ada63f266ec99d95dfedb99562ae9

7 years agoMerge "Compare Pss of tested library in VerifyMemorySaving"
Elliott Hughes [Thu, 27 Apr 2017 15:40:36 +0000 (15:40 +0000)]
Merge "Compare Pss of tested library in VerifyMemorySaving"

7 years agoMerge "Make dl_iterate_phdr weak in libdl."
Treehugger Robot [Thu, 27 Apr 2017 07:44:13 +0000 (07:44 +0000)]
Merge "Make dl_iterate_phdr weak in libdl."

7 years agoMerge "watchpoint_imprecise test: set 4-byte watchpoints on 32-bit arches"
Treehugger Robot [Thu, 27 Apr 2017 00:42:14 +0000 (00:42 +0000)]
Merge "watchpoint_imprecise test: set 4-byte watchpoints on 32-bit arches"

7 years agoCompare Pss of tested library in VerifyMemorySaving
Zhenhua WANG [Tue, 25 Apr 2017 03:07:19 +0000 (11:07 +0800)]
Compare Pss of tested library in VerifyMemorySaving

DlExtRelroSharingTest.VerifyMemorySaving verifies whether
android_dlopen_ext(ANDROID_DLEXT_USE_RELRO) really saves memory.

This patch compares Pss of the tested library rather than total
Pss of the process, in case different behavior of dlopen() and
android_dlopen_ext() introduces random Pss usage.

Test: DlExtRelroSharingTest.VerifyMemorySaving

Change-Id: I696eca736018fca5d9ec9385ac1c79ced280281d

7 years agoMerge "Update bionic after Clang rebase"
Yi Kong [Wed, 26 Apr 2017 23:00:40 +0000 (23:00 +0000)]
Merge "Update bionic after Clang rebase"

7 years agoMerge "Make unified headers' SIGRTMIN/SIGRTMAX usable before API 21."
Elliott Hughes [Wed, 26 Apr 2017 22:16:19 +0000 (22:16 +0000)]
Merge "Make unified headers' SIGRTMIN/SIGRTMAX usable before API 21."

7 years agoMake unified headers' SIGRTMIN/SIGRTMAX usable before API 21.
Elliott Hughes [Tue, 25 Apr 2017 22:45:29 +0000 (15:45 -0700)]
Make unified headers' SIGRTMIN/SIGRTMAX usable before API 21.

Bug: https://github.com/android-ndk/ndk/issues/352
Test: built new NDK test
Change-Id: Iacebe574bbf693701949e038005a40ba6520d592

7 years agoUpdate bionic after Clang rebase
Yi Kong [Thu, 20 Apr 2017 21:27:28 +0000 (14:27 -0700)]
Update bionic after Clang rebase

After the new rebase of Clang, we now supports alloc_size attribute, so
we can remove the warning about switching to alloc_size once Clang has
support.

Compiler.setInvocation has changed argument type from raw pointer to
shared pointer. Add version check here so that we can build under either
old rebase or the new rebase.

Test: build
Bug: 37423073
Change-Id: I4563eaf93bae6c59a4a19318f8caa92bd361b3ab

7 years agowatchpoint_imprecise test: set 4-byte watchpoints on 32-bit arches
Pavel Labath [Wed, 26 Apr 2017 10:30:06 +0000 (11:30 +0100)]
watchpoint_imprecise test: set 4-byte watchpoints on 32-bit arches

8-byte watchpoints are not supported on 32-bit kernels (at least on x86,
probably arm as well). 8-byte watchpoints are not required for this
test, so just decrease the size of watchpoints on these architectures.

Change-Id: Ie96b4bc8ce0ad8c924ac737083cf9fe0182aee4d
Test: bionic-unit-tests-static --gtest_filter=sys_ptrace.*
Bug: 37662849

7 years agoMake dl_iterate_phdr weak in libdl.
Dan Albert [Tue, 25 Apr 2017 22:42:42 +0000 (15:42 -0700)]
Make dl_iterate_phdr weak in libdl.

This needs to be defined as weak because it is also defined in libc.a.
Without this, static executables will have a multiple definition
error.

Test: make checkbuild
Bug: None
Change-Id: If2024ef4191c8ab7cf087d21d76fefdc92b58da1

7 years agoMerge "Add basic tests for <link.h>."
Elliott Hughes [Mon, 24 Apr 2017 17:52:11 +0000 (17:52 +0000)]
Merge "Add basic tests for <link.h>."

7 years agoMerge "Update static functions/macro definitions."
Christopher Ferris [Sat, 22 Apr 2017 19:16:37 +0000 (19:16 +0000)]
Merge "Update static functions/macro definitions."

7 years agoUpdate static functions/macro definitions.
Christopher Ferris [Thu, 20 Apr 2017 20:38:49 +0000 (13:38 -0700)]
Update static functions/macro definitions.

Fix the list of static functions coming from swab.h to match the
ones exported by glibc.

Force the definition of __HAVE_BUILTIN_BSWAP{16,32,64}__ so the headers
use the builtin.

Add a unit test to guarantee that kernel header updates do not break this.

Test: Built and booted angler.
Test: Built the bionic unit tests for arm, arm64, mips, x86, x86_64.
Test: Ran the new test on angler and glibc.

Change-Id: I4ce229e3f198c204186d72bf22dd97b5cdf239e4

7 years agoAdd basic tests for <link.h>.
Elliott Hughes [Sat, 22 Apr 2017 00:15:41 +0000 (17:15 -0700)]
Add basic tests for <link.h>.

The dl_iterate_phdr test is new, but the exidx test is largely copy & paste
from ndk_translation.

Bug: http://b/31556066
Test: ran tests
Change-Id: If754f1459ef1d789ee98a89cd2215188edca51da

7 years agoMerge "loader: enable loading libraries from tmpfs"
Treehugger Robot [Sat, 22 Apr 2017 00:09:48 +0000 (00:09 +0000)]
Merge "loader: enable loading libraries from tmpfs"

7 years agoloader: enable loading libraries from tmpfs
Dimitry Ivanov [Fri, 21 Apr 2017 20:12:05 +0000 (13:12 -0700)]
loader: enable loading libraries from tmpfs

This change adds two tests for dlopen from temporary files.
1. One Uses memfd_create() can be used to load libraries directly
from memory. This requires relaxing namespace accessibility check
in order to make this work in isolated namespaces.
2. Another checks that open with O_TMPFILE works.

Bug: http://b/37245203
Test: bionic-unit-tests --gtest_filter=dl*:Dl*
Change-Id: I3be1d7198ca17e7f1ba022a0d86c64d59a493506
(cherry picked from commit bb8b22a087db32773f1a9cd3473061f3ad714afc)

7 years agoMerge "Make the _Unwind_Ptr declaration match clang's."
Elliott Hughes [Fri, 21 Apr 2017 19:52:32 +0000 (19:52 +0000)]
Merge "Make the _Unwind_Ptr declaration match clang's."

7 years agoMake the _Unwind_Ptr declaration match clang's.
Elliott Hughes [Fri, 21 Apr 2017 17:25:56 +0000 (10:25 -0700)]
Make the _Unwind_Ptr declaration match clang's.

Bug: https://issuetracker.google.com/37126620
Test: builds, boots angler
Change-Id: I7d4a9b998f2e5c4c7b0beed87807d7b76a564c5c

7 years agoMerge "Remove unused lambda captures"
Yi Kong [Fri, 21 Apr 2017 19:48:56 +0000 (19:48 +0000)]
Merge "Remove unused lambda captures"

7 years agoMerge "DO NOT MERGE: The future is now."
Treehugger Robot [Fri, 21 Apr 2017 01:10:22 +0000 (01:10 +0000)]
Merge "DO NOT MERGE: The future is now."

7 years agoDO NOT MERGE: The future is now.
Josh Gao [Thu, 20 Apr 2017 19:58:31 +0000 (12:58 -0700)]
DO NOT MERGE: The future is now.

__INTRODUCED_IN_FUTURE -> __INTRODUCED_IN(26)

Bug: http://b/37437368
Test: treehugger
Change-Id: I601a23da83b65a0cd582cc840ed3856a9031b673
(cherry picked from commit cb302f932a3532f1484e1e70894e9b1199384283)

7 years agoRemove unused lambda captures
Yi Kong [Thu, 20 Apr 2017 16:08:11 +0000 (09:08 -0700)]
Remove unused lambda captures

Clean up. This fixes build under -Wunused-lambda-capture.

Test: build
Change-Id: Ic12aa39e14ed55dbb28cf55303f9c4258179037d

7 years agoMerge "Add syscalls that aren't currently used to the seccomp whitelist."
Josh Gao [Thu, 20 Apr 2017 19:52:51 +0000 (19:52 +0000)]
Merge "Add syscalls that aren't currently used to the seccomp whitelist."

7 years agoMerge "Decode the common EM_ values."
Treehugger Robot [Thu, 20 Apr 2017 02:45:02 +0000 (02:45 +0000)]
Merge "Decode the common EM_ values."

7 years agoDecode the common EM_ values.
Elliott Hughes [Thu, 20 Apr 2017 00:44:57 +0000 (17:44 -0700)]
Decode the common EM_ values.

We know what "3" and "40" are, but most folks not on our team don't.

I don't think we need to support all the weird values, because only the
supported architectures actually occur in practice.

Bug: N/A
Test: manually overwrote aarch64 libcrypto.so with an x86-64 .so and ran "date"
Test: CANNOT LINK EXECUTABLE "date": "/system/lib64/libcrypto.so" has unexpected e_machine: 62 (EM_X86_64)
Change-Id: Ic4c6325fe7968f0c96fc0bfe15a50ed922a5ba55

7 years agoMerge "Make all the ELF relocation constants available."
Treehugger Robot [Wed, 19 Apr 2017 22:29:41 +0000 (22:29 +0000)]
Merge "Make all the ELF relocation constants available."

7 years agoAdd syscalls that aren't currently used to the seccomp whitelist.
Josh Gao [Tue, 18 Apr 2017 23:05:39 +0000 (16:05 -0700)]
Add syscalls that aren't currently used to the seccomp whitelist.

Add some useful new syscalls that we currently aren't using in bionic,
but might in the future to the seccomp whitelist.

Bug: http://b/37317198
Test: mma
Change-Id: I6550867da152cea84fb13d0c15a399cdb2acf1aa

7 years agoMerge "Add missing required libraries"
Treehugger Robot [Wed, 19 Apr 2017 20:38:57 +0000 (20:38 +0000)]
Merge "Add missing required libraries"

7 years agoMerge "libc: fix typo in __RENAME macro"
Treehugger Robot [Wed, 19 Apr 2017 20:31:41 +0000 (20:31 +0000)]
Merge "libc: fix typo in __RENAME macro"

7 years agoMake all the ELF relocation constants available.
Elliott Hughes [Wed, 19 Apr 2017 20:25:27 +0000 (13:25 -0700)]
Make all the ELF relocation constants available.

BSD thinks you should only get the relocation constants for your target
architecture, but it's often useful to have them all available at once.
Rearrange the headers to enable that.

Also update the (modified) NetBSD files to CVS HEAD.

Also remove the unused BSDism R_TYPE.

Bug: N/A
Test: builds
Change-Id: Iad5ef29192a732696e2b36af35144a9ca116aa46

7 years agoMerge "Add missing arch-specific AT_ cruft."
Treehugger Robot [Wed, 19 Apr 2017 19:26:41 +0000 (19:26 +0000)]
Merge "Add missing arch-specific AT_ cruft."

7 years agoAdd missing required libraries
Dimitry Ivanov [Wed, 19 Apr 2017 18:58:52 +0000 (11:58 -0700)]
Add missing required libraries

Test: m
Change-Id: Id8c8c69547fbfb0c8efe73b324c8b6dcd52aa8ca

7 years agolibc: fix typo in __RENAME macro
George Burgess IV [Wed, 19 Apr 2017 01:28:19 +0000 (18:28 -0700)]
libc: fix typo in __RENAME macro

Apparently __strncpy_real redirects to strcpy instead of strncpy for GCC
builds. This is bad, and it confused a project compiled by GCC that uses
strcpy.

I audited all of the FORTIFY-related __RENAMEs both manually and with a
script I hacked together; they all look correct aside from this one.

FWIW, with the cleaned up clang FORTIFY, lots of the `void foo()
__RENAME(foo)` will just become `void foo()` if this last thing I'm
working on gets through review.

Bug: 35329524
Test: Previously broken project now seems to work. Bullhead and Ryu
both build + boot.

Change-Id: Ib18ee3535ae31eb7e8ae846dc012f9b64cac80bf

7 years agoAdd missing arch-specific AT_ cruft.
Elliott Hughes [Wed, 19 Apr 2017 17:20:25 +0000 (10:20 -0700)]
Add missing arch-specific AT_ cruft.

AP_FPUCW is referenced by valgrind.

Bug: https://bugs.kde.org/show_bug.cgi?id=339945
Test: valgrind builds with one less hack
Change-Id: I7146f3709286662108cc82ba3c55ce935375a1f1

7 years agoMerge "Add PT_ARM_EXIDX."
Treehugger Robot [Tue, 18 Apr 2017 22:46:59 +0000 (22:46 +0000)]
Merge "Add PT_ARM_EXIDX."

7 years agoMerge "Move bionic_systrace.cpp over to CachedProperty."
Treehugger Robot [Tue, 18 Apr 2017 17:56:04 +0000 (17:56 +0000)]
Merge "Move bionic_systrace.cpp over to CachedProperty."

7 years agoMerge "Remove unused elf_machdep.h cruft."
Elliott Hughes [Tue, 18 Apr 2017 04:16:04 +0000 (04:16 +0000)]
Merge "Remove unused elf_machdep.h cruft."

7 years agoMerge "Document DT_RUNPATH support."
Treehugger Robot [Tue, 18 Apr 2017 01:00:20 +0000 (01:00 +0000)]
Merge "Document DT_RUNPATH support."

7 years agoMerge "Un-deprecated __system_property_find_nth."
Treehugger Robot [Mon, 17 Apr 2017 23:45:55 +0000 (23:45 +0000)]
Merge "Un-deprecated __system_property_find_nth."

7 years agoRemove unused elf_machdep.h cruft.
Elliott Hughes [Mon, 17 Apr 2017 23:25:09 +0000 (16:25 -0700)]
Remove unused elf_machdep.h cruft.

Also add a few missing include guards.

Bug: N/A
Test: builds
Change-Id: I9557303c81a4b11d430112528def038ecb5562a9

7 years agoAdd PT_ARM_EXIDX.
Dan Albert [Mon, 17 Apr 2017 23:06:59 +0000 (16:06 -0700)]
Add PT_ARM_EXIDX.

The updated LLVM libunwind needs this to be defined.

Test: make checkbuild
Bug: None
Change-Id: Ia20016a9e3becb37ea6902f1959d1884c1263e51

7 years agoDocument DT_RUNPATH support.
Elliott Hughes [Mon, 17 Apr 2017 23:01:23 +0000 (16:01 -0700)]
Document DT_RUNPATH support.

Bug: http://b/37328826
Test: N/A
Change-Id: Ia220f7f519e3cdd6193faff3b58d598505d4d0cf

7 years agoUn-deprecated __system_property_find_nth.
Elliott Hughes [Mon, 17 Apr 2017 21:53:07 +0000 (14:53 -0700)]
Un-deprecated __system_property_find_nth.

Netflix was using this, and looking the header file, although
__system_property_find_nth has been available since the beginning of time,
__system_property_foreach only appeared in 16. So anyone who wants to run
on pre-JellyBean devices would want to use __system_property_find_nth.

It's pretty much a one-liner in terms of __system_property_foreach anyway,
so it doesn't cost us anything to keep it.

Also restore slightly better tests than we originally removed.

Bug: http://b/36566667
Test: ran tests
Change-Id: Id268c2c2e848da17bb0a5a5420af234d9dcb829a

7 years agoMove bionic_systrace.cpp over to CachedProperty.
Elliott Hughes [Mon, 17 Apr 2017 21:12:25 +0000 (14:12 -0700)]
Move bionic_systrace.cpp over to CachedProperty.

This is the last bionic caller that was manually trying to cache
property values.

Bug: N/A
Test: builds and boots
Change-Id: Id66c0a05d8448f08c39dbf7189241e75615d44b4

7 years agoMerge "Link to the public post about clang FORTIFY."
Treehugger Robot [Mon, 17 Apr 2017 17:09:40 +0000 (17:09 +0000)]
Merge "Link to the public post about clang FORTIFY."

7 years agoLink to the public post about clang FORTIFY.
Elliott Hughes [Sun, 16 Apr 2017 15:50:58 +0000 (08:50 -0700)]
Link to the public post about clang FORTIFY.

Bug: N/A
Test: builds
Change-Id: I1c2040fdd3c3bbe61a8adfc1f414fce50087a1b8

7 years agoMerge "Avoid "D linker : (null)" with debug.ld.all for dlerror."
Treehugger Robot [Sat, 15 Apr 2017 22:30:57 +0000 (22:30 +0000)]
Merge "Avoid "D linker  : (null)" with debug.ld.all for dlerror."

7 years agoAvoid "D linker : (null)" with debug.ld.all for dlerror.
Elliott Hughes [Sat, 15 Apr 2017 16:11:15 +0000 (09:11 -0700)]
Avoid "D linker  : (null)" with debug.ld.all for dlerror.

We only want to know when dlerror is actually set. The previous change
to this logic moved it so that we only show actual updates to dlerror,
not every string that might end up in dlerror's output. This change
ignores cases where we're _clearing_ dlerror (which happens on every
call to dlerror).

Bug: http://b/37287938
Test: ran tests
Change-Id: I0c30ee199dc76d9aea165c1d90f694ead488518b

7 years agoMerge "Report the right error code from PropertyServiceConnection()"
Treehugger Robot [Sat, 15 Apr 2017 00:18:29 +0000 (00:18 +0000)]
Merge "Report the right error code from PropertyServiceConnection()"

7 years agoMerge "Fix incorrect check."
Elliott Hughes [Fri, 14 Apr 2017 22:14:43 +0000 (22:14 +0000)]
Merge "Fix incorrect check."

7 years agoReport the right error code from PropertyServiceConnection()
Tom Cherry [Fri, 14 Apr 2017 20:45:20 +0000 (13:45 -0700)]
Report the right error code from PropertyServiceConnection()

We're currently reporting errno from the clean up call to close(),
which is much less interesting than the failing connect() call that
precedes it.  This change reports errno from the connect() call
instead.

Bug: 36249702
Test: Boot bullhead, bionic unit tests
Test: Fake bad end point and see relevant error returned
Change-Id: Icadec463f50cd0a2a2faa08f049a7996cd32786f

7 years agoFix incorrect check.
Christopher Ferris [Fri, 14 Apr 2017 19:58:24 +0000 (12:58 -0700)]
Fix incorrect check.

Bug: 37347846

Test: No error on data +%s
Change-Id: I7e88ea842af29ce4a366c25a3f79c09b63a25004