Commit Graph

34725 Commits

Author SHA1 Message Date
Treehugger Robot cba7f57119 Merge "init: add SelabelInitialize() for subcontext" 2017-10-20 00:43:29 +00:00
Tom Cherry 0d1452ee1b init: add SelabelInitialize() for subcontext
Children of init that use any of the SELinux wrapper functions,
including make_dir(), mkdir_recursive(), and plenty others, need to
first initialize the sehandle with SelabelInitialize().

I wish there were a better solution, but early init doesn't actually
want this handle initialized, so that is a valid use case.  Ueventd
needs to initialize this before fork()'ing, so lazy initialization is
not universally acceptable either.  Likely we won't have other
children that fork() then exec() init again, so this should be okay.

Bug: 62875318

Test: init unit tests
Test: sailfish creates directories with correct SELabel after wipe
Change-Id: I6de937604a060e18945427418f15b90e0b9d5c37
2017-10-19 16:25:45 -07:00
Christopher Ferris b3959bb47e Merge "Fix demangle of function names." 2017-10-19 20:03:51 +00:00
Treehugger Robot a03c935e27 Merge "bootstat: Add more boot reasons found by logging in the wild." 2017-10-19 19:41:34 +00:00
James Hawkins 34073b583a bootstat: Add more boot reasons found by logging in the wild.
Bug: none
Test: none
Change-Id: I7e388326be44aeb3e6fdb79d2e173dc17eb8bc1f
2017-10-19 10:44:22 -07:00
Christopher Ferris 9a6b3e39e5 Fix demangle of function names.
Also move the Backtrace::CreateNew function into the same place as ::Create
in preparation for the switch to the new unwinder as the base.

Test: Verify that names are demangled properly.
Change-Id: I6274cd43ea52210523e1e1ce23af5b22f62f4573
2017-10-18 19:20:12 -07:00
Treehugger Robot d72d92aee2 Merge "init: add extra std::move" 2017-10-19 02:17:20 +00:00
Treehugger Robot 6393c62e2e Merge "bootstat: remove extraneous android_logcat_destroy." 2017-10-19 01:43:22 +00:00
Treehugger Robot 22d2136d75 Merge "libbacktrace is not directly available to vendors" 2017-10-19 01:31:24 +00:00
Treehugger Robot 6e52973623 Merge "init: wait_for_prop shouldn't run in a subcontext" 2017-10-19 00:10:18 +00:00
Josh Gao 52315ae329 bootstat: remove extraneous android_logcat_destroy.
android_logcat_pclose already does that.

Bug: http://b/67960705
Test: mma
Change-Id: I03d06b10807e8a313c9654c2e1db36bfb59e3f99
2017-10-18 16:57:33 -07:00
Treehugger Robot ab62265fa1 Merge "Use target.linux for all linux kernel based targets" 2017-10-18 22:46:05 +00:00
Tom Cherry 5d7b55bc69 init: add extra std::move
This is meant to be copy-and-move, but I forgot the move.

Test: build
Change-Id: I755ad0d99624dc0ae419ad9ed3ae6d0e017b27c5
2017-10-18 14:52:33 -07:00
Tom Cherry fa3e52c64a init: wait_for_prop shouldn't run in a subcontext
wait_for_prop sets a flag that prevents the action queue from
continuing while otherwise allowing init's main loop to continue
executing.  This cannot be done from a subcontext, so it's moved to
normal init.

All property functions need work in any case, particularly once
property_service is moved out of init.

Bug: 62875318
Test: boot sailfish and see that the previous failure related to this
      is fixed

Change-Id: Ib9e0d0bdbd0ff22ab0e5c3fe6db620700af266c6
2017-10-18 14:42:27 -07:00
Christopher Ferris 8158d708c3 Merge "Fix setting of map_offset in frame data." 2017-10-18 16:01:25 +00:00
Christopher Ferris c5a3baa5e3 Fix setting of map_offset in frame data.
The old code set the map_offset from elf_offset, but it should have used
offset. Without this change, frame data is not properly shown for shared
libraries in an apk.

Add new unit test to verify that map_offset is set properly.

