Commit graph

31196 commits

Author SHA1 Message Date
Mark Salyzyn
5e001776f4 logd: wakeup wrap timeout if realtime changes drastically
--wrap flag in logcat translates directly to the mTimeout inside logd,
the value set is ANDROID_LOG_WRAP_DEFAULT_TIMEOUT defined in
<log/log_read.h> as 7200 or 2 hours.  For a non blocking read with
a selected timeout, the logger waits until either the log buffer is
about to 'wrap' and prune the log entry, or at the specified timeout.
Non blocking in the logger context means that when there are no more
log entries, the socket is closed.

clock_gettime(CLOCK_REALTIME) is UTC 1970 epoch *NIX time. Is only
affected for time updates, not timezone or daylight savings time.
If there is a large user initiated time change, both the log entries
and the timeout mentioned above really get called into question, so we
trigger a release of the logs for clarity.  This is so that the log
reader can handle the disruptively updated time, and can immediately
check the local time if necessary.

The logger has a 5 second window for entries to land in time sorted
order into the logging list.  This should offer the log reader some
differentiation between logging order sequence for monotonically
increasing time, and sequence order in the face of user initiated time
adjustments that break monotonicity.

This change is about major time adjustments that can cause Fear,
Uncertainty or Doubt about log entries.  By returning, immediate action
can be taken, rather than having to comb through the logs with less
details about the time disruptions in hand.  The least it can do is
record what we have, and restart the call with a new tail time and
timeout.

Test: gTest liblog-unit-tests logcat-unit-test logd-unit-tests
Bug: 35373582
Change-Id: I92cac83be99d68634ffd4ebd2f3a3067cfd0e942
2017-03-17 14:17:55 +00:00
Mark Salyzyn
09d663229f logd: cap how far back in-place sort will go to 5 seconds
Add some deterministic behavior should the user change the hour
backwards when altering the device time, prevent sort-in-place
and cause the logger to land the new entries at the end.

Do not limit how far kernel logs can be sorted.

Test: gTest liblog-unit-tests logd-unit-tests logcat-unit-tests
Bug: 35373582
Change-Id: Ie897c40b97adf1e3996687a0e28c1199c41e0d0c
2017-03-17 14:17:38 +00:00
bowgotsai
5353833a21 Merge "fs_mgr: change the log level in fs_mgr_read_fstab_dt()" am: b280bb210b am: d141190210
am: 82bcc7b0ea

Change-Id: I39a1c5757596071b1d4f10cc9ca6c91c265139d9
2017-03-17 02:21:58 +00:00
bowgotsai
82bcc7b0ea Merge "fs_mgr: change the log level in fs_mgr_read_fstab_dt()" am: b280bb210b
am: d141190210

Change-Id: I3f7762598ea14d9777ec60b6c7afde49f4a5c033
2017-03-17 02:17:56 +00:00
bowgotsai
d141190210 Merge "fs_mgr: change the log level in fs_mgr_read_fstab_dt()"
am: b280bb210b

Change-Id: I26f24af7a57a2e23d49956e059a9fd377a6c2c34
2017-03-17 02:14:29 +00:00
Treehugger Robot
b280bb210b Merge "fs_mgr: change the log level in fs_mgr_read_fstab_dt()" 2017-03-17 02:12:36 +00:00
Jin Qian
4fc338e60b storaged: rewrite emmc info class
Test: adb logcat -d -b events | grep storaged_emmc_info
Bug: 36228467
Change-Id: Ib799e60ed65661a9fb99be8ad4c930f547339975
2017-03-16 16:12:55 -07:00
Brian Anderson
4e080e5128 Remove retire frame event.
Test: adb shell /data/nativetest/libgui_test/libgui_test
  --gtest_filter=*GetFrameTimestamps*

Change-Id: I9e7fa878fe7cc339d33c221d56b56cce1709aa74
2017-03-16 16:12:21 -07:00
Andrew Scull
164b70e927 Merge "Add eSE AID." am: e323976e74 am: 4614ba5134
am: 31a515bdcd

Change-Id: Iaf6592b934bf810d7a7b587a19fe4bf39016d22e
2017-03-16 18:10:22 +00:00
Andrew Scull
31a515bdcd Merge "Add eSE AID." am: e323976e74
am: 4614ba5134

