OSDN Git Service

android-x86/system-core.git
8 years agoMerge "adb: win32: make adb_getenv() case-insensitive"
Elliott Hughes [Fri, 11 Sep 2015 22:59:19 +0000 (22:59 +0000)]
Merge "adb: win32: make adb_getenv() case-insensitive"

8 years agoadb: win32: make adb_getenv() case-insensitive
Spencer Low [Wed, 9 Sep 2015 00:13:04 +0000 (17:13 -0700)]
adb: win32: make adb_getenv() case-insensitive

adb_getenv() should be case-insensitive just like the real getenv() on
Windows.

Added a unittest for adb_getenv(). In the process, made adb_test link
with -municode so that the environment block is Unicode.

Move wmain() from main.cpp to sysdeps_win32.cpp so that adb_test could
also use it.

Because wmain() moved, it wasn't as easy to do the runtime check to
verify that -municode was used, so do that check in _ensure_env_setup()
since adb_getenv() is called early in adb anyway.

Added a utility ToLower() which is good enough for env vars whose keys
are probably always ASCII to begin with.

Change-Id: I082f7fdee9dfe2c7f76b878528d2f7863df6d8d1
Signed-off-by: Spencer Low <CompareAndSwap@gmail.com>
8 years agoMerge "Ensure that libbase and liblog can be built for Windows."
Dan Albert [Fri, 11 Sep 2015 20:47:07 +0000 (20:47 +0000)]
Merge "Ensure that libbase and liblog can be built for Windows."

8 years agoMerge "Lose lsof to toybox."
Elliott Hughes [Fri, 11 Sep 2015 20:44:48 +0000 (20:44 +0000)]
Merge "Lose lsof to toybox."

8 years agoEnsure that libbase and liblog can be built for Windows.
Stephen Hines [Fri, 11 Sep 2015 05:47:07 +0000 (22:47 -0700)]
Ensure that libbase and liblog can be built for Windows.

Change-Id: If4adf1e2bd7ec36a7f02ae2e263d2db5187c6e7b

8 years agoMerge "adb: create shell protocol class (take 2)."
David Pursell [Fri, 11 Sep 2015 18:17:55 +0000 (18:17 +0000)]
Merge "adb: create shell protocol class (take 2)."

8 years agoMerge "Add ParseInt (and ParseUint)."
Elliott Hughes [Fri, 11 Sep 2015 18:00:20 +0000 (18:00 +0000)]
Merge "Add ParseInt (and ParseUint)."

8 years agoLose lsof to toybox.
Elliott Hughes [Fri, 11 Sep 2015 17:58:21 +0000 (10:58 -0700)]
Lose lsof to toybox.

Change-Id: I4b5e0c8c33f5b2dfd3db85628d9a657940978a10

8 years agoMerge "metrics: Add an option to metrics_client to dump the logs cache."
James Hawkins [Fri, 11 Sep 2015 16:39:19 +0000 (16:39 +0000)]
Merge "metrics: Add an option to metrics_client to dump the logs cache."

8 years agoMerge "crash_reporter: Fix crash_sender"
Steve Fung [Fri, 11 Sep 2015 06:29:28 +0000 (06:29 +0000)]
Merge "crash_reporter: Fix crash_sender"

8 years agoMerge "logd: worst uid record watermark part five"
Mark Salyzyn [Thu, 10 Sep 2015 16:24:25 +0000 (16:24 +0000)]
Merge "logd: worst uid record watermark part five"

8 years agologd: worst uid record watermark part five
Mark Salyzyn [Tue, 8 Sep 2015 16:12:51 +0000 (09:12 -0700)]
logd: worst uid record watermark part five

A regression that resulted in increased memory consumption for some
logging patterns because we rarely did merge or leading checks, and
age-out checking. On the last prune cycle, we reset for a full scan.

Add some comments describing the pruning processes.

Bug: 23327476
Bug: 23681639
Bug: 23685592
Change-Id: I22b0f339c9269b006831fda9cefe295a263ebb92

8 years agocrash_reporter: Fix crash_sender
Steve Fung [Fri, 21 Aug 2015 00:07:50 +0000 (17:07 -0700)]
crash_reporter: Fix crash_sender

- Remove all the ChromeOS specific logic.
- Fix paths to correct Android paths.
- Add periodic_scheduler, and add crash_sender to init.

Bug: 23231196
Bug: 23233267