Test: Ran new unit tests.
Change-Id: I2fe5abda23a5de51c8fcf9361ba9350b80446f15
2017-10-17 18:42:03 -07:00
Treehugger Robot 796987482f Merge "<stdbool.h> not necessary in C++." 2017-10-17 19:26:53 +00:00
Elliott Hughes a0f73f9bff <stdbool.h> not necessary in C++.
Bug: N/A
Test: builds
Change-Id: I1f32b202e353414e74ace87a7d5b495b5deb5f99
Merged-In: I1f32b202e353414e74ace87a7d5b495b5deb5f99
2017-10-17 16:21:33 +00:00
Tom Cherry 4ff2607ef7 Merge "Only allow UTF8 encoded property values" 2017-10-17 16:12:34 +00:00
Dan Willemsen bdddcab3bd Use target.linux for all linux kernel based targets
Now in Android.bp files, target.linux applies to all targets running a
linux kernel (android, linux_glibc, linux_bionic). So common
flags/sources/etc can be combined instead of copying them to each
target.

Test: m
Change-Id: If7ad138ea1c540c160731f86b6ccc0daa5c69b83
2017-10-16 20:55:39 -07:00
Tom Cherry 8702dcb992 Only allow UTF8 encoded property values
Java already restricts properties to only UTF8 valid strings, and
this change makes this restriction also apply to all native code.

Bug: 63177684
Test: new unit tests
Change-Id: I9fa0ecc0da066b0a026db3497c0f0cbf3f5c2d5a
2017-10-16 22:35:33 +00:00
Jiyong Park b7d92c4b96 libbacktrace is not directly available to vendors
This lib becomes VNDK-SP just because libutils, which is VNDK-SP, is
depending on it. Since libutils provide android::CallStack class for
collecting and printing the callstack, there is no need for vendors to
use the internal libbacktrace library. Thus the lib is marked as
vendor_available: false.

Bug: 64730695
Test: build 2017 pixel device
Change-Id: I4ad91e3a6747bb0ae88d32cd26dfba32239c5b93
2017-10-16 11:35:02 +09:00
Jae Shin 06254de12a Merge "libkeymaster1 split" 2017-10-16 01:29:29 +00:00
Janis Danisevskis 5c148f3f26 libkeymaster1 split
libkeymaster1 was split into libkeymaster_portable and
libkeymaster_staging.

Bug: 37467707
Test: mma -j
Merged-In: Iead014db3f3d841f08c8072b0493ec9fd7a05055
Merged-In: I63869316451867d54bf34afb28ea232cc7eddbae
Change-Id: Iacdcef8631b4903fef4a79d146a9f59e37f31c3f
2017-10-14 01:18:32 +00:00
Mark Salyzyn 5126ce99de Merge "bootstat: test: duration fixes" 2017-10-13 16:32:10 +00:00
Mark Salyzyn 244947e813 bootstat: test: duration fixes
misspelled duration_test in test_thermal_shutdown

Test: system/core/bootstat/boot_reason_test.sh
Bug: 63736262
Change-Id: I5981fa899db84199aefb46c8741511e6889bc79c
2017-10-13 09:29:53 -07:00
Treehugger Robot af54c27e1b Merge "fs_mgr: removing is_device_secure()" 2017-10-13 03:39:21 +00:00
Bowgo Tsai 744361fc57 fs_mgr: removing is_device_secure()
Previously there is no vboot 1.0 metadata for ENG builds. It relies on
is_device_secure() to query "ro.secure" and skip setting up dm-verity
if the value is 0 (meaning ENG build).

This change will be submitted together with other changes to add vboot
1.0 metadata for ENG builds with a "disable magic". The resulting
metadata will be the same as triggering an "adb disable-verity" on an
USERDEBUG image.

Bug: 63056044
Test: boot sailfish eng/userdebug builds

Change-Id: I35eef771e1b30bfc6d01b8ed76b40c942fe7b783
2017-10-13 06:34:12 +08:00
Tom Cherry 4a5a337ef2 Merge "Move some properties users to __system_property_read_callback()" 2017-10-12 16:53:41 +00:00
Tom Cherry 96e8042e41 Merge "Allow setting read-only properties with value length > 92 characters" 2017-10-12 16:09:43 +00:00
Elliott Hughes 716488f53f Merge "libsparse: fix building on linux host." 2017-10-12 15:18:40 +00:00
Tom Cherry 1cf8d699a4 Allow setting read-only properties with value length > 92 characters
Bug: 23102347
Bug: 34954705
Test: read and write properties with value length > 92 characters
Change-Id: Ie196c1fdacc0489508c633e98fe9f4ad7a27dc6e
2017-10-12 02:52:28 +00:00
Christopher Ferris 63a0008df7 Merge "Add support for boolean literals." 2017-10-12 01:20:07 +00:00
Treehugger Robot 0c24d6ccea Merge "Add missing includes." 2017-10-12 00:06:30 +00:00
Christopher Ferris 0523275893 Add support for boolean literals.
Bug: 67678053