Change-Id: I0c01a20e15bda8979cda473ffe255aabf61c8483
2017-03-16 18:06:51 +00:00
Andrew Scull
4614ba5134 Merge "Add eSE AID."
am: e323976e74

Change-Id: I0ce8f821fa1e2028a1d7a1275773b54bd250a612
2017-03-16 18:03:21 +00:00
Treehugger Robot
e323976e74 Merge "Add eSE AID." 2017-03-16 17:58:48 +00:00
Josh Gao
e345ce6060 Merge "crash_dump: fetch process/thread names before dropping privileges." am: 7390d96ff2 am: d8e854fdf1
am: e8a5c313b7

Change-Id: I1d65338aa9f121b1326cdb5fc64c49b55a72a59f
2017-03-16 17:55:14 +00:00
Josh Gao
e8a5c313b7 Merge "crash_dump: fetch process/thread names before dropping privileges." am: 7390d96ff2
am: d8e854fdf1

Change-Id: I5ae84b16287e9c88e73da1c250f574757e5ea635
2017-03-16 17:52:19 +00:00
Josh Gao
d8e854fdf1 Merge "crash_dump: fetch process/thread names before dropping privileges."
am: 7390d96ff2

Change-Id: If718a098680cf0fe6026ae1885f3a28363285ebc
2017-03-16 17:50:30 +00:00
Josh Gao
7390d96ff2 Merge "crash_dump: fetch process/thread names before dropping privileges." 2017-03-16 17:45:18 +00:00
Jeff Vander Stoep
13b8bd0175 Merge "init-debug.rc: don't mount debugfs" am: 54e7365fee am: 9a1ed6106d
am: 038a906997

Change-Id: Ie32933ee52b6b81c3b51adfbe93cf176b3805198
2017-03-16 17:41:48 +00:00
Jeff Vander Stoep
038a906997 Merge "init-debug.rc: don't mount debugfs" am: 54e7365fee
am: 9a1ed6106d

Change-Id: Ie200a8068cbab8fc6c2e3cd8d620ea792aa681ea
2017-03-16 17:39:19 +00:00
Jeff Vander Stoep
9a1ed6106d Merge "init-debug.rc: don't mount debugfs"
am: 54e7365fee

Change-Id: Ie8e0c959e21129dc883c9f8659ef75f05d0b5f2a
2017-03-16 17:36:18 +00:00
Treehugger Robot
54e7365fee Merge "init-debug.rc: don't mount debugfs" 2017-03-16 17:32:47 +00:00
Mark Salyzyn
f883804b56 Merge changes I2a073293,Ia55ef8b9,I79a385fc am: 82b5c619b8 am: 5a0afe7d27
am: 9f8a97ed0b

Change-Id: Iae26c69eb4ffdfdc3b20b1a841bfc67d768f33f1
2017-03-16 17:19:47 +00:00
Mark Salyzyn
9f8a97ed0b Merge changes I2a073293,Ia55ef8b9,I79a385fc am: 82b5c619b8
am: 5a0afe7d27

Change-Id: I7dca568166725342be1f8a2fcf7db7fa250ab394
2017-03-16 17:16:47 +00:00
Mark Salyzyn
5a0afe7d27 Merge changes I2a073293,Ia55ef8b9,I79a385fc
am: 82b5c619b8

Change-Id: Iec41ebf6c7cd0ade134e622e9dfec483491f9e9c
2017-03-16 17:14:18 +00:00
Treehugger Robot
82b5c619b8 Merge changes I2a073293,Ia55ef8b9,I79a385fc
* changes:
  logd: continue search out-of-order entries timestamp tail
  logd: drop mSequence from LogBufferElement
  logd: ensure LogBufferElement mSequence is monotonic
2017-03-16 17:09:35 +00:00
Mark Salyzyn
3b941d457b logd: continue search out-of-order entries timestamp tail
Regression from commit 8e8e8db549

For liblogcat reader -t or -T <timestamp> tail requests, continue
search for pertinent out-of-order entries for an additional 30 seconds
back into logging history to find a more inclusive starting point.