Change-Id: I12de28bfbe5d5b08831eda9b28c6d7a669c22290

8 years agoMerge "fs_mgr: Fix ENOMEM behavior when dealing with slotselect."
David Zeuthen [Wed, 9 Sep 2015 22:45:24 +0000 (22:45 +0000)]
Merge "fs_mgr: Fix ENOMEM behavior when dealing with slotselect."

8 years agometrics: Add an option to metrics_client to dump the logs cache.
James Hawkins [Tue, 8 Sep 2015 22:18:17 +0000 (15:18 -0700)]
metrics: Add an option to metrics_client to dump the logs cache.

The format of the metrics dump is rudimentary just yet. Here is an example:

  Metrics from /data/misc/metrics/uma-events

  name: hello     type: USER_ACTION
  name: world     type: USER_ACTION

This required the following changes:
* Added -d option to metrics_client
* Refactored file handling in SerializationUtils
 - Factored out file opening and log parsing into helper methods
 - Added ReadMetricsFromFile which is read-only so does not truncate the file

Change-Id: I6032d74242c79c678ec42a14e78fccc54e7af455

8 years agofs_mgr: Fix ENOMEM behavior when dealing with slotselect.
David Zeuthen [Wed, 9 Sep 2015 22:03:13 +0000 (18:03 -0400)]
fs_mgr: Fix ENOMEM behavior when dealing with slotselect.

Change-Id: I5460a8d31baa0d4817ff5fcbd9aac272071937f4

8 years agoMerge "Remove HOST_OS==windows check"
Dan Willemsen [Wed, 9 Sep 2015 18:13:22 +0000 (18:13 +0000)]
Merge "Remove HOST_OS==windows check"

8 years agoMerge "adb: remove unnecessary dependencies of liblog."
Yabin Cui [Wed, 9 Sep 2015 17:38:31 +0000 (17:38 +0000)]
Merge "adb: remove unnecessary dependencies of liblog."

8 years agoMerge "adb: refactor _is_valid_ack_reply_fd"
Yabin Cui [Wed, 9 Sep 2015 17:38:20 +0000 (17:38 +0000)]
Merge "adb: refactor _is_valid_ack_reply_fd"

8 years agoMerge "fs_mgr: Use slot_suffix field from bootloader_message."
David Zeuthen [Wed, 9 Sep 2015 16:11:50 +0000 (16:11 +0000)]
Merge "fs_mgr: Use slot_suffix field from bootloader_message."

8 years agoadb: remove unnecessary dependencies of liblog.
Yabin Cui [Wed, 9 Sep 2015 01:27:10 +0000 (18:27 -0700)]
adb: remove unnecessary dependencies of liblog.

Change-Id: I1aaa9e6c1b47a70f8daf91745f6aec13c92b789f

8 years agoMerge "Drop unused LOCAL_STATIC_LIBRARIES."
Dan Albert [Tue, 8 Sep 2015 22:13:45 +0000 (22:13 +0000)]
Merge "Drop unused LOCAL_STATIC_LIBRARIES."

8 years agofs_mgr: Use slot_suffix field from bootloader_message.
David Zeuthen [Thu, 3 Sep 2015 16:23:12 +0000 (12:23 -0400)]
fs_mgr: Use slot_suffix field from bootloader_message.

This will make fs_mgr look in the misc partition for the A/B suffix to
use if one of more fstab entries is using the slotselect option and the
bootloader doesn't specify the suffix.

Change-Id: I24233195f60dd352bf8e7ac32b0d95dcd3323156

8 years agoDrop unused LOCAL_STATIC_LIBRARIES.
Dan Albert [Tue, 8 Sep 2015 17:55:05 +0000 (10:55 -0700)]
Drop unused LOCAL_STATIC_LIBRARIES.

This is ignored for BUILD_STATIC_LIBRARY.

Change-Id: Ib5553e0aeaa30cdb2b29f18a4d5d0b0bf1b8740a

8 years agoadb: create shell protocol class (take 2).
David Pursell [Mon, 31 Aug 2015 22:36:18 +0000 (15:36 -0700)]
adb: create shell protocol class (take 2).

Adds a new class ShellProtocol to help read and write data with
`adb shell`. This will allow splitting streams and sending out-of-band
data such as exit codes.

Nothing uses the new class yet except the unit tests.

