OSDN Git Service

android-x86/system-core.git
8 years agoMerge "metricsd: Use the metrics directory everywhere."
Bertrand Simonnet [Mon, 14 Sep 2015 22:48:25 +0000 (22:48 +0000)]
Merge "metricsd: Use the metrics directory everywhere."

8 years agoMerge "crash_reporter: Read crash server from property"
Steve Fung [Mon, 14 Sep 2015 22:06:19 +0000 (22:06 +0000)]
Merge "crash_reporter: Read crash server from property"

8 years agometricsd: Use the metrics directory everywhere.
Bertrand SIMONNET [Wed, 9 Sep 2015 17:38:20 +0000 (10:38 -0700)]
metricsd: Use the metrics directory everywhere.

Instead of passing different filenames around, only rely on the metrics
directory and infer the filepath from it. This makes testing easier.

BUG: 23939404
TEST: unit tests.

Change-Id: I79086acc3a546464114fa8ec4656ec04e1c43e35

8 years agocrash_reporter: Read crash server from property
Steve Fung [Sat, 12 Sep 2015 09:52:06 +0000 (02:52 -0700)]
crash_reporter: Read crash server from property

Read the crash server URL from the crash_reporter.server
property.  If it is not set, return a configuration error.

Bug: 22874192
Change-Id: Iac341b6352fe9c1b54cd2e8561ed4a5bbe8ddddc

8 years agoMerge "crash_reporter: Fix a couple crash_sender issues"
Steve Fung [Mon, 14 Sep 2015 20:08:43 +0000 (20:08 +0000)]
Merge "crash_reporter: Fix a couple crash_sender issues"

8 years agoMerge "metricsd: Collect generic stats about the system."
Bertrand Simonnet [Mon, 14 Sep 2015 18:44:24 +0000 (18:44 +0000)]
Merge "metricsd: Collect generic stats about the system."

8 years agoMerge changes from topic 'adb_shell'
David Pursell [Mon, 14 Sep 2015 18:39:37 +0000 (18:39 +0000)]
Merge changes from topic 'adb_shell'

* changes:
  adb: add client side shell protocol and enable.
  adb: implement shell protocol.

8 years agoMerge "Lose du to toybox."
Elliott Hughes [Mon, 14 Sep 2015 17:50:09 +0000 (17:50 +0000)]
Merge "Lose du to toybox."

8 years agoLose du to toybox.
Elliott Hughes [Mon, 14 Sep 2015 17:37:05 +0000 (10:37 -0700)]
Lose du to toybox.

Change-Id: Ib240f74990274027258a454d3c63202791fcdb0b

8 years agoMerge "fs_mgr: Error out if unable to determine slot_suffix"
David Zeuthen [Mon, 14 Sep 2015 15:33:35 +0000 (15:33 +0000)]
Merge "fs_mgr: Error out if unable to determine slot_suffix"

8 years agocrash_reporter: Fix a couple crash_sender issues
Steve Fung [Mon, 14 Sep 2015 09:56:07 +0000 (02:56 -0700)]
crash_reporter: Fix a couple crash_sender issues

- Added grep to the list of required modules.
- Run crash_sender with the 'system' group to allow calls to
  metrics_client to read both metrics files owned by system and
  crash_reporter files owned by root.
- Fix periodic_scheduler's check delay to actually be 5 minutes.

Bug: 23122375
Change-Id: Iff214c4e591a676a516162a92ea5aedcf0824f46

8 years agoMerge "Add libbinderwrapper."
Daniel Erat [Sat, 12 Sep 2015 20:37:05 +0000 (20:37 +0000)]
Merge "Add libbinderwrapper."

8 years agoMerge "libbase_test: get it building for Windows"
Elliott Hughes [Sat, 12 Sep 2015 03:16:51 +0000 (03:16 +0000)]
Merge "libbase_test: get it building for Windows"

8 years agolibbase_test: get it building for Windows
Spencer Low [Sat, 12 Sep 2015 03:01:29 +0000 (20:01 -0700)]
libbase_test: get it building for Windows

Add to whitelist.

For some reason, when compiling, parseint_test.cpp would encounter
errors like the following:

host cross C++: host_cross_libbase_test <= system/core/base/parseint_test.cpp
In file included from external/gtest/include/gtest/gtest.h:1929:0,
                 from system/core/base/parseint_test.cpp:19:
system/core/base/parseint_test.cpp: In member function ‘virtual void parseint_signed_smoke_Test::TestBody()’:
external/gtest/include/gtest/internal/gtest-internal.h:133:55: error: converting ‘false’ to pointer type for argument 1 of ‘char testing::internal::IsNullLiteralHelper(testing::internal::Secret*)’ [-Werror=conversion-null]
     (sizeof(::testing::internal::IsNullLiteralHelper(x)) == 1)
                                                       ^
external/gtest/include/gtest/gtest_pred_impl.h:77:52: note: in definition of macro ‘GTEST_ASSERT_’
   if (const ::testing::AssertionResult gtest_ar = (expression)) \
                                                    ^
external/gtest/include/gtest/gtest_pred_impl.h:166:3: note: in expansion of macro ‘GTEST_PRED_FORMAT2_’
   GTEST_PRED_FORMAT2_(pred_format, v1, v2, GTEST_FATAL_FAILURE_)
   ^
