Commit graph

52806 commits

Author SHA1 Message Date
Tom Cherry
441054aa1e Remove old logger_entry_v* formats
logger_entry and logger_entry_v2 were used for the kernel logger,
which we have long since deprecated.  logger_entry_v3 is the same as
logger_entry_v4 without a uid field, so it is trivially removable,
especially since we're now always providing uids in log messages.

liblog and logd already get updated in sync with each other, so we
have no reason for backwards compatibility with their format.

Test: build, unit tests
Change-Id: I27c90609f28c8d826e5614fdb3fe59bde22b5042
2019-10-24 10:53:14 -07:00
Tom Cherry
896fb9e57a liblog: disable header_abi_checker
I'm about to make a bunch of changes that are safe for backwards
compatibility, but would otherwise flag the checker, so it's time to
temporarily disable it.

Test: CLs pass despite making header changes
Change-Id: Ibc2d4ae51fb8e6125b9117ccd92bf821db945e67
2019-10-24 10:52:25 -07:00
Treehugger Robot
2c7ae59ede Merge "libsnapshot: MapCowImage returns the COW device path" 2019-10-24 12:15:41 +00:00
David Anderson
376f04e047 Merge "avoid data overflow in low memory device" 2019-10-23 23:15:06 +00:00
Steven Moreland
5d9cdae3f3 Merge "host_init_verifier: use libhidlmetadata" 2019-10-23 23:07:30 +00:00
Treehugger Robot
581f8e2a5a Merge "deployagent: set sdk version." 2019-10-23 22:59:56 +00:00
Tom Cherry
9a3ebd2d54 Merge "Revert "liblog: remove mistakenly added symbols from vndk"" 2019-10-23 20:47:27 +00:00
Tom Cherry
0b482ad25b Merge "init: only provide control message results for devices launching > Q" 2019-10-23 19:52:07 +00:00
Tom Cherry
350164cc7c Revert "liblog: remove mistakenly added symbols from vndk"
This reverts commit 5f8162b086.

Reason for revert: Turns out they're being used.

Merged-In: Iad9010190c7a4140b69dc553df5debdd88dcf81a
Change-Id: Iad9010190c7a4140b69dc553df5debdd88dcf81a
2019-10-23 11:39:13 -07:00
Tom Cherry
cc4bf6538b Merge "liblog: remove mistakenly added symbols from vndk" 2019-10-23 15:14:25 +00:00
Tom Cherry
5310db82b0 init: only provide control message results for devices launching > Q
This is a behavior change and may have unintended consequences,
especially in Java, where failed property sets create exceptions.
Therefore, we only provide this new behavior to devices launching > Q.

Bug: 137070994
Test: build
Change-Id: If0b44aedc5c887ea6ea16dd3ec551ac2bf793cef
2019-10-23 08:09:56 -07:00
Elliott Hughes
986aaaaaa4 Merge "libziparchive: add trivial fuzzer." 2019-10-23 14:54:54 +00:00
JeiFeng Lee
ba117304ab avoid data overflow in low memory device
Bug: 142294642
Test: fastboot flash system system.img
Change-Id: Iec50817aaca5d31c194f0fdf409503829d14ca06
2019-10-23 13:20:41 +08:00
Yifan Hong
27de4e4a4a Merge "[REFACTOR] healthd: BatteryMonitor::update split into 3 funcs" 2019-10-22 22:47:39 +00:00
Elliott Hughes
f66460b92a libziparchive: add trivial fuzzer.
Didn't find anything when I ran it, but it did get me to fix the
const/non-const void* in the API.

Test: treehugger
Change-Id: If3849d974965e3e5ffcbdaf5e47921316d717410
2019-10-22 11:45:49 -07:00
Christopher Ferris
d76932ffa5 Merge "Fix handling of PT_GNU_EH_FRAME." 2019-10-22 17:26:59 +00:00
Tom Cherry
7867721e51 liblog: remove mistakenly added symbols from vndk
These functions and headers were all mistakenly added to the vndk.
They should not be used by vendors.

Test: these symbols do not appear in vendor libraries
Merged-In: I03919b437c2d9f0e573b7a6b40249ed12fe874b9
Change-Id: I03919b437c2d9f0e573b7a6b40249ed12fe874b9
2019-10-22 09:47:45 -07:00
Treehugger Robot
1e07245bf1 Merge "Liblogd log fuzzer" 2019-10-22 05:02:11 +00:00
Christopher Ferris
5838e53b97 Fix handling of PT_GNU_EH_FRAME.
The bias for the PT_GNU_EH_FRAME was using the paddr instead of vaddr.
This doesn't match the way the load bias is calculated, which always
use vaddr - offset, so change to use vaddr.

Found on an old x86 device that has a vdso that sets vaddr differently
from paddr.