This is the second attempt at this CL, the first is at
http://r.android.com/169600. The problems was using sighandler_t
which is not available on mac. sig_t is used instead which is available
due to _GNU_SOURCE being defined in Android.mk, which causes
_BSD_SOURCE -> __USE_BSD -> sig_t to be defined. Nothing else has been
changed from the original CL.

Bug: http://b/23030641
Change-Id: I7bd7f5a82ad811fbca7a3eee1236d2c55ae57c48

8 years agoadb: refactor _is_valid_ack_reply_fd
Spencer Low [Mon, 7 Sep 2015 23:20:13 +0000 (16:20 -0700)]
adb: refactor _is_valid_ack_reply_fd

Visual Studio's 'jump to reference' feature couldn't parse
adb_commandline() because I used an #ifdef in the middle of an if
statement, so this refactors the code into a separate helper function. I
just copied the code and inverted the comparisons.

No need for sysdeps since this is pretty minor.

Change-Id: Ifd5c62b0b505080ada6db5cc19739c6f07b94de9
Signed-off-by: Spencer Low <CompareAndSwap@gmail.com>
8 years agoMerge "Revert "adb: create shell protocol class.""
David Pursell [Sun, 6 Sep 2015 02:34:02 +0000 (02:34 +0000)]
Merge "Revert "adb: create shell protocol class.""

8 years agoRevert "adb: create shell protocol class."
David Pursell [Sun, 6 Sep 2015 01:18:47 +0000 (01:18 +0000)]
Revert "adb: create shell protocol class."

This CL broke the mac build. I'll revert for now and take a look at how to get it working next week.

This reverts commit 73096f2e1d87da571187515af6aa7c2171a70693.

Change-Id: Icb3e015250bcbbc69a45675a1358699ebe01e77b

8 years agoMerge "adb: `features` passes transport features."
David Pursell [Sat, 5 Sep 2015 00:01:27 +0000 (00:01 +0000)]
Merge "adb: `features` passes transport features."

8 years agoMerge changes from topic 'adb_shell_prework'
David Pursell [Fri, 4 Sep 2015 23:54:19 +0000 (23:54 +0000)]
Merge changes from topic 'adb_shell_prework'

* changes:
  adb: create shell protocol class.
  adb: refactor subprocess code.
  adb: move shell service to a separate file.

8 years agoadb: `features` passes transport features.
David Pursell [Fri, 4 Sep 2015 23:40:30 +0000 (16:40 -0700)]
adb: `features` passes transport features.

`adb features` previously returned a list of host features which was
not terribly useful. This CL changes functionality to return the
transport features instead using the standard targeting args:
  $ adb features  # default target.
  $ adb -e features
  $ adb -s 123456 features

Also adds a "check-feature" service which is currently unused but will
allow the adb client to easily check for a specific feature.

Bug: http://b/23824036
Change-Id: Ibc0c420c75f73d363f3bba7705af616ba2059348

8 years agoAdd ParseInt (and ParseUint).
Elliott Hughes [Fri, 4 Sep 2015 23:26:51 +0000 (16:26 -0700)]
Add ParseInt (and ParseUint).

strtol and family are hard to use correctly, and most callers don't
even try.

Change-Id: I2833622a92cccd4662c0c5bdbbef5eeb4e496914

8 years agoRemove HOST_OS==windows check
Dan Willemsen [Fri, 4 Sep 2015 03:29:56 +0000 (20:29 -0700)]
Remove HOST_OS==windows check

With the HOST_CROSS_OS build system change, LOCAL_MULTILIB := first now
behaves the same way.

Change-Id: I03294403e5a106a53d4a0d48b176434221284901

8 years agoadb: create shell protocol class.
David Pursell [Mon, 31 Aug 2015 22:36:18 +0000 (15:36 -0700)]
adb: create shell protocol class.

Adds a new class ShellProtocol to help read and write data with
`adb shell`. This will allow splitting streams and sending out-of-band
data such as exit codes.

Nothing uses the new class yet except the unit tests.

Bug: http://b/23030641

Change-Id: Ieb02e127095c6dda25b7cb188a2e599173fd97e6

8 years agoadb: refactor subprocess code.
David Pursell [Sat, 29 Aug 2015 01:31:29 +0000 (18:31 -0700)]
adb: refactor subprocess code.

Refactor shell_service.cpp to remove dependencies on service.cpp and
combine some common logic between PTY and raw subprocesses.

This will make it easier to add additional common code paths for
the upcoming shell protocol.