external/gtest/include/gtest/gtest.h:1993:3: note: in expansion of macro ‘ASSERT_PRED_FORMAT2’
   ASSERT_PRED_FORMAT2(::testing::internal:: \
   ^
external/gtest/include/gtest/gtest.h:1994:32: note: in expansion of macro ‘GTEST_IS_NULL_LITERAL_’
                       EqHelper<GTEST_IS_NULL_LITERAL_(expected)>::Compare, \
                                ^
external/gtest/include/gtest/gtest.h:2011:32: note: in expansion of macro ‘GTEST_ASSERT_EQ’
 # define ASSERT_EQ(val1, val2) GTEST_ASSERT_EQ(val1, val2)
                                ^
system/core/base/parseint_test.cpp:23:3: note: in expansion of macro ‘ASSERT_EQ’
   ASSERT_EQ(false, android::base::ParseInt("x", &i));
   ^

For whatever reason, the gcc for Windows isn't handling the template
metaprogramming correctly, so to work-around the issue, I
search-and-replaced "ASSERT_EQ(false, " to "ASSERT_FALSE(" and
"ASSERT_EQ(true, " to "ASSERT_TRUE(" and that seems to compile just fine
for Linux and Windows (and the tests pass on both platforms).

Change-Id: I05132909d1f4b18afff23139652a218649689f2d
Signed-off-by: Spencer Low <CompareAndSwap@gmail.com>
8 years agoMerge "adb: fix shell_service_protocol_test for Windows."
David Pursell [Sat, 12 Sep 2015 01:30:20 +0000 (01:30 +0000)]
Merge "adb: fix shell_service_protocol_test for Windows."

8 years agoadb: fix shell_service_protocol_test for Windows.
David Pursell [Fri, 11 Sep 2015 23:06:59 +0000 (16:06 -0700)]
adb: fix shell_service_protocol_test for Windows.

Adds missing #ifdef guards to shell_service_protocol_test.cpp so the
test compiles on Windows.

Also fixes a bug in Windows socketpair write implementation. Previously
it was only checking for a closed pipe if the write happened to block.
This adds an additional pre-check to exit immediately on a closed pipe.

These two changes allow the test to compile and pass on Windows.

Change-Id: Ib8853ed72f015fc0d623da47c32982cb3ffa4a3d

8 years agoMerge "Fix (Windows) build."
Elliott Hughes [Fri, 11 Sep 2015 23:18:48 +0000 (23:18 +0000)]
Merge "Fix (Windows) build."

8 years agoFix (Windows) build.
Elliott Hughes [Fri, 11 Sep 2015 23:16:53 +0000 (16:16 -0700)]
Fix (Windows) build.

Change-Id: Ib9afd101d255d748ba6c15ed8075f3d10338c95c

8 years agoMerge "fix adb_test Windows build"
Elliott Hughes [Fri, 11 Sep 2015 23:13:40 +0000 (23:13 +0000)]
Merge "fix adb_test Windows build"

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 agofix adb_test Windows build
Spencer Low [Tue, 8 Sep 2015 06:39:02 +0000 (23:39 -0700)]
fix adb_test Windows build

adb/Android.mk: adb_test should build on Windows (and Darwin), so add to
the whitelist.

Change-Id: I778f6a7dff4caec92c48e0957591abf32f86ab1b
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 agoadb: add client side shell protocol and enable.
David Pursell [Wed, 9 Sep 2015 00:17:02 +0000 (17:17 -0700)]
adb: add client side shell protocol and enable.

Adds the shell protocol functionality to the client side and enables it
if the transport supports the feature.

Bug:http://b/23031026
Change-Id: I9abe1c8b1d39f8dd09666321b1c761ad708a8854

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 agoadb: implement shell protocol.
David Pursell [Mon, 31 Aug 2015 17:42:13 +0000 (10:42 -0700)]
adb: implement shell protocol.

Adds functionality for handling stdin/stdout/stderr streams and exit
codes using the shell protocol.

This CL just contains implementation for adbd which will not yet be
enabled. Once we have the ability to query transport features from the
adb client, another CL will add the implementation for the client side
and update the feature list to turn this on.

Note: this CL must be submitted together with a minadbd CL to update
the service_to_fd() function signature.

Bug: http://b/23030641

Change-Id: Ibed55e9c1946d8a35190696163ff63e8fb880238

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 agofs_mgr: Error out if unable to determine slot_suffix
David Zeuthen [Wed, 9 Sep 2015 22:15:11 +0000 (18:15 -0400)]
fs_mgr: Error out if unable to determine slot_suffix

Instead of falling back to suffix _a, we now error out if neither the
kernel commandline nor the misc partition specifies the suffix. It's
cleaner this way.

Change-Id: I3f58928a664433504ebdf8d0ee05a319be5097cf

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 agoAdd libbinderwrapper.
Daniel Erat [Tue, 8 Sep 2015 19:20:02 +0000 (13:20 -0600)]
Add libbinderwrapper.

Add a library that wraps libbinder to make it possible to
write tests for native code that communicates via binder.

Bug: 23791723
Change-Id: I3c842413e0f07dc252040c042d664031b0354353

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 agometricsd: Collect generic stats about the system.
Bertrand SIMONNET [Tue, 8 Sep 2015 17:13:35 +0000 (10:13 -0700)]
metricsd: Collect generic stats about the system.

Collect memory usage and disk IO statistics periodically.
Also update the Android.mk file to use clang by default.

BUG: 22953719
TEST: builds on external and internal branches.

Change-Id: I1ee3683d014586cf7f711d2e090a99429752063c

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"