For example, if you have an out of order landing like
[..., 3, 6, 1, 8, 2, 5] and ask for 3 you used to get only 5, and now
you get 3, 6, 8, 5 as 'expected'

Test: gTest liblog-unit-tests logd-unit-tests logcat-unit-tests
Bug: 35373582
Change-Id: I2a0732933fa371aed383d49c8d48d01f33db2a79
2017-03-16 16:57:53 +00:00
Mark Salyzyn
5a34d6ea43 logd: drop mSequence from LogBufferElement
Use getRealTime() instead and leverage private liblog log_time
comparison and math functions.  This saves 8 bytes off each
element in the logging database.

Test: gTest liblog-unit-tests logd-unit-tests logcat-unit-tests
Bug: 35373582
Change-Id: Ia55ef8b95cbb2a841ccb1dae9a24f314735b076a
2017-03-16 08:22:00 -07:00
Mark Salyzyn
1d84f0b2af logd: ensure LogBufferElement mSequence is monotonic
- Improves accuracy of -t/-T '<timestamp>' behavior when out of order
  arrival of entries messes with mSequence as the list will now have
  monotonic sequence numbers enforced.
- Out of order time entries still remain because of reader requiring
  the ability to receive newly arrived old entries.
- -t/-T '<timestamp>' can still quit backward search prematurely
  because an old entry lands later in the list.
- Adjust insert in place algorithm from two loops of scan placement
  and then limit against watermark, into one that does all of that
  plus iteratively swap update the sequence numbers to set
  monotonicity.  Side effect will be that the read lock (which is
  actually the LogTimes lock) will be held longer while we search
  for a placement above the youngest LogTimes watermark.  We need
  to hold the read (LogTimes) lock because we may be altering the
  sequence numbers affecting -t/-T '<timestamp>' search.

Test: gTest logd-unit-tests liblog-unit-tests logcat-unit-tests
Bug: 35373582
Change-Id: I79a385fc149bac2179128b53d4c8f71e429181ae
2017-03-16 08:13:43 -07:00
Andrew Scull
b364328a59 Add eSE AID.
This is used by components that communicate with the embedded secure
element.

Test: Boot system with a daemon and device using this AID.
Bug: 35628284
Change-Id: I1fd1a300c69fefbd19fda69add5d3b098be873c2
2017-03-16 15:05:19 +00:00
TreeHugger Robot
6258cfee90 Merge "Formatting changes for TypeHelpers.h and Vectors.h" 2017-03-16 07:38:32 +00:00
Dimitry Ivanov
bd46cd9ef6 Merge "Add android::base::Realpath." am: b3fde950f2 am: 424bdf9ca1
am: 0c856b8a04

Change-Id: I9e5b080afec04f6ac76ff3767e3ce0fb0fb35d47
2017-03-16 07:02:50 +00:00
Dimitry Ivanov
0c856b8a04 Merge "Add android::base::Realpath." am: b3fde950f2
am: 424bdf9ca1

Change-Id: Icccf533964855a9df160b0562ae41d1a896f828a
2017-03-16 06:59:37 +00:00
Dimitry Ivanov
424bdf9ca1 Merge "Add android::base::Realpath."
am: b3fde950f2

Change-Id: If241249cb24ce43aa91e91008090700b14f3064d
2017-03-16 06:57:07 +00:00
Treehugger Robot
b3fde950f2 Merge "Add android::base::Realpath." 2017-03-16 06:53:00 +00:00
Josh Gao
57f58f8e4a crash_dump: fetch process/thread names before dropping privileges.
Processes that don't have dumpable set to 1 cannot have their
process/thread names read by processes that don't have all of their
capabilities. Fetch these names in crash_dump before dropping
privileges.

Bug: http://b/36237221
Test: debuggerd_test
Test: debuggerd -b `pidof android.hardware.bluetooth@1.0-service`
Change-Id: I174769e7b3c1ea9f11f9c8cbdff83028a4225783
2017-03-15 23:30:14 -07:00
Vishwath Mohan
fc3f57acbb Formatting changes for TypeHelpers.h and Vectors.h
This CL nukes all spurious whitespace in the two files.