Change-Id: I497d30dd388de61b6e68d9086dce38f33dd92876

8 years agoMerge "move uncrypt from init.rc to uncrypt.rc"
Tom Cherry [Fri, 4 Sep 2015 16:51:30 +0000 (16:51 +0000)]
Merge "move uncrypt from init.rc to uncrypt.rc"

8 years agoMerge "combine adbd.rc with init.usb.rc"
Tom Cherry [Fri, 4 Sep 2015 16:50:46 +0000 (16:50 +0000)]
Merge "combine adbd.rc with init.usb.rc"

8 years agoadb: move shell service to a separate file.
David Pursell [Fri, 28 Aug 2015 22:08:49 +0000 (15:08 -0700)]
adb: move shell service to a separate file.

Upcoming changes to the shell will require significant additions to
the subprocess code, and it will be cleaner if it's in a separate file.

The only functional change here is a new debug tag specifically for
the shell service. Everything else has been copied exactly as-is in
order to make it easier to determine what's changing in upcoming CLs.

Change-Id: I13bd4294059051ee10e0d0c6a06affd8eca62967

8 years agoMerge "logd: worst uid record watermark part four"
Mark Salyzyn [Fri, 4 Sep 2015 14:14:02 +0000 (14:14 +0000)]
Merge "logd: worst uid record watermark part four"

8 years agologd: worst uid record watermark part four
Mark Salyzyn [Thu, 3 Sep 2015 23:08:50 +0000 (16:08 -0700)]
logd: worst uid record watermark part four

With part deux we caused an apparent regression by not checking for
stale recorded iterators. This checking was on-purpose bypassesed
when leading prune entries were to be deleted without touching the
statistics engine due to an in-place merge.

Part deux had us leaving iterators we were not focussed on untouched
which in turn because they were left behind, had a much higher
likelihood of being deleted without touching the statistics engine.

Perform the check every delete.

Bug: 23789348
Change-Id: Idc6cc23d1f9e3b6cd9a083139a0de59479fbfe08

8 years agomove uncrypt from init.rc to uncrypt.rc
Tom Cherry [Thu, 3 Sep 2015 23:31:50 +0000 (16:31 -0700)]
move uncrypt from init.rc to uncrypt.rc

Move uncrypt from /init.rc to /system/etc/init/uncrypt.rc using the
LOCAL_INIT_RC mechanism

Bug 23186545

Change-Id: Ibd838dd1d250c0e6536e44b69f11fb5ed42ba10b

8 years agocombine adbd.rc with init.usb.rc
Tom Cherry [Thu, 3 Sep 2015 23:14:51 +0000 (16:14 -0700)]
combine adbd.rc with init.usb.rc

init.usb.rc and adbd.rc contain similar contents and belong in the same
file.

This file also belongs on the ramdisk as adbd is on the ramdisk, not the
system partition, therefore resolving to keep init.usb.rc in its current
location and combining the contents of adbd.rc is the best approach

Change-Id: I430f8fea58694679e7b8b7be69ce87daadd616f4

8 years agoMerge "move init.trace.rc to frameworks/native"
Tom Cherry [Thu, 3 Sep 2015 21:52:44 +0000 (21:52 +0000)]
Merge "move init.trace.rc to frameworks/native"

8 years agoMerge "Improve adb sync_send error reporting."
Elliott Hughes [Thu, 3 Sep 2015 21:25:13 +0000 (21:25 +0000)]
Merge "Improve adb sync_send error reporting."

8 years agomove init.trace.rc to frameworks/native
Tom Cherry [Thu, 3 Sep 2015 21:18:22 +0000 (14:18 -0700)]
move init.trace.rc to frameworks/native

init.trace.rc will be renamed to atrace.rc and use the LOCAL_INIT_RC
mechanism to be included on /system appropriately.

Bug 23186545

Change-Id: I55c37d3ff98c9ac10e6c1a713fadc7eb37346195

8 years agoMerge "Add a logging handler on timeout."
Christopher Ferris [Thu, 3 Sep 2015 21:18:23 +0000 (21:18 +0000)]
Merge "Add a logging handler on timeout."

8 years agoMerge "Lose ls to toybox."
Elliott Hughes [Thu, 3 Sep 2015 20:58:58 +0000 (20:58 +0000)]
Merge "Lose ls to toybox."

8 years agoImprove adb sync_send error reporting.
Elliott Hughes [Thu, 3 Sep 2015 18:06:00 +0000 (11:06 -0700)]
Improve adb sync_send error reporting.

