Commit Graph

38037 Commits

Author SHA1 Message Date
Elliott Hughes 1412f5ffe3 Remove dead dlmalloc stubs.
Used to be used by ART, but long gone.

Bug: N/A
Test: ran tests
Change-Id: Id231d97b2b797562619e6fd90536b17dbe39f71e
2017-11-10 16:24:18 -08:00
Sandeep Patil 25f1631aa7 DO NOT MERGE ANYWHERE Add comments and code about ro.boot.slot back
Taimen bootloader passes androidboot.slot for now.
This reverts commit 211a4a5d5a.

Bug: 68710251
Test: taimen successfully mounts partition in first stage
Change-Id: I046afc99120e7ec9ef4b8ea7a852eb70e7231ea9
Signed-off-by: Sandeep Patil <sspatil@google.com>
2017-11-10 16:20:27 -08:00
Elliott Hughes d2ce2f4f45 Merge "Move libcutils source to C++." 2017-11-11 00:18:29 +00:00
Yifan Hong 9dbbfdc1a5 Merge "libvndksupport: do not use functions from android/dlext.h"
am: 865f9c2f0a

Change-Id: Ibe43d9ac637cf9021e87211b84e9ed5a0f93ab36
2017-11-10 23:40:52 +00:00
Treehugger Robot 865f9c2f0a Merge "libvndksupport: do not use functions from android/dlext.h" 2017-11-10 23:34:08 +00:00
Tianjie Xu 5d86509d19 Merge "Create a new directory on boot for update_engine logs"
am: 78d882bb5f

Change-Id: I7685ae024fa7fcc49b4fcb6dd8b4f5f753cff239
2017-11-10 22:12:03 +00:00
Tianjie Xu 78d882bb5f Merge "Create a new directory on boot for update_engine logs" 2017-11-10 22:06:53 +00:00
Yifan Hong 1ccdb7d92a libvndksupport: do not use functions from android/dlext.h
... if they are not available. Use weak symbols and do not call the
following functions when they are not defined:

* android_dlopen_ext
* android_get_exported_namespace
Test: links
Test: boots

Change-Id: I653548bac61a0eba001f72bab969b5b858bd1553
2017-11-10 13:19:37 -08:00
Elliott Hughes 8e9aeb9053 Move libcutils source to C++.
Just the minimial changes to get this to actually build, because otherwise
we always bog down trying to rewrite everything (when the real answer
is usually "stop using libcutils, it's awful").

