Commit graph

28713 commits

Author SHA1 Message Date
Wei Wang
449b59873f Merge "init.rc: make sure netd start after post-fs-data"
am: f58280e7dc

Change-Id: I8925325eec13607ae9a048091f178d52778b41ac
2017-03-09 23:32:35 +00:00
Treehugger Robot
f58280e7dc Merge "init.rc: make sure netd start after post-fs-data" 2017-03-09 23:29:24 +00:00
Josh Gao
4048633404 Merge changes from topic 'debuggerd_fallback'
am: 48a31877f0

Change-Id: I7a0721fc9cdce17975b5160ad65e6c61e12fcf87
2017-03-09 22:08:50 +00:00
Josh Gao
75c3c69c06 debuggerd_handler: implement missing fallback functionality.
am: e1aa0ca58a

Change-Id: I917d18f94b2231a451e0f3e7304477a2e124db4c
2017-03-09 22:08:41 +00:00
Josh Gao
48a31877f0 Merge changes from topic 'debuggerd_fallback'
* changes:
  libdebuggerd: add compatibility shim.
  debuggerd_handler: implement missing fallback functionality.
2017-03-09 22:03:31 +00:00
Wei Wang
bae9ba3402 init.rc: make sure netd start after post-fs-data
Current init doesn't order the triggeres it scaned, and there is no
guarantee that general event trigger exec first and then event+property
triggers.

This CL will make sure netd started after post-fs-data trigger is done.

Bug: 35110957
Test: marlin boots
Change-Id: I7bb55af4e00f336682388abfa8a06eac2136b7d4
2017-03-09 13:53:39 -08:00
Alex Klyubin
f7fd531a75 Merge "Remove hard-coded policy version from secilc step"
am: df2ad0b4ab

Change-Id: Id306db22e2bc02518389314ed377d424ce2fc22a
2017-03-09 21:07:21 +00:00
Treehugger Robot
df2ad0b4ab Merge "Remove hard-coded policy version from secilc step" 2017-03-09 21:03:44 +00:00
Josh Gao
9eb4eb1811 libdebuggerd: add compatibility shim.
Avoid breaking internal code when AOSP automerges to internal.

This will be reverted after fixing up the uses on the other end.

Bug: http://b/35858739
Test: treehugger
Change-Id: If1ee03d8d7c218d3ad9f451cfe9a9077753dda02
2017-03-09 12:13:16 -08:00
Josh Gao
e1aa0ca58a debuggerd_handler: implement missing fallback functionality.
Allow the fallback implementation to dump traces and create tombstones
in seccomped processes.

Bug: http://b/35858739
Test: debuggerd -b `pidof media.codec`; killall -ABRT media.codec
Change-Id: I381b283de39a66d8900f1c320d32497d6f2b4ec4
2017-03-09 11:26:05 -08:00
Alex Klyubin
a71dfec4c2 Remove hard-coded policy version from secilc step
This change makes init's SELinux policy compilation step target the
highest SELinux policy language version supported by the kernel.
Prior to this change the version was simply hard-coded in init.

P. S. clang-format (part of presubmit for this change) is being
counter-productive trying to format the section with secilc
parameters. The resulting layout is harder to read. This commit thus
disables clang-format for this section of code and formats the code
for improved readability.

Test: Remove precompiled policy, device boots up, no new denials.
      Added log statement to print out the policy version passed
      into secilc -- it printed 30, as expected.
Bug: 31363362

Change-Id: I151017b5211712861bafb662525e794a44026dd2
2017-03-09 11:11:23 -08:00
Josh Gao
9d13bc2160 Merge "adb: append the libwinpthread COPYING to adb's NOTICE."
am: c1b3c8ef26

Change-Id: I4de6f83ea394635710b4e89cc1818233b6605eca
2017-03-09 07:48:01 +00:00
Treehugger Robot
c1b3c8ef26 Merge "adb: append the libwinpthread COPYING to adb's NOTICE." 2017-03-09 07:43:56 +00:00
Wei Wang
1a65e43878 Merge "init.rc: start netd and zygote early for file based encryption devices"
am: 4bf2bc078f

