Commit Graph

34524 Commits

Author SHA1 Message Date
Christopher Ferris 172b1d0008 Merge "Add support for the new unwind method." 2017-08-03 19:08:34 +00:00
Yifan Hong 472808a570 Merge changes from topic 'libcutils_private_headers'
* changes:
  Remove private headers from libcutils.vendor
  Move android_filesystem_config.h => fs_config.h
2017-08-03 18:24:04 +00:00
Christopher Ferris 6f3981c181 Add support for the new unwind method.
Also add a comment to the GetElf function to indicate that it never returns
nullptr.

Also needed to add this library to the a million and one places that the vndk
has hard-coded this data.

Bug: 23762183

Test: Built, nothing uses the new code.
Test: However, I did run backtrace_test using this code, and all tests pass.
Change-Id: Ib270665dcb7a7607075e36d88be76dbde6e2faa8
(cherry picked from commit dc4104b720)
2017-08-03 10:15:44 -07:00
Earl Ou e4030384c4 libcutils: write trace event into socket in container
When Android is running in a container, ftrace trace_marker may be
disabled, e.g. Chrome OS verified mode. To enable trace, a socket is
created for everyone to send trace event.

Modify libcutils so apps using it can write trace to the socket.

To achieve this goal without touching code for normal device,
trace-container.c is created for code specific to container. Shared
code between trace-dev.c and trace-container.c is moved to local
trace-dev.h.

Note that to avoid sharing FDs across different processes, Zygote closes
FD and reopen it to /dev/null if it is a socket. Therefore, we need to
manually close FD and reopen it again after forking. This is done in
the atrace_set_tracing_enabled as Zygote also use it to clear flags
during forking.

Related change:
- http://crrev.com/2400163003 (Chromium)
- http://ag/2028075 (Android system/core)
- http://ag/1738271 (Android device/google/cheets2)

Bug: 29776474, 62410809
Test: run chrome://tracing and see data from the host side.
Change-Id: I3fe969e284b972c28e4f32f23cd948aaea61a043
2017-08-03 15:16:44 +08:00
George Burgess IV f5a677a7d3 Merge "cutils: update property_get to use diagnose_if."
am: 5c655991f5

Change-Id: I7dff3fb2ff288800d72d9c632617639fa7e6bf9e
2017-08-03 02:23:30 +00:00
Elliott Hughes 0915192d8b Merge "Stop asking for old versions of C++ in system/core."
am: e61e2fcf21

Change-Id: I9c424e8bb99c7f03baefc794e4b095b8d29db3bb
2017-08-03 02:23:09 +00:00
Treehugger Robot 5c655991f5 Merge "cutils: update property_get to use diagnose_if." 2017-08-03 02:15:54 +00:00
Treehugger Robot e61e2fcf21 Merge "Stop asking for old versions of C++ in system/core." 2017-08-03 02:14:45 +00:00
Elliott Hughes 15d565bbca Merge "Fix reference to out of scope local in adb_thread_setname."
am: b31ca1a64f

Change-Id: Idc5b3208b7868a2636b7c335c48db57dd48e8b83
2017-08-03 00:15:37 +00:00
Treehugger Robot b31ca1a64f Merge "Fix reference to out of scope local in adb_thread_setname." 2017-08-02 23:57:57 +00:00
Yifan Hong b6807125df Remove private headers from libcutils.vendor
Bug: 63135587
Test: m -j
Test: BOARD_VNDK_VERSION=current m -j
Test: mma -j
Test: BOARD_VNDK_VERSION=current mma -j

Change-Id: I9eecf23c4c311bd8336a5bfaaeb2afb3b51c6513
Merged-In: I9eecf23c4c311bd8336a5bfaaeb2afb3b51c6513
2017-08-02 16:40:36 -07:00
Josh Gao 9560524455 Merge "Revert "base: work around thread safety analysis bug.""
am: b5c90e9d6b

Change-Id: Ieda68e652c9784990dd7d03c4101b5a9ed18d98a
2017-08-02 23:32:58 +00:00
Yifan Hong 09c89672b6 Move android_filesystem_config.h => fs_config.h
The non AID_ things in android_filesystem_config.h are moved
to fs_config.h. For libcutils.vendor and libcutils_headers.vendor,
fs_config.h is not exported.

An empty system/core/include/private/fs_config.h is placed to
appease the dependency from certain modules (logd, etc.)
that includes system/core/include/private/android_filesystem_config.h
directly.

Test: m -j
Test: BOARD_VNDK_VERSION=current m -j
Bug: 63135587
Change-Id: I95dfb874a426941022b100c0ca26a0576b0f4aa3
Merged-In: I95dfb874a426941022b100c0ca26a0576b0f4aa3
2017-08-02 16:31:19 -07:00
Josh Gao f727a3933e Merge "base: work around thread safety analysis bug."
am: f3c7f10abd