Bug: http://b/23786900
Change-Id: I71f10de8d767eaf8bf0f5d9b8c304527e2b953ff

8 years agoAdd a logging handler on timeout.
Christopher Ferris [Thu, 3 Sep 2015 18:25:55 +0000 (11:25 -0700)]
Add a logging handler on timeout.

If the signal handler doesn't fire in the given time when trying to unwind
a thread, put on a logging handler. This prevents crashes if the signal
does eventually fire.

Bug: 23783762
Change-Id: Ib7abb36b71d079a7043117697c41b535319586fd

8 years agoMerge "Revert "metricsd: Collect generic stats about the system.""
Bill Yi [Thu, 3 Sep 2015 19:27:16 +0000 (19:27 +0000)]
Merge "Revert "metricsd: Collect generic stats about the system.""

8 years agoRevert "metricsd: Collect generic stats about the system."
Bill Yi [Thu, 3 Sep 2015 19:18:56 +0000 (19:18 +0000)]
Revert "metricsd: Collect generic stats about the system."

This reverts commit 90b02cd46d8b9b4c80f99022a685e3a1ae2504a4.

Change-Id: I9950c688433e99b0bc4745f02e2f9ae66f3b5578

8 years agoMerge "adb: clean up debug tracing a little."
Yabin Cui [Thu, 3 Sep 2015 17:32:44 +0000 (17:32 +0000)]
Merge "adb: clean up debug tracing a little."

8 years agoMerge "metricsd: Log the histogram name to hash mapping."
Bertrand Simonnet [Thu, 3 Sep 2015 17:29:22 +0000 (17:29 +0000)]
Merge "metricsd: Log the histogram name to hash mapping."

8 years agoMerge "metricsd: Collect generic stats about the system."
Bertrand Simonnet [Thu, 3 Sep 2015 17:28:52 +0000 (17:28 +0000)]
Merge "metricsd: Collect generic stats about the system."

8 years agoMerge "Use CAP_MASK_LONG for file capabilities."
Jorge Lucangeli Obes [Thu, 3 Sep 2015 15:48:01 +0000 (15:48 +0000)]
Merge "Use CAP_MASK_LONG for file capabilities."

8 years agoMerge "metricsd: Remove unused constant."
Elliott Hughes [Thu, 3 Sep 2015 04:13:27 +0000 (04:13 +0000)]
Merge "metricsd: Remove unused constant."

8 years agometricsd: Remove unused constant.
Bertrand SIMONNET [Thu, 3 Sep 2015 03:49:38 +0000 (20:49 -0700)]
metricsd: Remove unused constant.

Change-Id: Id151c4a7a091ee9cb07fa7c6188d162cf342d70e

8 years agoadb: clean up debug tracing a little.
Yabin Cui [Thu, 3 Sep 2015 00:44:28 +0000 (17:44 -0700)]
adb: clean up debug tracing a little.

Always use LOG() for debug tracing.
Remove useless D_lock. I believe it is useless to lock just before and after fprintf.

I verified the log output both on host and on device. The output looks fine to me.

Change-Id: I96ccfe408ff56864361551afe9ad464d197ae104

8 years agoMerge "Remove USE_MINGW/CYGWIN; Whitelist windows modules"
Dan Willemsen [Thu, 3 Sep 2015 00:32:09 +0000 (00:32 +0000)]
Merge "Remove USE_MINGW/CYGWIN; Whitelist windows modules"

8 years agoUse CAP_MASK_LONG for file capabilities.
Jorge Lucangeli Obes [Wed, 2 Sep 2015 23:19:59 +0000 (16:19 -0700)]
Use CAP_MASK_LONG for file capabilities.

Extract the |1ULL << $CAP_NAME| construct to a macro, to avoid
repeating it.

Change-Id: I9312c27130d7e6c5b6ab3b4cc5c70a6b98378b98

8 years agoRemove USE_MINGW/CYGWIN; Whitelist windows modules
Dan Willemsen [Thu, 13 Aug 2015 21:43:34 +0000 (14:43 -0700)]
Remove USE_MINGW/CYGWIN; Whitelist windows modules

CYGWIN is not supported, USE_MINGW and HOST_OS==windows are being
replaced with LOCAL_..._windows variables.

Bug: 23566667
Change-Id: I3e4a1e4097dc994cf5abdce6939e83a91758fd75

