Commit graph

14270 commits

Author SHA1 Message Date
Rom Lemarchand
e98bfaeb08 mkbootimg: use fixed-size types for image format
Change-Id: I471ef420c3944b3ffefdba9ca7122c6a7f09e5ac
2015-05-07 15:36:28 -07:00
Christopher Ferris
9d84030109 am 6269a95a: resolved conflicts for merge of b67b92f2 to lmp-mr1-ub-dev
* commit '6269a95a8fe74193d25039cda45b42bfac243586':
  Do not dump maps/memory/code of sibling threads. DO NOT MERGE
2015-05-07 21:08:08 +00:00
Christopher Ferris
6269a95a8f resolved conflicts for merge of b67b92f2 to lmp-mr1-ub-dev
Change-Id: I6aa2ee2c4bf1802e5aa814374f9842a34179ffea
2015-05-07 11:33:55 -07:00
Mark Salyzyn
8b22c293a0 logd: class hierarcy for Uid and Pid statistics.
(Cherry pick from commit 81b3eabc49)

Add EntryBase and EntryBaseDropped base classes for statistical
entries to inherit from. Abstract add(), subtract() and drop()
methods to common LogBufferElement in each for entry policy decisions.
Some move of details out of LogStatistics.cpp and place them into
LogStatistics.h. Add statistical add(), subtract() and
drop() methods to hash table to call entries for policy.

Bug: 19608965
Change-Id: Ib8a33a8fe28871ef165d1632c6546a5c606231e8
2015-05-07 10:01:39 -07:00
Christopher Ferris
b67b92f279 Do not dump maps/memory/code of sibling threads. DO NOT MERGE
Modifies the code so that if the unwind fails, the code still prints
as much data as possible.

Also, for sibling threads, skip printing the maps and memory/code
since it's not likely to be very relevant.

Fix a few cases where extra space is at the end of lines.

Fix an inverted if statement that was checking the wrong condition.

Bug: 18816322
Bug: 20829534

(cherry picked from ab9e7dcef6)

Change-Id: If2d3a734724c23df4192f4dfc6bd69d6729fbc8d
2015-05-07 00:45:55 -07:00
Christopher Ferris
8bd4a4ecdc Fix small ptrace reads.
The BacktracePtrace::Read function crashes if the number of bytes to
read is less than the number of bytes needed to align the read to
a word_t boundary.

Fix this and add a test for this case.

Change-Id: I50808849ece44928f65dba1d25309e3885c829a2
(cherry picked from commit 944f417ccb)
2015-05-06 19:08:52 -07:00
Christopher Ferris
af67fb2475 Add offset to map data.
Also, print the offset in the maps section.

Bug: 20864928
Change-Id: I71f005726e5ef73cf75bbcb8f829fd5127cb9d61
(cherry picked from commit 5c8856854d)
2015-05-06 16:35:50 -07:00
Dehao Chen
ac725c12da Add /data/misc/perfprofd to store perf profile.
BUG: 19483574

(cherry picked from commit 30c401fa92)

Change-Id: Ibf96db9f7e5db625b395db20b73572acc240b1f9
2015-05-06 15:09:23 -07:00
Nick Kralevich
6ee6917757 rootdir: make sure the /oem mountpoint is always available
The /oem mount point is used to mount semi-trusted data, and
many Android One devices depend on it. Make sure it's guaranteed
to always be available.

(cherrypicked from commit f3b554fc61)

Bug: 20816563
Change-Id: Ib5272f025d14d4da6125d753879054b3faeae696
2015-05-06 13:43:15 -07:00
Dan Albert
c1cfbd304a Include the git sha in the adb version.
Also add --version to adbd to display the same thing.

Change-Id: I47dfbad16c892c42ea938aedd085ba77492791ba
(cherry picked from commit 1ba1d7c1ee)
2015-05-06 09:11:16 -07:00
Christopher Ferris
b0481f4809 All debuggerd log output marked fatal.
This avoids the log daemon skipping some of the log output from
debuggerd.

Bug: 20846525
(cherry picked from commit b0412a5c2b)
Change-Id: Ifed48814d76c7e855645b6d5487d5e6e1fcafd9e
2015-05-05 14:16:21 -07:00
Elliott Hughes
aceb9c08df Implement the ssh(1) escaping rules.
The first rule of ssh(1) escaping is that there is no escaping.

