Commit graph

62770 commits

Author SHA1 Message Date
Jooyung Han
529ace17b6 Merge "fs_config: add bin paths of flattened apexes" 2020-09-21 15:47:59 +00:00
Tom Cherry
67e08784ed Merge "Use libcutils_headers for android_filesystem_config.h" 2020-09-21 15:29:41 +00:00
Jooyung Han
a70cea57a9 fs_config: add bin paths of flattened apexes
Added missing partitions (/product and /vendor).

APEXes can be put in /system, /system_ext, /product, and /vendor.
Binaries within "flattened" apexes should be marked as executable.

Bug: 167383491
Bug: 169025459
Test: OVERRIDE_TARGET_FLATTEN_APEX=true m vendorimage with a vendor apex
      simg2img $OUT/vendor.img vendor.img
      debugfs -R 'ls -l /vendor/apex/com.android.foo/bin' vendor.img
      => check if binaries are executable
Change-Id: I67284166d70c98a2a184b47e7052ade8b9039df9
2020-09-21 19:50:43 +09:00
Jooyung Han
62ccfa0c61 Merge "ueventd: scans /apex/*/firmware for firmwares" 2020-09-19 22:47:26 +00:00
Jooyung Han
21cad321db ueventd: scans /apex/*/firmware for firmwares
In addition to "firmware_directories", ueventd scans /apex/*/firmware/
directory as well to find firmware files.

Bug: 167942098
Test: loading firmware from vibrator apex successfully.
      (sunfish)
Change-Id: I90fc8f9ad843a08b1ca98a2be1b5d22c0c5954a3
2020-09-19 08:07:35 +09:00
Josh Gao
596f3b5384 Merge "adbd: Fix check against valid payload size" 2020-09-18 23:01:18 +00:00
Tom Cherry
a5edc0fbbc Use libcutils_headers for android_filesystem_config.h
android_filesystem_config.h is found since system/core/include is on
the include path for all projects and contains a symlink to the real
android_filesystem_config.h.  This is fragile and the below bug seeks
to remove this symlink and have users correctly depend on
libcutils_headers.

Bug: 165825252
Test: build
Change-Id: I1aad6a2e8fbe87635e97b0ac1be3414403353382
2020-09-18 22:48:42 +00:00
Peter Collingbourne
43ebae3e5d Merge "Dump the per-thread TAGGED_ADDR_CTRL value if available." 2020-09-18 22:00:53 +00:00
Mayank Rana
71a33cfa67 adbd: Fix check against valid payload size
block->payload and its size are not valid when it is used to check
against bytes_left due to std::move() performed on its just prior
to the check. Hence check will always fail to detect the case where
received data is more than expected. To detect this condition and
allow error handling with std::move(), remove extra payload variable
and directly use block->payload.

Bug: http://b/168917244
Change-Id: I992bbba9d9a9861a195834f69d62e69b90658210
2020-09-18 19:26:45 +00:00
Bill Yi
691a80ca09 Merge "Merge mainline-release 6664920 to master - DO NOT MERGE" 2020-09-18 18:47:48 +00:00
Christopher Ferris
36991d8e26 Merge "Fix x86_64 check for signal handler." 2020-09-18 18:02:36 +00:00
Tom Cherry
54ac487031 Merge "Add sdk_version: "minimum" to liblog_headers" 2020-09-18 15:28:25 +00:00
Bill Yi
34ecedbcc8 Merge mainline-release 6664920 to master - DO NOT MERGE
Merged-In: Ib2a6c8b5cc127d4aab61a454f47f3cce410d674e
Change-Id: Ief5996d70b59986c15a1b8056c678a6ef35a72d3
2020-09-17 21:57:28 -07:00
Tom Cherry
b80d98dcf7 Add sdk_version: "minimum" to liblog_headers
There are libraries built with the NDK but bundled with the platform
that were otherwise directly including the header path.  It's better
for them to include liblog_headers instead.

Test: build
Change-Id: Icca3684ba5b2539789d30de9df840da4ade0dc67
2020-09-17 14:32:48 -07:00
Christopher Ferris
a293170a2c Fix x86_64 check for signal handler.
The check for a signal handler was checking for the instruction after
the syscall. On cuttlefish 64 bit, the instruction was not a nop, so
the check failed, and the signal handler was not working. Only check
the instructions up to the syscall instead.

Bug: 168806886

Test: Ran on x86_64.
Change-Id: I605ed22248748f525939e55d734caa5b08c80bb2
2020-09-17 14:19:54 -07:00
Treehugger Robot
0407302aa8 Merge "Remove sysutils symlink from system/core/include." 2020-09-17 19:49:01 +00:00
David Anderson
975ea3217e Merge changes from topic "vab-brotli"
* changes:
  libsnapshot: Add an append mode to CowWriter.
  libsnapshot: Add support for brotli compression.