Add a new offline test to catch this case and update the elf interface
unit tests.

Also, fix a small bug in the unwind_for_offline tool.

Bug: 142365899

Test: Unit tests pass.
Change-Id: I5f0bf062dd8ee45aa8553189ba493ec962e0b059
2019-10-21 19:11:22 -07:00
Max Spector
0c9d488374 Liblogd log fuzzer
Basic fuzzer for liblogd LogBuffer::log

Bug: 143107334
Test: Ran the fuzzer
Change-Id: Ifaeef1410655cf57c58b2b78484b832dfea6333a
2019-10-21 18:26:59 -07:00
Treehugger Robot
92155132e2 Merge "libsnapshot_test: Fix loading both the static and dynamic libcrypto libs" 2019-10-21 23:22:53 +00:00
Alessio Balsini
3f88b4e63c libsnapshot_test: Fix loading both the static and dynamic libcrypto libs
libsnapshot_test was depending both directly on libcrypto_static and
indirectly through liblp on libcrypto.  This was causing a failure at
runtime on the sanity check when loading the libcrypto library.
Dropped the dependency on libcrypto_static and switched to the dynamic
libcrypto to fix this violation.

Test: libsnapshot_test
Fixes: 143094706
Change-Id: Iba959e234348f7deb81893c9105a13628ce0eb6e
Signed-off-by: Tobias Thierer <tobiast@google.com>
Signed-off-by: Alessio Balsini <balsini@google.com>
2019-10-21 21:31:39 +00:00
Tom Cherry
d1a6d75d29 Merge "liblog: fixup log_id_t" 2019-10-21 19:36:12 +00:00
Treehugger Robot
f5b2927908 Merge "Fix fuzzer name and sizeof(array)" 2019-10-21 17:28:48 +00:00
Alessio Balsini
d0de1114a9 Fix fuzzer name and sizeof(array)
The fuzzer name "dm_table_fuzzer" was too generic. Looking forward to an
extension to host tests where each fuzzer name should be considered a
unique identifier, change the fuzzer name to, "dm_linear_table_fuzzer".

Fix also the syntax of sizeof(array) declaration.

Bug: none
Test: dm_linear_table_fuzzer
Change-Id: Iaa0ee9a0eb1352f0c5269b07198d0a34d8fb3254
Signed-off-by: Alessio Balsini <balsini@google.com>
2019-10-21 11:44:08 +00:00
Tom Cherry
5e81aa2cf5 liblog: fixup log_id_t
1) We don't need two copies of log_id_t
2) We don't need misleading sizeof_log_id_t or typeof_log_id_t macros
3) logd should use android_log_header_t explicitly for its recv buffer
   size
4) Following on from b/129272512, we're settling that returning
   LOG_ID_MAX is an acceptable return value from
   android_name_to_log_id().

Bug: 129272512
Test: build, liblog, logcat unit tests
Change-Id: I67fb964a4a0ae9cb6e1514ca110e47e00dfcfa9a
2019-10-18 09:58:08 -07:00
Maciej Żenczykowski
32e7325c44 Merge "better document ifc_{add,del}_address return code" 2019-10-18 06:15:30 +00:00
Maciej Żenczykowski
f0d101266f better document ifc_{add,del}_address return code
Test: N/A
Bug: 142764715
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Change-Id: I8ffa7985aa2ec81959d57188755e453f0551b872
2019-10-17 17:20:25 -07:00
Josh Gao
c9e09e69b9 deployagent: set sdk version.
Not specifying a platform version in a java binary will result in code
generation tools being built to create framework.jar, which currently
fails when building with BUILD_HOST_static=1.

Specify an SDK version to avoid this.

Bug: http://b/142536936
Test: m -j adb BUILD_HOST_static=1
Change-Id: Ifb9556c7c6cc43417c3f56137edee21f145f8b17
2019-10-17 16:20:26 -07:00
Treehugger Robot
ecc9b1bd7f Merge "debuggerd_client_test: massively increase timeouts." 2019-10-17 21:33:46 +00:00
David Anderson
c243e19936 Merge "Integrate libsnapshot with the boot control HAL." 2019-10-17 19:57:04 +00:00
Treehugger Robot
356951f2be Merge "fs_mgr: vts_core_liblp_test requires root" 2019-10-17 19:55:23 +00:00
Josh Gao
baea773324 Merge changes from topic "apex_remount"
* changes:
  adbd: replace remount_service with an exec of /system/bin/remount.
  Move remount to PRODUCT_PACKAGES_DEBUG.
2019-10-17 19:14:26 +00:00
Josh Gao
f10d4a15d2 debuggerd_client_test: massively increase timeouts.
debuggerd_client.race seems to have suddenly started to flake, for no
apparent reason. This doesn't seem to reproduce locally, so increase
the timeouts to rule out our test VMs being slow.