This doesn't undo any of my recent security fixes because they're all
calling escape_arg themselves.

This fixes "adb shell rm /data/dalvik-cache/arm/*".

Also remove do_cmd which caused concern during code review.

Bug: http://b/20564385
Change-Id: I4588fd949d51e2a50cff47ea171ed2d75f402d0d
(cherry picked from commit 2b10111d25)
2015-05-05 12:45:42 -07:00
Than McIntosh
7d678d8d78 Invoke perfprofd daemon (only for userdebug/eng builds).
Change-Id: Ifaabe32dda6db249efc62c5db3760e32295eb1a9
(cherry picked from commit d6544d2a40)
2015-05-04 11:50:27 -07:00
Elliott Hughes
e1a55004e9 Add WriteFdFmt and clean up more code.
Also say *which* device wasn't found.

Bug: http://b/20666660
Change-Id: I50e234ad89e39ae0a8995083c0b642c61275c5a3
(cherry picked from commit ab52c181fa)
2015-05-01 17:37:28 -07:00
Elliott Hughes
92af733ee2 More adb buffer fixes.
This patch factors out a lot of the basic protocol code: sending OKAY,
sending FAIL, and sending a length-prefixed string.

ADB_TRACE has been non-optional for a long time, so let's just remove
the #ifs.

Also actually build the device tracker test tool (and remove its duplicate).

Bug: http://b/20666660
Change-Id: I6c7d59f18707bdc62ca69dea45547617f9f31fc6
(cherry picked from commit e67f1f87d9)
2015-05-01 17:09:34 -07:00
Christopher Ferris
5cffd97199 Merge "Add load base to map for relocation packing." into mnc-dev 2015-05-02 00:07:20 +00:00
Christopher Ferris
329ed7dae4 Add load base to map for relocation packing.
The new linker relocation packing support uses non-zero load bases,
so we better handle them properly.

Also print out the load base for a map if it's non-zero.

Bug: 20687795
Change-Id: Iec2d1db2051e7b4a278c1dfa57d745128a7f2974
2015-05-01 16:04:24 -07:00
Mark Salyzyn
95108f1844 logd: improve details on chatty records
(Cherry pick from commit 21fb7e0b75)

- Report applications UID, TID/PID by name.
- change wording to have an accurate connotation
- drop privilege check since filtered upstream

Bug: 19608965
Bug: 20334069
Bug: 20370119
Change-Id: I2b1c26580b4c2de293874214ff5ae745546f3cca
2015-04-30 15:25:12 -07:00
Mark Salyzyn
5a9d33ee1c logd: reduce chance of dropped 1 messages
- do not time out at 1 second if drop has count of less than 4

(Cherry picked from commit 35173a9ac5)

Bug: 20334069
Bug: 20370119
Change-Id: I787cb553dfab5ed71abd6ed72b63de675f834e0c
2015-04-30 13:24:59 -07:00
Elliott Hughes
f1a58f8f33 More fixed-length buffer removal.
Bug: http://b/20666660
Change-Id: I0c738e9fed2defed48a9cf2d0a4f7b99c08dcf3d
(cherry picked from commit 6452a89aa8)
2015-04-30 12:31:11 -07:00
Elliott Hughes
0156589846 Add missing 'else' to fix all devices showing up as "host".
Bug: http://b/20705355
Change-Id: I4f7830278f0c2bc87d95d148d85455b8da894645
(cherry picked from commit 3ce9575af7)
2015-04-29 22:44:47 -07:00
Mike Lockwood
c23f050b74 Merge "libusbhost: Add usb_device_get_version()" into mnc-dev 2015-04-29 20:25:19 +00:00
Mike Lockwood
f68600abfc libusbhost: Add usb_device_get_version()
Change-Id: If2161178e9fe94a94faf01c102ef64f2a72d093b
2015-04-29 13:04:10 -07:00
Elliott Hughes
2e06d3057e Fix Win32 build.
(cherry-pick of 1b600a902cc0b3a6065c962293292a5ac689fafe.)

Change-Id: Icf2c8df99b4b88bbf85a4097731733c5795fba44
2015-04-29 12:37:33 -07:00
Elliott Hughes
71aeb79815 Move __adb_error to std::string, and improve various errors.
Also remove an sprintf. Also fix various bits of code that were
reporting stale adb_error values when they meant strerror.