Change-Id: I2fad834e5a2daa2823838caff0322b4b43fce47d
2017-03-09 06:17:56 +00:00
Treehugger Robot
4bf2bc078f Merge "init.rc: start netd and zygote early for file based encryption devices" 2017-03-09 06:12:33 +00:00
Bowgo Tsai
5f3e037e60 Merge "Add a PREUPLOAD.cfg file to run git-clang-format on every commit"
am: 59aea45254

Change-Id: Ibfb57f2d8f273c513e7f7fdef97676683a1c6ca9
2017-03-09 05:33:54 +00:00
Treehugger Robot
59aea45254 Merge "Add a PREUPLOAD.cfg file to run git-clang-format on every commit" 2017-03-09 05:30:19 +00:00
Josh Gao
d3bf1a8d7e adb: append the libwinpthread COPYING to adb's NOTICE.
We statically link libwinpthread into Windows binaries, but soong
currently can't specify notice files for toolchain_libraries. Add
libwinpthread's COPYING info directly to adb's as a hack.

Bug: http://b/36073965
Test: `make PRODUCT-sdk-win_sdk` + manual inspection of NOTICE.txt
Change-Id: I58d6be0ecf5626b67308f7e94128a2cd44dab161
2017-03-08 21:27:59 -08:00
Alex Klyubin
f9ac2fa7b2 Merge "Use precompiled sepolicy when available"
am: dda9cbb350

Change-Id: I801189104c263b21d2252d957af25149cfbef648
2017-03-08 23:13:01 +00:00
Treehugger Robot
dda9cbb350 Merge "Use precompiled sepolicy when available" 2017-03-08 23:09:08 +00:00
Wei Wang
7f32aa4d04 init.rc: start netd and zygote early for file based encryption devices
Bug: 35110957
Test: marlin boots
Change-Id: Ibe4c413e41fcf25a68b50d99ee66d9b70706a6a1
2017-03-08 14:48:53 -08:00
Wei Wang
0d9416ba2e Merge "init.rc: add a new zygote-start trigger"
am: 4e5e797d26

Change-Id: Ic8e028c55fcca904c49814d1a3849ff8088f6458
2017-03-08 22:23:26 +00:00
Treehugger Robot
4e5e797d26 Merge "init.rc: add a new zygote-start trigger" 2017-03-08 22:18:11 +00:00
Wei Wang
a2058036ed init.rc: add a new zygote-start trigger
Bug: 35110957
Test: marlin boots
Change-Id: I12b41588371486e79938df2f7a2152cda18530d1
2017-03-08 12:39:41 -08:00
Alex Klyubin
2d19aeb13a Use precompiled sepolicy when available
NOTE: This change affects only devices which use SELinux kernel policy
split over system and vendor directories/partitions.

Prior to this change, init compiled sepolicy from *.cil files on every
boot, thus slowing boot down by about 400 ms. This change enables init
to skip the step compilation and thus avoid spending the 400 ms. The
skipping occurs only if the device's vendor partition includes an
acceptable precompiled policy file. If no acceptable policy is found,
the compilation step takes place same as before.

Because such devices support updating system and vendor partitions
independently of each other, the vendor partition's precompiled policy
is only used if it was compiled against the system partition's policy.
The exact mechanism is that both partitions include a file containing
the SHA-256 digest of the system partition's policy
(plat_sepolicy.cil) and the precompiled policy is considered usable
only if the two digests are identical.

Test: Device with monolithic policy boots up just fine
Test: Device with split policy and with matching precompiled policy
      boots up just fine and getprop ro.boottime.init.selinux returns
      a number below 100 ms. No "Compiling SELinux policy" message in
      dmesg.
Test: Device with split policy and with non-matching precompiled
      policy boots up just fine and getpropr ro.boottime.init.selinux
      returns a number above 400 ms. There is a "Compiling SELinux
      policy" message in dmesg. The non-matching policy was obtained
      by adding an allow rule to system/sepolicy, building a new
      system image using make systemimage and then flashing it onto
      the device.