Bug: http://b/142571257
Test: treehugger
Change-Id: Ic54a78b8da36cb1163cec7e7976c73c3da628a30
2019-10-17 12:09:49 -07:00
Treehugger Robot
d8a72367e5 Merge "Utility class for COW size calculation" 2019-10-17 13:55:44 +00:00
Tom Cherry
5f8790f8ab Merge "liblog: remove checks for __GNUC__" 2019-10-17 13:42:40 +00:00
Treehugger Robot
047a7d21d9 Merge "Revert "Use com.android.vndk.current variant for vndk list"" 2019-10-17 11:50:47 +00:00
Yifan Hong
4fc16610df fs_mgr: vts_core_liblp_test requires root
Test: atest vts_core_liblp_test

Fixes: 141940321
Change-Id: I2d6e06f4e596cdb985ea67e383e38545d666833b
2019-10-16 18:26:40 -07:00
Tom Cherry
362e289c78 liblog: remove checks for __GNUC__
We already assume this in many other parts of the build.

Test: build
Change-Id: Ie685e83963eac942d0d176bb2394b5d3a5b86cac
2019-10-16 17:14:39 -07:00
Yifan Hong
b4383e144e Merge "liblp: MetadataBuilder::NewForUpdate takes always_keep_source_slot arg" 2019-10-17 00:10:32 +00:00
Jooyung Han
08f2376d70 Revert "Use com.android.vndk.current variant for vndk list"
This reverts commit 82f94d61cb.

Reason for revert: some targets are broken

Bug: 142773030
Change-Id: Ida59c52af3d2fd694855fcee60b5bb0d99c85f8d
2019-10-16 23:47:32 +00:00
Josh Gao
8d1d87e460 adbd: replace remount_service with an exec of /system/bin/remount.
Test: fs_mgr/tests/adb-remount-test.sh
Test: treehugger
Change-Id: Idd581c3927fd8a8bbdf70e90e8f928b7e98e032a
2019-10-16 16:29:10 -07:00
Treehugger Robot
2fd9d735ea Merge "adbd: allow port configuration on host." 2019-10-16 23:22:44 +00:00
David Anderson
dfe6d07a4b Integrate libsnapshot with the boot control HAL.
This patch translates UpdateState states into a MergeStatus from
IBootControl 1.1, and asks the HAL to store it. Unfortunately this patch
has to work around a few issues.

The first issue is that Soong doesn't allow including only the headers
from a HAL. The second issue is that entraining the headers requires
linking to libraries that would otherwise not be needed in init.

To address this, we now have three ways of linking to libsnapshot:
  1. libsnapshot - Has access to gsid and HALs.
  2. libsnapshot_nobinder - Has access to HALs, but not binder (for
                            recovery).
  3. libsnapshot_init - Does not use binder or HALs.

The HAL code is #ifdef'd behind LIBSNAPSHOT_USE_HAL and we make use of
forward declarations and dependency injection to minimize its spread.

Bug: 139154945
Test: libsnapshot_test gtest
Change-Id: I21ffd8a79a43d0589f2f71f346ac1b019584a183
2019-10-16 16:09:38 -07:00
Alessio Balsini
391086908c libsnapshot: MapCowImage returns the COW device path
When a device is not dm-mapped, the whole path of the newly generated
COW device is required.
This was causing some of the libsnapshot_test cases to fail.
Fix by making MapCowImage() optionally return the COW device path.

Fixes: 142800685
Test: libsnapshot_test
Change-Id: I9570b4254d47b2d8fc942053590a320dcb20f7d5
Signed-off-by: Alessio Balsini <balsini@google.com>
2019-10-16 21:01:58 +01:00
Tom Cherry
405e67b651 Merge "logd: always report the UID of a log message" 2019-10-16 17:51:19 +00:00
Christopher Ferris
f223e1e3c1 Merge "Add document of changes between Android versions." 2019-10-16 15:27:53 +00:00
Tom Cherry
64458c79cd logd: always report the UID of a log message
logd currently only reports the UID of a log message for 'privileged'
readers (those with a uid or gid of root, system, or log).  However,
UIDs are not particularly sensitive.  Much more importantly,
non-privileged readers can only see less messages from their own UID,
so this restriction is essentially a no-op, as those readers will
already know their own uid.

Test: liblog and logd unit tests
Change-Id: I9da7d15eb840ba3200128391e70d618eec79f988
2019-10-16 13:59:26 +00:00
Tom Cherry
443b5dfea7 Merge "liblog: remove client side permissions checking" 2019-10-16 13:57:41 +00:00
Tom Cherry
fa88eeb95e Merge "liblog: remove unneeded checks and includes from headers" 2019-10-16 13:51:42 +00:00