2020-09-17 19:32:23 +00:00
Yifan Hong
4fd78ec4b3 Merge changes from topic "revert-1413808-modules_partition-UXSIXCGPHZ"
* changes:
  Revert "rootdir: Add modules directory"
  Revert "fastboot: add modules partition"
2020-09-16 22:45:54 +00:00
Tom Cherry
73b1ac878b Merge "Remove include/private/android_logger.h" 2020-09-16 22:07:02 +00:00
Tom Cherry
46ec1a561d Merge changes I150dc5fe,I72d327c2,I6c5a97dc
* changes:
  Remove include/private/android_filesystem_capability.h
  Remove include/private/canned_fs_config.h
  Remove include/private/fs_config.h
2020-09-16 20:38:33 +00:00
Tom Cherry
3d8b739f94 Remove include/private/android_logger.h
Users should depend on liblog or liblog_headers for this include.

Test: treehugger
Change-Id: I10dca8638082b2231e2c0713644f103c4c7e9b3f
2020-09-16 11:32:47 -07:00
Akilesh Kailash
840d7b2aa8 Merge "Support of multiple device partitions by dm-user driver" 2020-09-16 18:02:56 +00:00
Tom Cherry
7eb9580a29 Remove include/private/android_filesystem_capability.h
android_filesystem_capability.h should be included as part of
libcutils, not as a global include.  It looks like the few users of
this file already do this correctly, so it's time to remove the
symlink.

Test: treehugger
Change-Id: I150dc5fee24bef3518b1f26728ef2bec669ee63a
2020-09-16 10:43:03 -07:00
Tom Cherry
61ebd66137 Remove include/private/canned_fs_config.h
canned_fs_config.h should be included as part of libcutils, not as a
global include.  It looks like the few users of this file already do
this correctly, so it's time to remove the symlink.

Test: treehugger
Change-Id: I72d327c2f1f374a1fa9e22b5ee1cceb0311a6818
2020-09-16 10:23:43 -07:00
Tom Cherry
9c2005fc27 Remove include/private/fs_config.h
This file is empty and should have no users including it.

Test: treehugger
Change-Id: I6c5a97dc42456d51c89762c93c6a744a69780843
2020-09-16 10:20:46 -07:00
Elliott Hughes
ed14908226 Merge "fastboot: switch to ZipEntry64." 2020-09-16 16:41:53 +00:00
Josh Gao
190921ed5c Merge "ADB internals documentation" 2020-09-16 05:54:40 +00:00
Fabien Sanglard
59c0640fb0 ADB internals documentation
Document the internals of adb pipeline. In particular the fdevent,
smart socket, and transport flow.

Bug: NA
Test: NA
Change-Id: Ia8fd8a6da843b8e91ca3005545f33bd0a82cc0c3
2020-09-15 22:50:59 -07:00
Peter Collingbourne
864f15dd6d Dump the per-thread TAGGED_ADDR_CTRL value if available.
This value indicates whether memory tagging is enabled on a thread,
the mode (sync or async) and the set of excluded tags. This information
can sometimes be important for understanding an MTE related crash,
so include it in the per-thread tombstone output.

Bug: 135772972
Change-Id: I25a16e10ac7fbb2b1ab2a961a5279f787039000b
2020-09-15 21:32:36 -07:00
Akilesh Kailash
516ded7320 Support of multiple device partitions by dm-user driver
Add basic support for daemon creation and handle signals

Test: Add test case to test system and product COW partitions
Bug: 162790322

Signed-off-by: Akilesh Kailash <akailash@google.com>
Change-Id: Icf8dbe49d2237cec6f7dbcdd84256eb6c5afa1cd
2020-09-16 00:35:42 +00:00
Akilesh Kailash
9e5118326b Merge "Add "dmctl uuid" command" 2020-09-15 23:58:52 +00:00
David Anderson
a889c87b0f libsnapshot: Add an append mode to CowWriter.
When in append mode, CowWriter will re-open the existing COW and resume
writing at the end of the old data position. All existing operations
will be reimported and buffered in memory.

The size calculation has been simplified to make this work. We now
advance ops_offset and no longer track the number of bytes written.

Additionally, a "header_size" field has been added to the header. This
was missing from the original format and is useful for introducing
forward compatibility later.

Finally, Finalize has been renamed to Flush. It's still mandatory, but
it can be called multiple times to continue appending data without
reopening.

Bug: 168554689
Test: cow_api_test gtest
Change-Id: I637e99ae08a4db5b273c06318e6db523ea8ec7c5
2020-09-15 16:15:41 -07:00
David Anderson
a652877bd6 libsnapshot: Add support for brotli compression.
Bug: 162274240
Test: cow_api_test
Change-Id: I0b0ceec3c3041a6aea4b1e6c4d01ed0a8860d7e8
2020-09-15 16:15:33 -07:00
Elliott Hughes
ebd07cc5d0 Merge "adb: switch to ZipEntry64." 2020-09-15 22:59:41 +00:00
Elliott Hughes
0016ffc516 adb: switch to ZipEntry64.
Test: treehugger
Change-Id: I1eba8c641912e46ed243deddd19f367ae40a5d46
2020-09-15 14:31:08 -07:00
Elliott Hughes
b407414fd0 fastboot: switch to ZipEntry64.
Test: treehugger
Change-Id: I17a023f113590e469f69174f7004c4579255c6ed
2020-09-15 14:26:17 -07:00
Yifan Hong
d50c7374cc Revert "rootdir: Add modules directory"
Revert submission 1413808-modules_partition