8 years agometricsd: Log the histogram name to hash mapping.
Bertrand SIMONNET [Wed, 2 Sep 2015 22:07:10 +0000 (15:07 -0700)]
metricsd: Log the histogram name to hash mapping.

When running the metrics_daemon in verbose mode, log the histogram name
along with the hash name.
This is useful when debugging as the protobuf message only contains the
hash of the name.

Change-Id: Ifea7edce55d62d30994ec7b75bb8728f6a0c40e8

8 years agometricsd: Collect generic stats about the system.
Bertrand SIMONNET [Tue, 25 Aug 2015 21:16:02 +0000 (14:16 -0700)]
metricsd: Collect generic stats about the system.

Collect memory usage and disk IO statistics periodically.

BUG: 22953719

Change-Id: I2e35d4800ddc684284969e6a58a6f50497086b69

8 years agoMerge "crash_reporter: Call dbus-send using chromeos::ProcessImpl"
Steve Fung [Wed, 2 Sep 2015 21:33:29 +0000 (21:33 +0000)]
Merge "crash_reporter: Call dbus-send using chromeos::ProcessImpl"

8 years agoMerge "metricsd: Fix style issues."
Bertrand Simonnet [Wed, 2 Sep 2015 21:28:11 +0000 (21:28 +0000)]
Merge "metricsd: Fix style issues."

8 years agoMerge "metricsd: Make the unit tests pass."
Bertrand Simonnet [Wed, 2 Sep 2015 21:26:40 +0000 (21:26 +0000)]
Merge "metricsd: Make the unit tests pass."

8 years agometricsd: Fix style issues.
Bertrand SIMONNET [Tue, 25 Aug 2015 21:11:43 +0000 (14:11 -0700)]
metricsd: Fix style issues.

This CL:
* removes dead code.
* converts constants static fields into proper constants.
* converts to C++/libchrome some of the parsing logic.

BUG: 22953719

Change-Id: Ief01178c6c268f8ae3690ad9deef42cfb43b2b75

8 years agometricsd: Make the unit tests pass.
Bertrand SIMONNET [Mon, 31 Aug 2015 18:11:57 +0000 (11:11 -0700)]
metricsd: Make the unit tests pass.

This cleans up the unit tests and update them to pass.

Cleaned up:
* removed the irrelevant bits.
* Used ScopedTempDir for all test specific files (instead of the current
  directory).
* Update some objects to make them more easily testable.
* Group all the test in a single binary and use bionic's test runner.

BUG: 23682444
Change-Id: I289e3a5ff89968fdecd4a156e93bc38bbc25f58b

8 years agocrash_reporter: Call dbus-send using chromeos::ProcessImpl
Steve Fung [Tue, 1 Sep 2015 21:04:48 +0000 (14:04 -0700)]
crash_reporter: Call dbus-send using chromeos::ProcessImpl

Convert the call to dbus-send from system() to chromeos::ProcessImpl
so that the shell_exec selinux policy can be removed.

Bug: 23280203
Change-Id: I692ebecf5b7f0611de252225cedabcdefd56dff8

8 years agoMerge "init: Update readme.txt to reflect recent changes to init."
Tom Cherry [Wed, 2 Sep 2015 19:28:00 +0000 (19:28 +0000)]
Merge "init: Update readme.txt to reflect recent changes to init."

8 years agoMerge "Add a tag for tracing system server."
Yasuhiro Matsuda [Wed, 2 Sep 2015 12:54:23 +0000 (12:54 +0000)]
Merge "Add a tag for tracing system server."

8 years agoinit: Update readme.txt to reflect recent changes to init.
Tom Cherry [Tue, 1 Sep 2015 21:49:38 +0000 (14:49 -0700)]
init: Update readme.txt to reflect recent changes to init.

Updates are as follows:

A detailed explanation of event triggers and property triggers
including how they can now be used

A new section describing .rc files, their locations, and the
intentions for each of these locations

A new section describing the import keyword and how it is not a
command but rather its own section

Removal of deprecated or incorrect text

Change-Id: If0a37375ac92a857900f3303ada4ba742360daff

8 years agoMerge "adb/base win32 tests: fix comment and open() flags"
Elliott Hughes [Tue, 1 Sep 2015 22:03:41 +0000 (22:03 +0000)]
Merge "adb/base win32 tests: fix comment and open() flags"