Change-Id: Ied41fa3a6724c7835ce8636301e1e30c23e1d660
2017-08-02 23:16:29 +00:00
Elliott Hughes 9e1173aa40 Merge "Make sure freeaddrinfo is always called on failure."
am: f914029057

Change-Id: Iff3b186c35bca1f1c7292f5e5567d3ce11037239
2017-08-02 23:10:59 +00:00
Josh Gao b5c90e9d6b Merge "Revert "base: work around thread safety analysis bug."" 2017-08-02 23:10:42 +00:00
Josh Gao c54e3dba8d Revert "base: work around thread safety analysis bug."
This reverts commit e4509da961.

Reason for revert: probably breaks checkbuild?

Change-Id: I04a6284dee82761c90fa355da0472855a228b849
2017-08-02 23:10:26 +00:00
George Burgess IV 7aa81fcdad Merge "libappfuse: use an explicit buffer size"
am: ac8a484646

Change-Id: Iaddc175350cd1980c9ee446dcdec198318c960d3
2017-08-02 23:10:02 +00:00
Josh Gao f3c7f10abd Merge "base: work around thread safety analysis bug." 2017-08-02 23:09:07 +00:00
Treehugger Robot f914029057 Merge "Make sure freeaddrinfo is always called on failure." 2017-08-02 23:00:23 +00:00
George Burgess IV 9bf11c1d05 cutils: update property_get to use diagnose_if.
This lets us redeclare property_get with diagnose_if tagged on it,
so we no longer need to deal with overloads.

Bug: 12231437
Test: m checkbuild on bullhead aosp-master.
Change-Id: Ic55dcfeaa314f83d3713aabac7852cb766330fc8
2017-08-02 15:59:19 -07:00
Treehugger Robot ac8a484646 Merge "libappfuse: use an explicit buffer size" 2017-08-02 22:57:27 +00:00
Josh Gao e4509da961 base: work around thread safety analysis bug.
Clang's assert_capability and assert_shared_capability annotations are
nonfunctional until https://reviews.llvm.org/rL309725 is relanded and
makes its way into our toolchain. Work around this by using the
equivalent assert_lock and assert_shared_lock.

Bug: http://b/64226736
Test: manual
Change-Id: I40711f162ea1d492f1e0b3eff88bf6ae6d995e2f
2017-08-02 14:44:58 -07:00
George Burgess IV 87533581be libappfuse: use an explicit buffer size
This patch makes lookup_name use an explicit buffer size, rather than
"whatever the union happens to give me." I don't know if it's the
correct size, but having a 0-length array in this sort of configuration
seems fragile, and will be a compilation error when
https://android-review.googlesource.com/#/c/platform/bionic/+/449363/
goes in.

Bug: 12231437
Test: Builds with the mentioned patch applied to Bionic
Change-Id: I5793c906b7c2417e9a58aa907ef11c282027edb2
2017-08-02 14:11:25 -07:00
Elliott Hughes 972d078b3e Stop asking for old versions of C++ in system/core.
Bug: http://b/32019064
Test: builds
Change-Id: I1befc647b581bd293f98010e816b6413caab5e6c
2017-08-02 14:06:28 -07:00
Steven Moreland 7170d5bf24 Merge "Remove TODOs for std::string removal."
am: ceb7814c86

Change-Id: Iab64291aec5edd44ebf8856fb2d24c6d0e779bed
2017-08-02 20:49:46 +00:00
Treehugger Robot ceb7814c86 Merge "Remove TODOs for std::string removal." 2017-08-02 20:35:45 +00:00
Elliott Hughes 7462f1858c Fix reference to out of scope local in adb_thread_setname.
Bug: https://android-review.googlesource.com/#/c/168725/5/adb/sysdeps.h@639
Test: boots, adbd thread names look sane
Signed-off-by: Ivan Maidanski <i.maidanski@samsung.com>
Change-Id: Ib3bdf53658f3903de8f0a5688f7d77745e677c77
2017-08-02 20:34:06 +00:00
Elliott Hughes 3ff453aaa0 Make sure freeaddrinfo is always called on failure.
Bug: https://android-review.googlesource.com/#/c/platform/system/core/+/268797/2/libcutils/socket_network_client_unix.c
Test: builds
Signed-off-by: Ivan Maidanski <i.maidanski@samsung.com>
Change-Id: I2d93c8359c3398769d408284f77d56e09713a7f3
2017-08-02 20:32:27 +00:00
Elliott Hughes 601e5ac55b Merge "Add comments to "public.libraries.*.txt"."
am: e7b8fc22af

Change-Id: I8519a128238758433d194f35f6090633aeb85f0a
2017-08-02 19:43:01 +00:00
Christopher Ferris 3b6bbb8178 Merge "Allow mips to build."
am: 7009a3ccf7

