Commit Graph

12997 Commits

Author SHA1 Message Date
Christopher Ferris a4e7f07f77 Merge "Switch UniquePtr to std::unique_ptr." 2015-05-16 00:35:34 +00:00
Dan Albert 569a130196 Make pty raw in adb shell when non-interactive.
The main goal here is fixing the line ending translation from \n to
\r\n, but we probably don't want any translation to happen.

Bug: http://b/19735063
Change-Id: I1d6d6c6b57cc741b046c2432cd864b344ce1f28a
2015-05-15 17:33:05 -07:00
Christopher Ferris 6e96403b8f Switch UniquePtr to std::unique_ptr.
Bug: 21209050
Change-Id: I91d4c44de479b37f2729382fcdf103b8c69aa668
2015-05-15 17:30:21 -07:00
Elliott Hughes 9c94aa9982 Switch to toybox ls.
Bug: http://b/21171466
Change-Id: I3fa09db7ca43d337cbda60f10269e7607544982b
2015-05-15 16:54:35 -07:00
Dan Albert 4e0008123d Merge "adb: win32: fix StringPrintf format string checking of %zd and PRIu64" 2015-05-15 22:49:59 +00:00
Dan Albert 0df06907b4 Merge "adb: win32: fix daemon acknowledgement" 2015-05-15 21:47:07 +00:00
Elliott Hughes d0008c971d Merge "Fix ' escaping in adb." 2015-05-15 21:11:25 +00:00
Elliott Hughes 84b0bf2264 Fix ' escaping in adb.
You can't just use \' inside a single-quoted string.

Bug: http://b/20323053
Bug: http://b/3090932
Change-Id: I73754b097671d02dc11c35052f0534b6dd789e4f
2015-05-15 12:06:00 -07:00
Christopher Ferris 3f7e06aef5 Merge "Prevent crashes if a map cannot be created." 2015-05-15 18:25:01 +00:00
Andreas Gampe a6ac9ce98b LibNativeBridge: Version 2
Add a callback function to retrieve "signal handler" from the bridge,
if the bridge wants it to be managed by the runtime. The signal handler
will be invoked after the runtime's own one, and before any other
chained handler.

Add a callback function to check compatibility of the bridge with the
library.

Add a function to expose the native bridge version. Add a test for this
function.

Bug: 20217701
Change-Id: Ic23a60b949f119c7d8b0e7cb27a61e6c16532a23
2015-05-14 20:20:49 -07:00
Christopher Ferris 30c942cf10 Prevent crashes if a map cannot be created.
Under some conditions, /proc/<pid>/maps might return nothing. If we
try and unwind in this case, we'll crash. Check this case and fail
the unwind.

Add checks that no other functions try and use map_ without
checking for nullptr.

Add logging when an unwind fails so it's clear what happened.

Bug: 21162746
Change-Id: I56ce51dda0cfc9db20475a441f118108196aa07c
2015-05-14 17:56:41 -07:00
Elliott Hughes 000c009bcc Merge "Reduce the coldboot timeout to 1s." 2015-05-14 20:14:32 +00:00
Chih-Hung Hsieh 2cc2544024 Merge "Enable clang compilation." 2015-05-14 19:21:22 +00:00
Elliott Hughes c7331d02d1 Reduce the coldboot timeout to 1s.
5s was already a ridiculously long time to delay booting, and some OEMs are
trying to make it even more insane:

  https://www.codeaurora.org/cgit/quic/la/platform/system/core/commit/?h=lp&id=fd23edd48272976d2fb333f377242173f92aa343

Let's at least ensure that Nexus and Android One devices don't take forever
to boot...

Bug: http://b/19899875
Change-Id: I9680c166a759360f34118e51cd0645e12b6bd5c8
2015-05-14 12:03:14 -07:00
Chih-Hung Hsieh 1cd02d3443 Enable clang compilation.
Previous clang/llvm bug was fixed.

BUG: 18790528
Change-Id: Ib12696030d34ebc3c3ef1bca3cad0139d631417e
2015-05-14 10:53:48 -07:00
Spencer Low 6001c87cbc adb: win32: fix StringPrintf format string checking of %zd and PRIu64
At runtime, vsnprintf (and android::base::StringPrintf which calls it)
call a mingw version of vsnprintf, not the vsnprintf from MSVCRT.DLL.
The mingw version properly understands %zd and PRIu64 (the latter,
provided that you #include <inttypes.h>).

The problem was that android::base::StringPrintf was causing
compile-time errors saying that %zd and PRIu64 were not recognized. It
seems that this was because the attribute on the function prototypes
specified `printf' instead of `gnu_printf'. Once that was fixed to match
vsnprintf's attribute, the warnings went away.

This uses similar preprocessor techniques as <android/log.h>.

Also restore a %zd usage to avoid a static_cast<>, and make
print_transfer_progress()'s format string compile-time checkable (and
tweak some types and %llu => PRIu64).