Bug: 31363362
Change-Id: Ic2e81a83051689b5cd5ef1299ba6aaa1b1df1bdc
2017-03-08 12:25:25 -08:00
Badhri Jagan Sridharan
a37bc179de Merge "adb: Do not signal gaget stack unless descriptors are written"
am: eab4c62e22

Change-Id: Ia04e413a6f3a0e3fcb1e8e52aa822accb808f1fb
2017-03-08 19:39:43 +00:00
Badhri Jagan Sridharan
eab4c62e22 Merge "adb: Do not signal gaget stack unless descriptors are written" 2017-03-08 19:33:10 +00:00
David Lin
9c23fcbcd9 Merge "init.rc: remove duplicated chown entry for timed_output"
am: e88882e16e

Change-Id: I2ba4ad3c1dd4ce0b4fd5f16d16b986d70b73985d
2017-03-08 18:44:39 +00:00
Treehugger Robot
e88882e16e Merge "init.rc: remove duplicated chown entry for timed_output" 2017-03-08 18:39:49 +00:00
Mark Salyzyn
af4e750023 Merge "liblog: add LOGGER_STDERR frontend"
am: 6471b85143

Change-Id: I5098977938e0daae2300ba00d4ac786d51ccf580
2017-03-08 17:08:02 +00:00
Mark Salyzyn
6471b85143 Merge "liblog: add LOGGER_STDERR frontend" 2017-03-08 17:03:44 +00:00
Mark Salyzyn
4d99c986d9 liblog: add LOGGER_STDERR frontend
Standalone, this logger provides no end-to-end capability.  Only
provides a writer, no reader transport.  All output goes, logcat-like,
into the stderr stream.  Output can be adjusted with environment
variables ANDROID_PRINTF_LOG and ANDROID_LOG_TAGS.

liblog_*.__android_log_bswrite_and_print___max print fails if a string
member is truncated with "Binary log entry conversion failed" and -1.
We expose the truncated content in the tests and in LOGGER_STDERR.

The purpose of this transport selection is for command-line tools,
providing a means to shunt the logs to be mixed in with the tool's
error stream.

Test: gTest liblog-unit-tests
Bug: 27405083
Change-Id: If344b6e3e67df2dc86ce317cfad8af8e857727b7
2017-03-08 07:17:31 -08:00
Mark Salyzyn
3f09ed635b Merge "liblogcat: free up log_device_t structures"
am: e1bfafd241

Change-Id: I93377527aae460aec9d02f13c868d7998d182693
2017-03-08 15:15:57 +00:00
Treehugger Robot
e1bfafd241 Merge "liblogcat: free up log_device_t structures" 2017-03-08 15:11:28 +00:00
Bowgo Tsai
1aeb8d2107 Add a PREUPLOAD.cfg file to run git-clang-format on every commit
The style file .clang-format is copied from adb/.clang-format.
Each sub folders still can have different style by adding their own
.clang-format because git-clang-format uses the style file located
in one of the parent directories of the *source file*.

Also see the following link for previous discussions:

  https://android-review.googlesource.com/#/c/340106

Bug: 36046320
Test: repo upload, checks pre-submit fails when the uploading commit
      doesn't meet the style

Change-Id: I94369af197da1ccce581bbd861c8737f6a197429
2017-03-08 16:51:26 +08:00
David Lin
489450abe3 init.rc: remove duplicated chown entry for timed_output
Test: build

Change-Id: Ib15be4188cdce270a15bd90304be0704d9e54cbf
Signed-off-by: David Lin <dtwlin@google.com>
2017-03-07 21:31:42 -08:00
Badhri Jagan Sridharan
43fd1a4ea7 adb: Do not signal gaget stack unless descriptors are written
While recovering from endpoint errors, the gadget stack was being
signalled even when desriptors were NOT being rewritten. Avoid this
as this might cause enumeration loops.