(cherry-pick of 078f0fcf4c63b8d8e8c10a18855eae04ca321e06.)

Bug: http://b/20666660
Change-Id: Ibeb48b7bc21bb0ec30ba47889d1d671ee480e1b7
2015-04-29 11:42:13 -07:00
Jeff Brown
28e84a147f Merge "Add float support to binary event log." into mnc-dev 2015-04-29 01:18:09 +00:00
Jeff Brown
b1993b637f Add float support to binary event log.
Bug: 20664753
Change-Id: Ib4752bd785496dab5bb4d4979d5d80f662adbdfa
2015-04-28 17:52:37 -07:00
Dan Stoza
0a866ea450 ANativeWindow: Add NATIVE_WINDOW_BUFFER_AGE query
Adds a NATIVE_WINDOW_BUFFER_AGE query, which returns the age of the
contents of the most recently dequeued buffer as the number of frames
that have elapsed since it was last queued.

Change-Id: Ib6fd62945cb62d1e60133a65beee510363218a23
(cherry picked from commit 19df32cd19)
2015-04-28 13:42:30 -07:00
Elliott Hughes
d81f75ae41 Remove strtok from adb.
Also fix android::base::Split to behave like Java, Python, and google3.

(cherry picked from commit 8d5fa6da44)

Change-Id: I9388ae37ee8dd4a4a6c2a9a19f068b70d9a78353
2015-04-28 10:55:24 -07:00
Elliott Hughes
03a90d6633 Support the full length of USB serial numbers.
Two bugs: we couldn't report the serial number correctly if it was long
enough, and it wasn't possible to connect to a device whose serial number
was long enough to overflow a different fixed-length buffer.

Bug: http://b/20317730

(cherry picked from commit 9309ecbcec)

Change-Id: I04c160a215418a57bd4fb27b7f63060c8be6f12e
2015-04-27 17:19:01 -07:00
Elliott Hughes
f5290ee1a7 Use WriteFully in debuggerd to talk to ActivityManager.
(cherry picked from commit b7cd09b93e)

Change-Id: Ic81b4134fe563d8ebb15ba4ff3e9b2e8893c97a5
2015-04-27 12:51:42 -07:00
Nick Kralevich
55db2ebca9 am ada332e4: am ecf184c9: am 9c9280d8: Merge "init: get rid of the remaining double mounts"
* commit 'ada332e4a01a3bb290be26f8a5b67993bd10af14':
  init: get rid of the remaining double mounts
2015-04-26 18:39:31 +00:00
Nick Kralevich
21de44a8a3 am ec9bd166: am 45a49d0e: am ccac2be8: Merge "init: use SELinux /dev/null if available"
* commit 'ec9bd166cc406d8079b7d33d04b3e04708183d96':
  init: use SELinux /dev/null if available
2015-04-26 18:39:30 +00:00
Nick Kralevich
ada332e4a0 am ecf184c9: am 9c9280d8: Merge "init: get rid of the remaining double mounts"
* commit 'ecf184c901b78994773d687763c1478752e9375e':
  init: get rid of the remaining double mounts
2015-04-26 02:11:28 +00:00
Nick Kralevich
ecf184c901 am 9c9280d8: Merge "init: get rid of the remaining double mounts"
* commit '9c9280d863d7377858af6e1543ea4ada7af3b0ec':
  init: get rid of the remaining double mounts
2015-04-26 02:00:51 +00:00
Nick Kralevich
9c9280d863 Merge "init: get rid of the remaining double mounts" 2015-04-26 01:51:04 +00:00
Nick Kralevich
ec9bd166cc am 45a49d0e: am ccac2be8: Merge "init: use SELinux /dev/null if available"
* commit '45a49d0eb7e2e9fc3d2c48884c84f6a6c7397720':
  init: use SELinux /dev/null if available
2015-04-26 01:39:13 +00:00
Nick Kralevich
45a49d0eb7 am ccac2be8: Merge "init: use SELinux /dev/null if available"
* commit 'ccac2be8a6269469087a7978e1a6db62ef4618c6':
  init: use SELinux /dev/null if available
2015-04-26 01:30:43 +00:00
Nick Kralevich
f667a3247a init: get rid of the remaining double mounts
Don't double mount /dev and its subdirectories anymore. Instead, the
first stage init is solely responsible for mounting it.