Bug: 36219323
Test: Device builds and boots.
Test: All 98 libutils_tests pass
Change-Id: I8054a0f0ba5df95f5115dc06597eb9fd539da942
2017-03-15 22:48:27 -07:00
Dimitry Ivanov
840b6019c0 Add android::base::Realpath.
Bug: http://b/31396973
Test: libbase_test on host and device
Change-Id: I1e5f15c76227ec1c2128baa38eb454d347987703
2017-03-15 22:20:50 -07:00
Dan Willemsen
5dfa912f03 Merge "Enable more modules on linux_bionic builds" am: 75c414d1a3 am: 5bb9220b75
am: 5e30ce0ca0

Change-Id: I8d1ba8749e9c0e6433236b42bda7da5188e5f810
2017-03-16 02:40:00 +00:00
Dan Willemsen
5e30ce0ca0 Merge "Enable more modules on linux_bionic builds" am: 75c414d1a3
am: 5bb9220b75

Change-Id: I3dffb3e3ac95f8116321f165035a666645df34d0
2017-03-16 02:35:49 +00:00
Dan Willemsen
5bb9220b75 Merge "Enable more modules on linux_bionic builds"
am: 75c414d1a3

Change-Id: If8a08b3f080344e61ebf5a0555354edb95cfb92e
2017-03-16 02:33:19 +00:00
Treehugger Robot
75c414d1a3 Merge "Enable more modules on linux_bionic builds" 2017-03-16 02:27:54 +00:00
bowgotsai
172c1d8b6e fs_mgr: change the log level in fs_mgr_read_fstab_dt()
Devices having no early mount enabled won't have fstab in device tree.
Lower the log level to INFO when fstab is absent there.

Bug: 35811655
Test: boot into recovery mode in a device without fstab in dt
Change-Id: I4b1e0e6554f50b8118770d00aa8f54be86aca858
2017-03-16 10:25:39 +09:00
Mathias Agopian
bb82a5a53c Merge "Get rid of LinearTransform" 2017-03-16 00:51:34 +00:00
Dan Willemsen
e0cd1e043d Enable more modules on linux_bionic builds
Bug: 31559095
Test: Enable host bionic, run soong
Change-Id: Ib4ebd909322cf464b6a40040e4b60ece7d905b6f
2017-03-15 15:44:00 -07:00
Mathias Agopian
f520b73103 Get rid of LinearTransform
It had 3 clients
- one in vendor/google_athome which was disabled
- one in a device specific folder, which will die out
- and one in frameworks/base

This reverts commit 6c942304ed.

Test: compile/run
Bug: treble cleanup

Change-Id: Ia76009d550c294198c083cf89718bc498b5c9e3e
2017-03-15 14:16:13 -07:00
Mark Salyzyn
994754fa2a Merge "logcat: test: tail_# occasional failures" am: e7b335b471 am: a1f43ebf89
am: e8b5dca8c2

Change-Id: I0a47af262457d7de1d35d1e2dabfaf80fb70e4be
2017-03-15 19:14:11 +00:00
Mark Salyzyn
e8b5dca8c2 Merge "logcat: test: tail_# occasional failures" am: e7b335b471
am: a1f43ebf89

Change-Id: I9da3e1580387ec4636a65540ffe415c3537ff1ff
2017-03-15 19:09:26 +00:00
Mark Salyzyn
a1f43ebf89 Merge "logcat: test: tail_# occasional failures"
am: e7b335b471

Change-Id: I4176e5e0ef3f0e2b8bc0edc9c49410f516f371f6
2017-03-15 19:04:19 +00:00
Treehugger Robot
e7b335b471 Merge "logcat: test: tail_# occasional failures" 2017-03-15 18:55:26 +00:00
Elliott Hughes
819f34a7f3 Merge "Move "fastboot oem" to std::string." am: 54182110ae am: 3547ba5e3f
am: a251228645

Change-Id: Ie567c820645d7be77af2252404b4a2cf707030ac
2017-03-15 18:45:13 +00:00
Elliott Hughes
a251228645 Merge "Move "fastboot oem" to std::string." am: 54182110ae
am: 3547ba5e3f

Change-Id: I72c9ebde8b45df2e1fc9a3d303c0ab6547c6834b
2017-03-15 18:40:36 +00:00