Test: Passes new unit tests.
Change-Id: I9d0ede56aa5d7071e682f366870148320545406e
2017-10-11 15:23:45 -07:00
Treehugger Robot 81dd96c0da Merge "Add missing includes." 2017-10-11 22:17:38 +00:00
Mark Salyzyn 3bc8d4529e Merge "bootstat: test: inject ro.boot.bootreason values" 2017-10-11 20:52:46 +00:00
Mark Salyzyn 9a3870490a bootstat: test: inject ro.boot.bootreason values
Adding a set of automated engineering unit tests with a strict list of
prerequisites.  Not meant for "user" builds.  Must have a crafted
bootloader that does not set the boot reason.  Only works on platforms
where the bootloader either by accident or specifically does not set
the ro.boot.bootreason via kernel command line configuration
androidboot.bootreason=.  If the tests do not have the prerequisites,
the test will report success, but with protest.

These new tests should work on current Hikey and Hikey960 bootloaders
but could very well become obsolete if those platform bootloaders
start setting the boot reason.

We do not want a platform solution as it could allow a third party to
override the bootloader boot reason.

Test: system/core/bootstat/boot_reason_test.sh
Bug: 63736262
Change-Id: I1793184a8484b83e1d9077475bc65af9816dadf7
2017-10-11 13:48:33 -07:00
Mark Salyzyn bb52cbf35d Merge "bootstat: test: refine reported test durations" 2017-10-11 20:33:05 +00:00
Mark Salyzyn 444e3a9f74 Merge "bootstat: Add some reserved sys.boot.reason values to enumeration" 2017-10-11 20:32:00 +00:00
Dan Albert f0d3f6716a Add missing includes.
Test: mma
Bug: None
Merged-In: I8a3390d186aec73f55ae2be2c7b4b2deffed810f
Change-Id: I8a3390d186aec73f55ae2be2c7b4b2deffed810f
2017-10-11 13:31:43 -07:00
Treehugger Robot d2c66b31a0 Merge "console: Add setenv HOSTNAME console" 2017-10-11 20:22:48 +00:00
Dan Albert c38057a603 Add missing includes.
Test: mma
Bug: None
Change-Id: I5ee2d09eeac2b4e2056719498916cbdfb79725d2
2017-10-11 13:19:09 -07:00
James Hawkins b93357bdb2 Merge "bootstat: Special case logging for empty boot reason." 2017-10-11 19:48:49 +00:00
Dmitry Shmidt d0fb2510e2 console: Add setenv HOSTNAME console
Bug: 67678999
Test: Run serial console on Hikey

Change-Id: Ia5fa9c2af4771508d96545f6a8814a81d5ccee3c
Signed-off-by: Dmitry Shmidt <dimitrysh@google.com>
2017-10-11 11:20:02 -07:00
Mark Salyzyn 2450cb1a30 bootstat: test: refine reported test durations
Use actual test durations to refine future duration estimates.
Better estimates are cosmetic, but lend confidence to the test
results.

SideEffects: none
Test: system/core/bootstat/boot_reason_test.sh
Bug: 63736262
Change-Id: I49143b78a6dc6fb21838a3d6c70b7eb5a8b4cba5
2017-10-11 10:56:54 -07:00
Mark Salyzyn 243fa29804 bootstat: Add some reserved sys.boot.reason values to enumeration
Add cold,powerkey, warm,s3_wakeup and hard,hw_reset so that
sys.boot.reason values can also be enumerated.  Also add
some reserved speculative entries associated with forced
suspend to RAM and DISK; shutdown,suspend and shutdown,hibernate
respectively.

Test: system/core/bootstat/boot_reason_test.sh
Bug: 67636061
Change-Id: Ic43523748e6006aaca882f8eec7c1f0c08431bd8
2017-10-11 10:56:42 -07:00
Xiaolei Yu c39caafbbb libsparse: fix building on linux host.
memset is declared in <string.h>

Test: builds and works on host

Change-Id: I224a01c78ee1d0c2f8d5e86eef10c84c8960cbc0
2017-10-11 15:37:52 +08:00
Treehugger Robot 85b80dc18d Merge "fs_mgr: removing __BEGIN_DECLS and __END_DECLS" 2017-10-11 01:43:11 +00:00
James Hawkins 25f7122512 bootstat: Special case logging for empty boot reason.
Empty boot reason is mostly unexpected but may take up the bulk of
unknown reported boot reason values.

Bug: none
Test: none
Change-Id: I9978658c2b052d5cf5d28299861b0d1125ba9fc0
2017-10-10 16:37:05 -07:00