Don't have init prepare the property space. This is the responsibility
of the second stage init.

Don't have SELinux use the property space to determine how we should
be running. Instead, create a new function and extract the data we
need directly from /proc/cmdline. SELinux needs this information in
the first stage init process where the property service isn't available.

Change-Id: I5b4f3bec79463a7381a68f30bdda78b5cc122a96
2015-04-25 18:29:26 -07:00
Nick Kralevich
ccac2be8a6 Merge "init: use SELinux /dev/null if available" 2015-04-26 00:59:01 +00:00
Nick Kralevich
499eb29b58 am 1c2457ff: am b31c3a5a: am 178299fd: Merge "init: don\'t double mount /proc and /sys"
* commit '1c2457ffdaf833b06a2619d967fe9def7139180f':
  init: don't double mount /proc and /sys
2015-04-25 23:49:45 +00:00
Nick Kralevich
1d28e4fc37 am 2ae7d4ee: am 6b6df173: am f8b0743e: Merge "init: fix write_file checkreqprot logic error"
* commit '2ae7d4eefddf2cd7ac4bba60fb6d057e2b01731b':
  init: fix write_file checkreqprot logic error
2015-04-25 23:49:44 +00:00
Elliott Hughes
7c517acdd6 am 4f790e37: am ecd6e36d: am 47a9ef2f: Merge "Improve logging of USBDEVFS_CLAIMINTERFACE failures."
* commit '4f790e37142f2bda0f59bdf84060324bc51756fd':
  Improve logging of USBDEVFS_CLAIMINTERFACE failures.
2015-04-25 23:49:43 +00:00
Nick Kralevich
e34577ce1b init: use SELinux /dev/null if available
SELinux provides it's own /dev/null character device at
/sys/fs/selinux/null. This character device is exactly the same
as /dev/null, including the same major/minor numbers, and can
be used wherever /dev/null is used.

Use /sys/fs/selinux/null instead of trying to create our own
/dev/__null__ device. This moves us one step closer to eliminating
all uses of mknod() by init.

/sys/fs/selinux/null is only available once the /sys/fs/selinux filesystem
is mounted. It's not available to the first stage init, so we
still have to fall back to mknod then.

Change-Id: Ic733767ea6220a130537de33cc478ae79578ce20
2015-04-25 16:48:23 -07:00
Nick Kralevich
1c2457ffda am b31c3a5a: am 178299fd: Merge "init: don\'t double mount /proc and /sys"
* commit 'b31c3a5a453cd9f472698068af9909e80a96ab2c':
  init: don't double mount /proc and /sys
2015-04-25 23:28:45 +00:00
Nick Kralevich
2ae7d4eefd am 6b6df173: am f8b0743e: Merge "init: fix write_file checkreqprot logic error"
* commit '6b6df1733711ace006e0f4f9d44c718f85d2f70d':
  init: fix write_file checkreqprot logic error
2015-04-25 23:28:44 +00:00
Elliott Hughes
4f790e3714 am ecd6e36d: am 47a9ef2f: Merge "Improve logging of USBDEVFS_CLAIMINTERFACE failures."
* commit 'ecd6e36d37d2e1fcc021762baaff417c94920dd4':
  Improve logging of USBDEVFS_CLAIMINTERFACE failures.
2015-04-25 23:28:43 +00:00
Nick Kralevich
b31c3a5a45 am 178299fd: Merge "init: don\'t double mount /proc and /sys"
* commit '178299fd459b7622e9e3de05a48d6ba050f92bec':
  init: don't double mount /proc and /sys
2015-04-25 23:16:49 +00:00
Nick Kralevich
6b6df17337 am f8b0743e: Merge "init: fix write_file checkreqprot logic error"
* commit 'f8b0743ef418c15fe622143a6b4b42b102a07803':
  init: fix write_file checkreqprot logic error
2015-04-25 23:16:48 +00:00
Elliott Hughes
ecd6e36d37 am 47a9ef2f: Merge "Improve logging of USBDEVFS_CLAIMINTERFACE failures."
* commit '47a9ef2f116fd885a3ba0e9027a45b2a68cc5b3f':
  Improve logging of USBDEVFS_CLAIMINTERFACE failures.
2015-04-25 23:16:46 +00:00