8 years agoadb/base win32 tests: fix comment and open() flags
Spencer Low [Tue, 1 Sep 2015 21:57:58 +0000 (14:57 -0700)]
adb/base win32 tests: fix comment and open() flags

Match base's use of O_BINARY.

Change-Id: I930b5c8fddde20966580069f2e681b99cb26f1a3
Signed-off-by: Spencer Low <CompareAndSwap@gmail.com>
8 years agoMerge "init: Use classes for parsing and clean up memory allocations"
Tom Cherry [Tue, 1 Sep 2015 21:35:45 +0000 (21:35 +0000)]
Merge "init: Use classes for parsing and clean up memory allocations"

8 years agoMerge "Use O_BINARY in base/file for Windows."
Elliott Hughes [Tue, 1 Sep 2015 21:13:33 +0000 (21:13 +0000)]
Merge "Use O_BINARY in base/file for Windows."

8 years agoUse O_BINARY in base/file for Windows.
Elliott Hughes [Tue, 1 Sep 2015 20:35:44 +0000 (13:35 -0700)]
Use O_BINARY in base/file for Windows.

This matches the behavior of the google3/Chrome APIs. It's probably what you
want in all cases except where you plan on calling Split(content, "\n"), but
we should probably have something like simpleperf's LineReader for that
anyway.

Change-Id: I1a128ed8c328bc95b0b2ef4068a65a8562721418

8 years agoinit: Use classes for parsing and clean up memory allocations
Tom Cherry [Wed, 26 Aug 2015 18:43:36 +0000 (11:43 -0700)]
init: Use classes for parsing and clean up memory allocations

Create a Parser class that uses multiple SectionParser interfaces to
handle parsing the different sections of an init rc.

Create an ActionParser and ServiceParser that implement SectionParser
and parse the sections corresponding to Action and Service
classes.

Remove the legacy keyword structure and replace it with std::map's
that map keyword -> (minimum args, maximum args, function pointer) for
Commands and Service Options.

Create an ImportParser that implements SectionParser and handles the
import 'section'.

Clean up the unsafe memory handling of the Action class by using
std::unique_ptr.

Change-Id: Ic5ea5510cb956dbc3f78745a35096ca7d6da7085

8 years agoMerge "fs_mgr: Add support for A/B partitions"
Daniel Rosenberg [Tue, 1 Sep 2015 19:24:09 +0000 (19:24 +0000)]
Merge "fs_mgr: Add support for A/B partitions"

8 years agoMerge "adb: add unit test for fdevent."
Yabin Cui [Mon, 31 Aug 2015 22:40:04 +0000 (22:40 +0000)]
Merge "adb: add unit test for fdevent."

8 years agofs_mgr: Add support for A/B partitions
Daniel Rosenberg [Thu, 27 Aug 2015 20:42:20 +0000 (13:42 -0700)]
fs_mgr: Add support for A/B partitions

Allow partitions to be marked as A/B partitions
using the slotselect flag in fstab. The partitions
can be identified by appending the correct suffix
to the block device listed in the fstab. The suffix
is provided by the bootloader through a command line
parameter or the device tree, and can be found in
ro.boot.slot_suffix or read from the boot_control HAL.

Change-Id: I6846d80e857f95bfb8f282f4ab81167394613bbe
Signed-off-by: Daniel Rosenberg <drosen@google.com>
8 years agoMerge "adb: improve names for transport threads."
Yabin Cui [Mon, 31 Aug 2015 21:21:21 +0000 (21:21 +0000)]
Merge "adb: improve names for transport threads."

8 years agoMerge "logd: worst uid record watermark part three"
Mark Salyzyn [Mon, 31 Aug 2015 20:52:29 +0000 (20:52 +0000)]
Merge "logd: worst uid record watermark part three"

8 years agologd: worst uid record watermark part three
Mark Salyzyn [Mon, 24 Aug 2015 20:43:27 +0000 (13:43 -0700)]
logd: worst uid record watermark part three

Regression that cause records to be preserved for more than a day.

Bug: 23681639
Bug: 23685592
Change-Id: I5e4393c8e3ed935790994c77ec51dc6512a6daa6

8 years agoMerge "adb: remove workaround for b/6558362."
Yabin Cui [Mon, 31 Aug 2015 20:35:45 +0000 (20:35 +0000)]
Merge "adb: remove workaround for b/6558362."