Change-Id: I80b31b9994858a28cb7c6847143b86108b8ab842
Signed-off-by: Spencer Low <CompareAndSwap@gmail.com>
2015-05-13 19:30:30 -07:00
Christopher Ferris 34804b90ec Merge "Add tests for elf unwinding in memory." 2015-05-13 17:58:13 +00:00
Mark Salyzyn 10c18d64c6 Merge "liblog: gtest open("/dev/pmsg0", "a")" 2015-05-13 16:30:59 +00:00
Mark Salyzyn d1371a8b8b Merge "logd: Add TID statistics" 2015-05-13 16:17:37 +00:00
Mark Salyzyn 0c6c41502a Merge changes I2cda9dd7,Ifb560850,I8d4c7c5a
* changes:
  logd: Cleanup
  logcat: liblog: Add "usec" format argument
  logd: Add klogd
2015-05-13 16:14:25 +00:00
Christopher Ferris 67aba6881d Add tests for elf unwinding in memory.
Bug: 19517541
Change-Id: Ib42360a82934ff7103e2ccb64c1105c59aa3fdea
2015-05-12 16:11:47 -07:00
Mark Salyzyn 7718778793 logd: Cleanup
- Android Coding Standard for Constructors
- Side effects NONE

Change-Id: I2cda9dd73f3ac3ab58f394015cb810820093d47b
2015-05-12 15:51:46 -07:00
Mark Salyzyn e1f2004ecc logcat: liblog: Add "usec" format argument
- Add additional 3 digits of time precision for time output
  adding in the reporting of usec
- Remove trailing space in header file

Change-Id: Ifb560850b8e01080e126fbaeab640db71cce3eea
2015-05-12 15:51:46 -07:00
Mark Salyzyn ae4d928d81 logd: Add klogd
- Add a klogd to collect the kernel logs and place them into a
  new kernel log buffer
- Parse priority, tag and message from the kernel log messages.
- Turn off pruning for worst UID for the kernel log buffer
- Sniff for 'PM: suspend exit', 'PM: suspend enter' and
  'Suspended for' messages and correct the internal definition
  time correction against monotonic dynamically.
- Discern if we have monotonic or real time (delineation 1980) in
  audit messages.
- perform appropriate math to correct the timestamp to be real time
- filter out any external sources of kernel logging

Change-Id: I8d4c7c5ac19f1f3218079ee3a05a50e2ca55f60d
2015-05-12 15:51:46 -07:00
Eric Laurent 74f0a578a8 Merge "audio: Fix false positives in audio_is_remote_submix_device()" 2015-05-12 22:40:01 +00:00
Mark Salyzyn 88462ba7fc Merge "logd: Add Tag statistics" 2015-05-12 22:31:46 +00:00
Elliott Hughes 6f9db165a4 Merge "Fix insmod module size" 2015-05-12 21:34:26 +00:00
Misael Lopez Cruz bee4965cb2 audio: Fix false positives in audio_is_remote_submix_device()
The audio_is_remote_submix_device() helper function incorrectly
reported AUDIO_DEVICE_OUT_BLUETOOTH_A2DP_HEADPHONES and
AUDIO_DEVICE_IN_LINE as a submix devices.

The cases where the confusion occurs are for devices whose bitwise
value only differs in the direction bit.

Change-Id: I3bb9fd1158a26a8f4b3b59246974e703ca5ba0f0
Signed-off-by: Misael Lopez Cruz <misael.lopez@ti.com>
2015-05-12 16:25:38 -05:00
Tom Cherry eaa3b4ec6f Fix insmod module size
read_file() used to append a new line character to the end of the buffer it
returns, because parse_config() isn't able to cope with input that's not
'\n'-terminated. Fix read_file() to be less insane, and push the workarounds
into the parse_config() callers.

Longer term we should rewrite parse_config().