This doesn't move a handful of files: two are basically just BSD libc
source, a couple have outstanding code reviews, and one can be deleted
(but I'll do that in a separate change).

I'm also skipping the presubmit hooks because otherwise clang-format
wants to reformat everything. I'll follow up with that...

Bug: N/A
Test: builds
Change-Id: I06403f465b67c8e493bad466dd76b1151eed5993
2017-11-10 13:18:10 -08:00
Chenbo Feng 45eca0a011 Merge changes from topic "qtaguidReplace"
am: 6707ef139d

Change-Id: I2d55815030878d871d585e956f4a82623e64b12a
2017-11-10 18:39:30 +00:00
Treehugger Robot 6707ef139d Merge changes from topic "qtaguidReplace"
* changes:
  Redirect qtaguid native call to netd fwmark client
  Move qtaguid API out of libcutils
2017-11-10 18:34:36 +00:00
Steven Moreland 4e641e3b6a PRODUCT_TREBLE_LINKER_NAMESPACES for ld.config.txt
PRODUCT_FULL_TREBLE is being deprecated in favor
of smaller flags. Use the appropriate one instead.

Bug: 62019611
Test: manual
Change-Id: Id5d127c29f908cd3011031b3b698ddec3dcba9c1
2017-11-10 10:25:45 -08:00
Elliott Hughes 23af112314 fastboot: show how long extraction takes.
Before:
  extracting android-info.txt (0 MB)...
  extracting boot.img (29 MB)...
  target reported max download size of 536870912 bytes
  archive does not contain 'boot.sig'
  archive does not contain 'boot_other.img'
  archive does not contain 'dtbo.img'
  archive does not contain 'dt.img'
  archive does not contain 'recovery.img'
  extracting system.img (1928 MB)...
  archive does not contain 'system.sig'
  extracting system_other.img (574 MB)...
  archive does not contain 'system.sig'
  archive does not contain 'vbmeta.img'

After:
  extracting android-info.txt (0 MB) to RAM...
  extracting boot.img (29 MB) to disk... took 0.232s
  target reported max download size of 536870912 bytes
  archive does not contain 'boot.sig'
  archive does not contain 'boot_other.img'
  archive does not contain 'dtbo.img'
  archive does not contain 'dt.img'
  archive does not contain 'recovery.img'
  extracting system.img (1928 MB) to disk... took 10.122s
  archive does not contain 'system.sig'
  extracting system_other.img (574 MB) to disk... took 3.424s
  archive does not contain 'system.sig'
  archive does not contain 'vbmeta.img'

Bug: http://b/69128980
Test: ran manually
Change-Id: Ib190d1cc56ad9da06a4f9a9e822f7dad4a9a53b7
2017-11-10 08:43:16 -08:00
Bowgo Tsai ec19cf6306 first stage mount: abort when failed to parse fstab in device-tree
The client of FirstStageMount class should check the existence of fstab
in device-tree prior to using it. So raising a FATAL error inside
FirstStageMount when failed to parsing the fstab, in order to expose
more accurate error messages.

Also fixing a comment in fs_mgr, where it might happen in either
non-A/B or A/B.

Bug: 69102431
Test: boot sailfish
Change-Id: Ifb525beaa3423b118644778bfe0f84bff9465303
2017-11-10 12:53:46 +08:00
Justin Yun fb47bcc4c8 Merge changes from topic "libvndksupport_cp"
am: c021b75cfd

Change-Id: Ieacf06d5bc67aae7093f8a805bdf47f305a4b08f
2017-11-10 03:29:00 +00:00
Treehugger Robot c021b75cfd Merge changes from topic "libvndksupport_cp"
* changes:
  Make libvndksupport look for default namespace as well.
  libvndksupport: Change log level and message.
2017-11-10 03:23:02 +00:00
Justin Yun 090b593a8d Make libvndksupport look for default namespace as well.
In vendor process, libvndksupport must look for "default" namespace,
instead of "sphal" namespace to open hal libraries.

Bug: 63411330
Test: Boot the device.
Change-Id: I26208b6f47708f83e0679fd72ca7471ade84fff9
Merged-In: I26208b6f47708f83e0679fd72ca7471ade84fff9
2017-11-09 18:07:47 -08:00
Justin Yun a34bd0561d libvndksupport: Change log level and message.
If no 'sphal' namespace exist, the sphal library may be found in
current namespace.
Change the log level and message to note this.

Bug: 64162324
Test: Check log message for vndksupport tag.
Change-Id: I5ed6ba1e48f99e7d11d80a465177ac9f3a7fbd97
Merged-In: I5ed6ba1e48f99e7d11d80a465177ac9f3a7fbd97
2017-11-09 18:07:41 -08:00
Chenbo Feng baede73bd9 Redirect qtaguid native call to netd fwmark client
In order to replace qtaguid module with new eBPF network monitoring
module. We firstly move the current qtaguid userspace implementation
into netd and hide the detail from other processes. The current API will
talk to netd fwmark client to pass down the qtaguid related request from
high level framework and netd will use the proper method to complete the
request.

Test: Current TrafficStats CTS tests should not fail.
Bug: 30950746
Change-Id: Ie90c28f3594ab2877746b2372a1b6944768bfb18
2017-11-09 18:02:22 -08:00
Tianjie Xu 74fa3cab4e Create a new directory on boot for update_engine logs
Partners require to access update_engine's logs on the file system with
non-root permission.

Bug: 65568605
Test: directory created with the correct permission on boot
Change-Id: I1c1fb4acb8b0f2e7352ffa9e7d05a864940b5986
2017-11-09 12:11:28 -08:00
Josh Gao ffd7695147 Merge "Move GetDeviceTest from adb's test_device.py to adb package."
am: 93e5cd85d1

Change-Id: I171474f876d1043bd507305a597c4572ad3dd52d
2017-11-09 01:04:11 +00:00
Treehugger Robot 93e5cd85d1 Merge "Move GetDeviceTest from adb's test_device.py to adb package." 2017-11-09 00:57:32 +00:00
Chenbo Feng 5b11831aa1 Move qtaguid API out of libcutils
The qtaguid kernel module will be deprecated on devices running 4.9
kernel or above and we need to support both old and new module in
userspace. Netd is responsible for choosing which kernel module to use
and all the current qtaguid native implementation need to be hided
behind it. So the current qtaguid native API implementation will be
moved to a isolate library under system/core and only netd can access to
it. The libcutils qtaguid API will become a wrapper to send request to
netd module. This modification will make sure the apps that currently
using this native API will not be broken.

Bug: 30950746
Test: All cts and vts test related should not fail.
Change-Id: I9de98a25ed5dc71bbf520ee0aadd16d59025699a
2017-11-08 16:28:43 -08:00
Josh Gao 85d4789719 Move GetDeviceTest from adb's test_device.py to adb package.
This test actually belongs with the adb python wrapper, since it's not
affected by changes to adb itself.

Bug: http://b/64260633
Test: python test_device.py
Change-Id: I58e5dff760f35923f8dbbdc7de6ffd75254880dc
2017-11-08 14:39:06 -08:00
Christopher Ferris 5ead5f7df9 Merge "Fix another nullptr dereference."
am: 331d8e9b1a

Change-Id: If3993e80f5c83bfecb332a8d37997b9a279a5e53
2017-11-08 21:53:11 +00:00
Christopher Ferris 331d8e9b1a Merge "Fix another nullptr dereference." 2017-11-08 21:49:24 +00:00
Christopher Ferris d96cbae4d4 Fix another nullptr dereference.
In this case, if the .eh_frame_hdr doesn't exist, we would crash.

Bug: 68813077

Test: Pass new unit tests, verified that without the fix, the unit test
Test: would crash.
Change-Id: I4f1365a76fe5c2fb69fa106a1ef15889c14e7611
2017-11-08 11:04:48 -08:00
Mark Salyzyn ec193f26eb Merge "Buffer overrun in __android_log_is_loggable() fix"
am: 35fc00124b

Change-Id: I07d351ef9a787782b303e7b5646f5ded55e093d3
2017-11-08 16:11:19 +00:00
Mark Salyzyn 35fc00124b Merge "Buffer overrun in __android_log_is_loggable() fix" 2017-11-08 16:06:38 +00:00
Christopher Ferris fa9d130401 Merge "Add support for only a .eh_frame."
am: 58fb262613

Change-Id: Ia7a08d419e86037765396de32e4810f4cdae8202
2017-11-08 15:35:18 +00:00
Christopher Ferris 58fb262613 Merge "Add support for only a .eh_frame." 2017-11-08 15:31:07 +00:00
Andrew Chant 3af9e40c66 usblib: fix race & delay waiting for perms on open
in usb_device_open, if permission is denied for a USB
device node, the current code retries read-only, then sleeps
for a second before retrying.

If the permission was changed to +rw between the two file opens,
the device could be inadvertently opened read-only.

Also, change the polling interval to 100ms.  1s is a long wait
for a function on the critical path of a user interaction.

Bug: 68337205
Bug: 68782236

Test: with debug messages enabled, connected & disconnected
a USB audio headset.  Saw the writeable file descriptor
returned.

Change-Id: I06048cc2c09bf6ed1abada5d12b5559be768fbaf
2017-11-07 18:15:49 -08:00
Luis Hector Chavez a111a5b56c Merge changes from topic "uevent"
am: 28e09852bf

Change-Id: Ibd9e6abb00d64dcc0c8831c6326a98f942b12d48
2017-11-08 01:46:32 +00:00
Treehugger Robot 28e09852bf Merge changes from topic "uevent"
* changes:
  libcutils: Work around the lack of __mulodi4
  libcutils: Make uevent_kernel_* namespace-aware
2017-11-08 01:39:35 +00:00
Josh Gao fe7b4a5cf9 Merge "crash_dump: don't inherit environment from parent."
am: dbef1eeb45

Change-Id: I76fd7f69d525c7d80922a9be42e10a5471ed628f
2017-11-08 01:10:38 +00:00
Treehugger Robot dbef1eeb45 Merge "crash_dump: don't inherit environment from parent." 2017-11-08 00:44:47 +00:00
Christopher Ferris c9dee84d81 Add support for only a .eh_frame.
Static executables only have a .eh_frame section and no .eh_frame_hdr
section. Add support for this by rearranging the class hierarchy and
creating a DwarfEhFrameWithHdr class and a DwarfEhFrame class to handle
the different cases.

Add new unit tests for DwarfEhFrame and for the new functionality.

Bug: 68820189

Test: Passes new unit tests, unwinds static executables.
Change-Id: I63d7cb8c52a686e96579a2266e18c0d06bbb6e63
2017-11-07 13:22:39 -08:00
Miodrag Dinic 50c1ad48cd Merge "MIPS[64]: codeflinger: Fix build due to unused variable warnings"
am: 1e0b9672de

Change-Id: Iaa3c0c2a7dc56a55a0544e43f6ff963af4c05d6d
2017-11-07 20:39:22 +00:00
Christopher Ferris 209841d764 Merge "Fix nullptr dereference."
am: 8e1ac14f40

Change-Id: I87d9a8c5fd09a717a119273c8a3f8d3a463e8e6c
2017-11-07 20:38:47 +00:00
Treehugger Robot 1e0b9672de Merge "MIPS[64]: codeflinger: Fix build due to unused variable warnings" 2017-11-07 20:34:34 +00:00
Christopher Ferris 8e1ac14f40 Merge "Fix nullptr dereference." 2017-11-07 20:30:42 +00:00
Elliott Hughes e8873379bc Merge "Don't include the build number in the adbd binary."
am: d9984743e6

Change-Id: Ifae8f8f4bd633aca5bb2096e0447b10c2accf1f5
2017-11-07 20:13:52 +00:00
Treehugger Robot d9984743e6 Merge "Don't include the build number in the adbd binary." 2017-11-07 20:04:40 +00:00
Elliott Hughes 6b970212fd Don't include the build number in the adbd binary.
We want repeatable builds for minimal OTAs.

(cherrypick of 2e93eda69cf20d9c04d56ea6bf1e2ea62ad62eb4.)

Bug: http://b/64634017
Bug: 64709603 (presubmit balking at the line above)
Test: repeated builds after `touch daemon/main.cpp` keep same md5sum
Change-Id: Iedeb44377ea45bbf20e2212760802198a57dc14a
2017-11-07 10:57:36 -08:00
Paul Elliott c6ed8f39d3 Buffer overrun in __android_log_is_loggable() fix
Fix for buffer overrun when a tag that is too big is sent to logd.
Buffer supplied is precisely the right size for max message length
however strlen will be run on the buffer, so need to ensure null
terminator, otherwise any strlen will go off the end of the buffer.
Also converted LogBuffer::Log() over to use the safer strnlen in the
case where it is measuring the buffer (and converted over to using
__android_log_is_loggable_len())

Signed-off-by: Paul Elliott <paul.elliott@arm.com>
Test: liblog.android_log_buf_print__maxtag
Change-Id: I3cb8b25af55943fb0f4658657560eb2300f52961
2017-11-07 09:57:26 -08:00
Miodrag Dinic cc599273b4 MIPS[64]: codeflinger: Fix build due to unused variable warnings
Change-Id: Ie31d44ee74a218c83774df855be496ca862af8c5
Signed-off-by: Miodrag Dinic <miodrag.dinic@mips.com>
2017-11-06 16:38:49 +01:00
Christopher Ferris 13b86658b9 Fix nullptr dereference.
If an entry is found in .eh_frame_hdr, but it's not properly in .eh_frame,
then the code would crash. The assumption that the header always points
to valid fde data is not guaranteed.

Bug: 68813077

Test: Passes new unit test that crashed before the change.
Change-Id: I914d9bda0d442cd232e2a056ae490301a8850105
2017-11-05 14:01:43 -08:00
Luis Hector Chavez fae195b1e4 libcutils: Work around the lack of __mulodi4
The parent change ran into an issue where enabling UBSan on an i686
build caused it to use __mulodi4.

https://github.com/android-ndk/ndk/issues/184 documents linking against
libclang_rt.builtins-i686.a, but that's not available from soong either.

Bug: 62378620
Bug: 29412086
Test: x86 builds work again
Change-Id: I730d59558aa4ed28f8a11b5393e037111e320f29
2017-11-04 00:36:01 +00:00
Josh Gao cdea750576 crash_dump: don't inherit environment from parent.
Bug: http://b/68381717
Test: debuggerd_test
Change-Id: Ie1b342bc9901cb9ae9b79147899928a19052cbad
2017-11-03 16:57:56 -07:00
Connor O'Brien 5aff24e01d Merge "fastboot: handle small flash block sizes correctly"
am: ebcfa44937

Change-Id: I683e1722756d09b09c18d506f9e08e269b6e1921
2017-11-03 21:22:56 +00:00