8 years agoadb: improve names for transport threads.
Yabin Cui [Mon, 31 Aug 2015 18:50:24 +0000 (11:50 -0700)]
adb: improve names for transport threads.

The old names seems confusing. output_thread was reading remote data and writing to
local sockets. input_thread was reading local sockets data and writing to remote.
This change tries to make it clear by renaming output_thread to read_transport thread,
and renaming input_thread to write_transport thread.

Change-Id: I2e7b4cde7a94d436f3745e9e3ab10780e7caa8ac

8 years agoLose ls to toybox.
Elliott Hughes [Mon, 31 Aug 2015 19:45:47 +0000 (12:45 -0700)]
Lose ls to toybox.

Bug: http://b/23040458
Change-Id: I0e9f89b1169df409a38a2134ac2cb9edd0421be3

8 years agoadb: remove workaround for b/6558362.
Yabin Cui [Mon, 31 Aug 2015 19:05:21 +0000 (12:05 -0700)]
adb: remove workaround for b/6558362.

I believe the problem has been fixed in https://android-review.googlesource.com/#/c/168412/.
So it's time to remove the workaround.

Bug: 6558362
Change-Id: I399c18eda0693f3c51feac07ff59a0a4b5558128

8 years agoMerge "Lose uptime to toybox."
Elliott Hughes [Mon, 31 Aug 2015 18:48:31 +0000 (18:48 +0000)]
Merge "Lose uptime to toybox."

8 years agoMerge "Distinguish transport threads."
Elliott Hughes [Mon, 31 Aug 2015 18:00:44 +0000 (18:00 +0000)]
Merge "Distinguish transport threads."

8 years agoDistinguish transport threads.
Elliott Hughes [Mon, 31 Aug 2015 17:46:05 +0000 (10:46 -0700)]
Distinguish transport threads.

Use "<-" and "->" to work around Linux's very short thread name limit.

Bug: http://b/23423333
Change-Id: I9f3f096415b47162dacb660cd0a97ac7ff6107e6

8 years agoMerge "adb: set thread names (linux & mac)"
Siva Velusamy [Mon, 31 Aug 2015 17:37:31 +0000 (17:37 +0000)]
Merge "adb: set thread names (linux & mac)"

9 years agoadb: set thread names (linux & mac)
Siva Velusamy [Fri, 28 Aug 2015 23:37:29 +0000 (16:37 -0700)]
adb: set thread names (linux & mac)

Bug: 23423333
Change-Id: I0069f32ddbae2a10fb130064f721facf45b2cc09

9 years agoadb: add unit test for fdevent.
Yabin Cui [Fri, 28 Aug 2015 22:44:27 +0000 (15:44 -0700)]
adb: add unit test for fdevent.

Change-Id: Ic26cda5d8e84425bc60ce36bc686bb6917c4ca3c

9 years agoMerge "fatal and fatal_errno should be noreturn."
Elliott Hughes [Sat, 29 Aug 2015 02:22:18 +0000 (02:22 +0000)]
Merge "fatal and fatal_errno should be noreturn."

9 years agoMerge "adb: clean up transport disconnect operations."
Yabin Cui [Sat, 29 Aug 2015 02:21:46 +0000 (02:21 +0000)]
Merge "adb: clean up transport disconnect operations."

9 years agofatal and fatal_errno should be noreturn.
Elliott Hughes [Sat, 29 Aug 2015 02:13:10 +0000 (19:13 -0700)]
fatal and fatal_errno should be noreturn.

Change-Id: I9c5d9cb5ed743d13e65112a111cc9544ec5da339

9 years agoadb: clean up transport disconnect operations.
Yabin Cui [Fri, 28 Aug 2015 22:09:44 +0000 (15:09 -0700)]
adb: clean up transport disconnect operations.

Move operations from global functions into member functions.
Add unit test.

Change-Id: Id4543d8e78541eb08c8e629f180c605c699737ec

9 years agoMerge "Improve adb tracing."
Elliott Hughes [Fri, 28 Aug 2015 21:56:46 +0000 (21:56 +0000)]
Merge "Improve adb tracing."

9 years agoImprove adb tracing.
Elliott Hughes [Fri, 28 Aug 2015 21:46:33 +0000 (14:46 -0700)]
Improve adb tracing.

The existing format was unreadable; putting the pid and tid first helps
somewhat. Also remove the unused qemu tracing which wasn't called anywhere.

Change-Id: I37ef3c556fe17b237ba1d8ca3216e2155ce5d0de