Reason for revert: modules partition no longer needed
Reverted Changes:
Iceafebd85:Add modules partition
I2fa96199a:rootdir: Add modules directory
Ie397b9ec6:Add modules partition.
I4200d0cf5:fastboot: add modules partition

Bug: 163543381

Change-Id: Ic9a94892c3403675eeac694d9ca0af5654f1a5c8
2020-09-15 20:07:03 +00:00
Yifan Hong
0d4a6887fb Revert "fastboot: add modules partition"
Revert submission 1413808-modules_partition

Reason for revert: modules partition no longer needed
Reverted Changes:
Iceafebd85:Add modules partition
I2fa96199a:rootdir: Add modules directory
Ie397b9ec6:Add modules partition.
I4200d0cf5:fastboot: add modules partition

Bug: 163543381

Change-Id: I17dc2da5a0901797c1bc1905274e7eb02e80fd83
2020-09-15 19:08:57 +00:00
Palmer Dabbelt
7dd8fe8e70 Add "dmctl uuid" command
This makes looking up device UUIDs a bit easier, as rather than depending on
the device mapper's sysfs layout we can depend on dmctl.  There's some
associated libdm plumbing, but the UUID was already pretty much availiable.

Test: I just ran this by hand.
Signed-off-by: Palmer Dabbelt <palmerdabbelt@google.com>
Change-Id: I7028eec6ab04601308047b67057e51a0ff44c0a7
2020-09-15 18:39:39 +00:00
Treehugger Robot
fd19ef40e8 Merge "Freeze com.android.sysprop.init API" 2020-09-15 02:02:25 +00:00
Treehugger Robot
011c4df302 Merge "Skip android11-tests-dev." 2020-09-15 01:54:17 +00:00
Jooyung Han
cb4704f3fe Merge "init: "init subcontext" in default mount namespace" 2020-09-15 01:18:03 +00:00
Xin Li
c6a5bb31c7 Skip android11-tests-dev.
Bug: 168333982
Change-Id: Ib113f6d9296bf3ceb1f941ff441a4f5669a777f1
2020-09-14 17:21:32 -07:00
Treehugger Robot
7259edacb3 Merge "libcutils must check /sys/kernel/tracing for tracefs first" 2020-09-14 21:46:36 +00:00
Hridya Valsaraju
355ff8c7c1 libcutils must check /sys/kernel/tracing for tracefs first
Currently it falls back to /sys/kernel/tracing if debugfs is not found.
/sys/kernel/tracing must be checked first since debugfs is not allowed
to be mounted in user builds starting with Android R launching devices.

Test: manual
Change-Id: I2fb5ec91bbf7d5304a1a6efcb06530969485e78f
2020-09-14 20:04:43 +00:00
Treehugger Robot
c72df4e2a6 Merge "Setup ueventd to support DMA-BUF heaps" 2020-09-14 19:56:06 +00:00
Arve Hjønnevåg
5ec14a7fb2 Merge "trusty: keymaster: Add set_attestation_key" 2020-09-14 18:32:13 +00:00
Jooyung Han
7bfe477b3d init: "init subcontext" in default mount namespace
"init subcontext" is responsible to handle a few commands in vendor
context. To support Vendor APEX, "init subcontext" is now started in
"default" mount namespace so that those commands can access /apex/*.

For example, insmod should see the contents of /apex to install kernel
modules in apexes.

Bug: 162701747
Test: adb shell ps -ef | grep init
      => check pid of <init subcontext>
      adb shell readlink /proc/<pid: init>/ns/mnt
      adb shell readlink /proc/<pid: init subcontext>/ns/mnt
      => check if these are equal
Change-Id: Icd5e862e52d78635e83824b267b6d32d8f3e9eea
2020-09-14 17:40:45 +09:00
Inseob Kim
2a8c714145 Freeze com.android.sysprop.init API
Bug: 145259948
Test: m com.android.sysprop.init-check-api
Change-Id: I5909c16390c35b5e5adf4c82eed191cc9ae82014
2020-09-14 13:51:27 +09:00
Hridya Valsaraju
72a0f10f51 Setup ueventd to support DMA-BUF heaps
Test: tested on cuttelfish with DMA-BUF heaps enabled.
Bug: 168333162
Change-Id: I2e7ed71d329edbb77319ca3cfbc4f0bf6be8fd98
2020-09-11 14:42:31 -07:00