Bug: 36036550
Change-Id: Iff2b2fc8cded001ef3c77dc170dce3b96848970c
2017-03-07 19:20:54 -08:00
Mark Salyzyn
13e4735526 liblogcat: free up log_device_t structures
Was leaking log_device_t in command path.  Cleanup leak in command
path and add thorough clean up on destroy for insurance.

Start grouping related like-type variables in the context structure
for more effective layout.

Test: gTest logcat-unit-tests
Bug: 35326290
Change-Id: Ibfbddec2d0e1bce24b87b035d67726cac1395574
2017-03-07 14:23:43 -08:00
Keun-young Park
f3fcb883b2 Merge "collect fs stat for ext4"
am: 5811a434fc

Change-Id: I7dafd4b35ac3efcf59bb940fb582694144056f2b
2017-03-07 19:32:40 +00:00
Keun-young Park
5811a434fc Merge "collect fs stat for ext4" 2017-03-07 19:30:54 +00:00
Keun-young Park
3fbf94e19a collect fs stat for ext4
- This is to collect data to understand if e2fsck -f option
  can be dropped wholly based on information from fs.
- Ideally e2fsck should not fix fs if it was clean shutdown
  or if it is not enabling quota.
- The log is added to /dev/fscklogs/log and other system components
  can collect it later.

TODO: add mechanism to distinguish old vs new fs generation tool.

bug: 32246772
Test: reboot and check saved logs under different shutdown conditions (clean, non-clean)

Change-Id: Id00fad4c5f8ebbb9f9908164a1026e415df06721
2017-03-06 19:39:58 -08:00
Chenjie Luo
00c9fcdca9 Merge "Define _LOG as a weak symbol."
am: 6684ec8d97

Change-Id: Ibb3804ff53490abd2743ce8ba33c6833ac2a71ab
2017-03-07 02:52:53 +00:00
bohu
8e0c8c0dec Merge changes If9782396,If033c815
am: 5e148a58b8

Change-Id: I71a3305151dd8c9115f4922f13aea0fa90b82941
2017-03-07 02:52:33 +00:00
bohu
3f76473030 DO NOT MERGE ANYWHERE Qemu: make the qemu_pipe_open compatible with old apis
am: f7d64fd8e1  -s ours

Change-Id: Ieb68057b7563c9a14a3046b27324303b325095a8
2017-03-07 02:52:30 +00:00
Chenjie Luo
6684ec8d97 Merge "Define _LOG as a weak symbol." 2017-03-07 02:08:36 +00:00
Josh Gao
c0a62dda08 Merge changes Ib69a206f,If57cc175
am: 56e89ade33

Change-Id: Id6d1428be5519ab3ad4694cc4dea9ea96ff62d2e
2017-03-07 01:55:11 +00:00
Treehugger Robot
5e148a58b8 Merge changes If9782396,If033c815
* changes:
  DO NOT MERGE ANYWHERE Qemu: make the qemu_pipe_open compatible with old apis
  DO NOT MERGE ANYWHERE Emulator: Enhance qemu_pipe.h to handle partial read and write
2017-03-07 00:59:10 +00:00
Chenjie Luo
97258aad8a Define _LOG as a weak symbol.
So _LOG could be overridden by customized logging
implementations in non-Android systems.

Bug: 35919515
Test: Test on device
Change-Id: I0885c15353c0b1bf66f6f156e7f502f326b85d57
2017-03-06 15:04:32 -08:00
Treehugger Robot
56e89ade33 Merge changes Ib69a206f,If57cc175
* changes:
  tombstoned: turn off signal handlers.
  tombstoned: create tombstones with 0640 permissions.
2017-03-06 22:26:17 +00:00
Josh Gao
55f79a5953 tombstoned: turn off signal handlers.
Don't try to connect to ourselves in a signal handler (e.g. if someone
does `killall -ABRT tombstoned`).

Test: killall -ABRT tombstoned
Change-Id: Ib69a206f741acb523c9f2883d474c940b6ebfab2
2017-03-06 12:30:25 -08:00