Change-Id: Ie9d9a7adcd33b66621726aef20c4b8cc51c08be7
2015-05-12 14:18:49 -07:00
Mark Salyzyn 17ed6797df logd: Add TID statistics
Bug: 19608965
Change-Id: Ifbf0b00c48ef12b5970b9f9f217bd1dd8f587f2c
2015-05-12 12:57:25 -07:00
Mark Salyzyn 344bff4391 logd: Add Tag statistics
- Optional class of statistics for events Tags
- export tagToName from LogBuffer (located in main.cp to address
  https://android-review.googlesource.com/#/c/110204)
- Can not handle dropped because getTag() can not work,
  will need to be fixed if we start filtering.

Bug: 19608965
Change-Id: I7b90607ca588bf37bab71f19b1570a290e772776
2015-05-12 12:53:27 -07:00
Mark Salyzyn 7297278ade Merge "logd: pidToName deficiency" 2015-05-12 19:38:40 +00:00
Elliott Hughes bc014afbfa Merge "Switch arch-arm/memset32.S to unified syntax." 2015-05-12 14:49:35 +00:00
Elliott Hughes f69624a1ef Merge "Remove dead files." 2015-05-12 14:43:01 +00:00
Elliott Hughes 36284db817 Switch arch-arm/memset32.S to unified syntax.
This fixes the clang build.

Change-Id: I492c7dc016986020de3f70a77e0ace6610f50765
2015-05-11 22:22:13 -07:00
Elliott Hughes fe93e8d2a7 Remove dead files.
Auto-imported from cupcake, not touched since then, or used anyway.

Change-Id: If2d50cddff0238dff818c7bae92fe8e1100fccdf
2015-05-11 21:57:33 -07:00
Mark Salyzyn 80b129f9f0 Merge "logd: uidToName add dex2oat UID" 2015-05-11 23:51:32 +00:00
Elliott Hughes adffad25a5 Merge "adb: Do not share memory between multiple thread" 2015-05-11 23:30:26 +00:00
Alan Jeon 4af3c40c4a adb: Do not share memory between multiple thread
When multiple client try to connect to other hosts, it failed because
memory corruption. Allocate memory for each thread like other command did.

Change-Id: I79959ce3dbfd11c7553736cd3f5a899815873584
Signed-off-by: Alan Jeon <skyisle@gmail.com>
2015-05-11 16:28:04 -07:00
Spencer Low d396dc93a7 adb: win32: fix daemon acknowledgement
The daemon failed to startup because main.cpp was changed from calling
WriteFile() to android::base::WriteStringToFd(), the later which calls
write() in the C Runtime which by default has stdout in textmode which
does \n to \r\n translation.

The quick fix is to change stdout's mode from text to binary since right
after it is reopened to redirect to the daemon log file anyway.

Change-Id: I322fc9eae5d6abbf63f3d5917b0beb2171b5a15c
Signed-off-by: Spencer Low <CompareAndSwap@gmail.com>
2015-05-11 15:57:43 -07:00
Nick Kralevich 97d0c19354 Merge "Revert "libaudit: limit to 5 selinux denials per sec"" 2015-05-11 22:38:58 +00:00
Elliott Hughes 85abaf66c4 Merge "Failure to find an oem partition should not be a remount failure." 2015-05-11 20:32:56 +00:00
Elliott Hughes 9aa4fda4e6 Failure to find an oem partition should not be a remount failure.
Many devices don't have an /oem partition, so find_mount should be
expected to fail, but shouldn't cause the overall remount to fail.

Also clean up all the error handling and reporting, and remove the
dead int* globals.

Bug: http://b/21024141
Change-Id: Ie31021b03c9cab8e972269d7d1ffe383cd30ee9e
2015-05-11 13:28:22 -07:00
Mark Salyzyn b51546f43f Merge "liblog: Add kernel log id" 2015-05-11 16:09:04 +00:00
Nick Kralevich 9667a66019 Revert "libaudit: limit to 5 selinux denials per sec"
The shamu instabilities continued even after throttling SELinux denials
to 5/second. 5 denials per second is too low when doing device bringup,
and there have been some complaints about lost SELinux denials. See,
for example, http://comments.gmane.org/gmane.comp.security.selinux/21941

Bring the limit back up to 20/second to prevent dropping too many
denials on the floor.

This reverts commit a15db51bbf.

Change-Id: I05e85cce0a792d05aa557fcc614c0fc019c15014
2015-05-09 12:41:41 -07:00
Andres Morales 1da6b1fe64 Merge "load ro.recovery_id property from recovery partition" 2015-05-09 01:05:39 +00:00
Andres Morales cb3fce80fa load ro.recovery_id property from recovery partition
Change-Id: I9dc1f325e353375d9c1c8ed949636e2404601076
(cherry picked from commit db5f5d4367)
2015-05-08 17:35:13 -07:00
Dan Albert dd6f7b8dd7 Merge "Revert "Revert "Split adb_main.cpp into client and daemon.""" 2015-05-09 00:33:49 +00:00
Dan Albert c89e0ccd40 Revert "Revert "Split adb_main.cpp into client and daemon.""
This reverts commit 218dbccefa.

Change-Id: I74088db34983dc99e316a07c6ddc294340e0eb71
2015-05-08 17:33:21 -07:00
Dan Albert 8398386a63 Merge "Revert "Split adb_main.cpp into client and daemon."" 2015-05-08 23:12:39 +00:00