Change-Id: I4564b2298e16258ccfe49f6651b751af35139f5f
2017-08-02 19:42:41 +00:00
Treehugger Robot e7b8fc22af Merge "Add comments to "public.libraries.*.txt"." 2017-08-02 19:34:26 +00:00
Christopher Ferris 7009a3ccf7 Merge "Allow mips to build." 2017-08-02 19:30:16 +00:00
Christopher Ferris 32766f1f52 Allow mips to build.
Test: Build mips.
Change-Id: Ice2fe1d11b7c628b325ea2ad1fd1252ad8e10668
2017-08-02 10:45:46 -07:00
Tom Cherry 76756aa1dd Merge "init: use unique_fd in builtins.cpp"
am: c34afb1cd5

Change-Id: I9f1fef77ab4d3f873180f305177e586d44a22c49
2017-08-02 17:18:33 +00:00
Tom Cherry c34afb1cd5 Merge "init: use unique_fd in builtins.cpp" 2017-08-02 17:09:31 +00:00
Christopher Ferris ce7c7c04d9 Merge "Revert "Add support for the new unwind method.""
am: 0d2cac9ea8

Change-Id: I68903c1641ee0d439dc5f839b968cff4b739dd84
2017-08-02 02:06:06 +00:00
Christopher Ferris 0d2cac9ea8 Merge "Revert "Add support for the new unwind method."" 2017-08-02 01:49:03 +00:00
Christopher Ferris bd625efbca Revert "Add support for the new unwind method."
This reverts commit 5b460d13a4.

Reason for revert: Strange sailfish boot problem.

Change-Id: Ibde9375405cca4343c262335647dac120aab4d73
2017-08-02 01:47:31 +00:00
Christopher Ferris 61ef596862 Merge "Add support for the new unwind method."
am: 9ccf627e78

Change-Id: Ie03fea9039dba17957a47edbc6d79e9c0727c86c
2017-08-01 23:29:59 +00:00
Chih-Hung Hsieh dfaa20c069 Merge "Fix misc-macro-parentheses warnings in system/core."
am: e4bd153e55

Change-Id: I6b38149a0fa15874eff68cbf7ee62e4acd41c595
2017-08-01 23:26:06 +00:00
Christopher Ferris 9ccf627e78 Merge "Add support for the new unwind method." 2017-08-01 23:22:42 +00:00
Treehugger Robot e4bd153e55 Merge "Fix misc-macro-parentheses warnings in system/core." 2017-08-01 23:08:18 +00:00
Chih-Hung Hsieh 85244e8bc2 Fix misc-macro-parentheses warnings in system/core.
Add NOLINT comment to work around clang-tidy
error in checking macro arguments used in
type expressions.

Bug: 28705665
Test: make with WITH_TIDY=1 WITH_TIDY_CHECKS=-*,misc-macro-* \
      WITH_TIDY_FLAGS=-header-filter=system/core/.*

Change-Id: I7619978c1804e151a11a8b0477e80076bcf21cab
2017-08-01 22:12:57 +00:00
Tom Cherry 7037991f04 init: use unique_fd in builtins.cpp
Test: boot

Change-Id: I09295856dbd0de9436a95a2fe99ab6be156b995f
2017-08-01 14:22:44 -07:00
Tom Cherry b1c18af247 Merge changes Ibd57c103,I81f1e8ac,Ia6e546fe
am: 2a2a8d9ec0

Change-Id: Id39de0d3d62c1e0f3585ae7817940dbbebfa6ae3
2017-08-01 20:25:57 +00:00
Tom Cherry 2a2a8d9ec0 Merge changes Ibd57c103,I81f1e8ac,Ia6e546fe
* changes:
  init: rename ServiceManager to ServiceList and clean it up
  init: move reaping from ServiceManager to signal_handler.cpp
  init: move exec operations out of ServiceManager
2017-08-01 20:15:02 +00:00
Tom Cherry 911b9b1d6e init: rename ServiceManager to ServiceList and clean it up
ServiceManager is essentially just a list now that the rest of its
functionality has been moved elsewhere, so the class is renamed
appropriately.

The ServiceList::Find* functions have been cleaned up into a single
smaller interface.
The ServiceList::ForEach functions have been removed in favor of
ServiceList itself being directly iterable.

Test: boot bullhead
Change-Id: Ibd57c103338f03b83d81e8b48ea0e46cd48fd8f0
2017-08-01 11:06:17 -07:00
Tom Cherry eeee83106b init: move reaping from ServiceManager to signal_handler.cpp
signal_handler.cpp itself needs to be cleaned up, but this is a step
to clean up ServiceManager.

Test: boot bullhead
Change-Id: I81f1e8ac4d09692cfb364bc702cbd3deb61aa55a
2017-08-01 11:06:17 -07:00
Tom Cherry 3b81f2d623 init: move exec operations out of ServiceManager
These can be implemented without ServiceManager, so we remove them and
make ServiceManager slightly less of a God class.

Test: boot bullhead
Test: init unit tests
Change-Id: Ia6e546fe5292255412245256f7d230af4ece135f
2017-08-01 11:06:04 -07:00