<feed xmlns='http://www.w3.org/2005/Atom'>
<title>system_core/logd/LogStatistics.cpp, branch replicant-6.0</title>
<subtitle>system/core
</subtitle>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant/system_core/'/>
<entry>
<title>logd: optimize code hotspots</title>
<updated>2015-11-01T12:29:12+00:00</updated>
<author>
<name>Mark Salyzyn</name>
<email>salyzyn@google.com</email>
</author>
<published>2015-10-02T16:22:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant/system_core/commit/?id=75e80775d98d1d6e4fd3e6f3a8059a23413e031e'/>
<id>75e80775d98d1d6e4fd3e6f3a8059a23413e031e</id>
<content type='text'>
Discovered that we had a few libc hotspots. Adjust code to generally
reduce or nullify the number of calls to malloc, free, strlen,
strcmp, strncmp, memcmp &amp; strncasecmp. Total gain looks to be about
3% of logd's processing time. malloc still contributes to 3%, but all
others are now total 0.5%.

Bug: 23685592
Change-Id: Ife721121667969260cdb8b055524ae90f5911278
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Discovered that we had a few libc hotspots. Adjust code to generally
reduce or nullify the number of calls to malloc, free, strlen,
strcmp, strncmp, memcmp &amp; strncasecmp. Total gain looks to be about
3% of logd's processing time. malloc still contributes to 3%, but all
others are now total 0.5%.

Bug: 23685592
Change-Id: Ife721121667969260cdb8b055524ae90f5911278
</pre>
</div>
</content>
</entry>
<entry>
<title>logd: switch to unordered_map from BasicHashtable</title>
<updated>2015-06-04T18:03:37+00:00</updated>
<author>
<name>Mark Salyzyn</name>
<email>salyzyn@google.com</email>
</author>
<published>2015-05-19T16:12:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant/system_core/commit/?id=6f1457adc58644f7c68829fd0872947bd7e63bfd'/>
<id>6f1457adc58644f7c68829fd0872947bd7e63bfd</id>
<content type='text'>
(charry pick from commit 511338dd575572d567c04d69eaea60627b6c3452)

BasicHashtable is relatively untested, move over to
a C++ template library that has more bake time.

Bug: 20419786
Bug: 21590652
Bug: 20500228
Change-Id: I926aaecdc8345eca75c08fdd561b0473504c5d95
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
(charry pick from commit 511338dd575572d567c04d69eaea60627b6c3452)

BasicHashtable is relatively untested, move over to
a C++ template library that has more bake time.

Bug: 20419786
Bug: 21590652
Bug: 20500228
Change-Id: I926aaecdc8345eca75c08fdd561b0473504c5d95
</pre>
</div>
</content>
</entry>
<entry>
<title>logd: Add TID statistics</title>
<updated>2015-05-13T16:23:01+00:00</updated>
<author>
<name>Mark Salyzyn</name>
<email>salyzyn@google.com</email>
</author>
<published>2015-04-20T20:35:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant/system_core/commit/?id=654904f0f9c42458cae2b1931265f97f8fb6cb95'/>
<id>654904f0f9c42458cae2b1931265f97f8fb6cb95</id>
<content type='text'>
(cherry pick from commit 17ed6797df722464eb5cc6dfc3e1e32aec284b70)

Bug: 19608965
Change-Id: Ifbf0b00c48ef12b5970b9f9f217bd1dd8f587f2c
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
(cherry pick from commit 17ed6797df722464eb5cc6dfc3e1e32aec284b70)

Bug: 19608965
Change-Id: Ifbf0b00c48ef12b5970b9f9f217bd1dd8f587f2c
</pre>
</div>
</content>
</entry>
<entry>
<title>logd: Cleanup</title>
<updated>2015-05-13T16:22:56+00:00</updated>
<author>
<name>Mark Salyzyn</name>
<email>salyzyn@google.com</email>
</author>
<published>2015-05-12T22:21:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant/system_core/commit/?id=66091f11f427587bf810d89b0f64be556e1cd168'/>
<id>66091f11f427587bf810d89b0f64be556e1cd168</id>
<content type='text'>
(cherry pick from commit 7718778793b106498b931dd708a466cf3a6f6a0f)

- Android Coding Standard for Constructors
- Side effects NONE

Change-Id: I2cda9dd73f3ac3ab58f394015cb810820093d47b
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
(cherry pick from commit 7718778793b106498b931dd708a466cf3a6f6a0f)

- Android Coding Standard for Constructors
- Side effects NONE

Change-Id: I2cda9dd73f3ac3ab58f394015cb810820093d47b
</pre>
</div>
</content>
</entry>
<entry>
<title>logd: Add klogd</title>
<updated>2015-05-13T16:22:45+00:00</updated>
<author>
<name>Mark Salyzyn</name>
<email>salyzyn@google.com</email>
</author>
<published>2014-10-15T15:49:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant/system_core/commit/?id=a1aacb71f387c91d5fe383b8aaa5b0be2ec9cd3c'/>
<id>a1aacb71f387c91d5fe383b8aaa5b0be2ec9cd3c</id>
<content type='text'>
(cherry pick from commit ae4d928d816e30dbe57c2c321b0f0759d0567b3f)

- 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
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
(cherry pick from commit ae4d928d816e30dbe57c2c321b0f0759d0567b3f)

- 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
</pre>
</div>
</content>
</entry>
<entry>
<title>logd: Add Tag statistics</title>
<updated>2015-05-12T22:34:56+00:00</updated>
<author>
<name>Mark Salyzyn</name>
<email>salyzyn@google.com</email>
</author>
<published>2015-04-13T21:24:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant/system_core/commit/?id=ff32f3c77439b9791e58c225a8b7ca82dfc2c3da'/>
<id>ff32f3c77439b9791e58c225a8b7ca82dfc2c3da</id>
<content type='text'>
(cherry pick from commit 344bff4391dd434dda501e812f18f524290c5a7c)

- 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
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
(cherry pick from commit 344bff4391dd434dda501e812f18f524290c5a7c)

- 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
</pre>
</div>
</content>
</entry>
<entry>
<title>logd: uidToName add dex2oat UID</title>
<updated>2015-05-12T16:55:02+00:00</updated>
<author>
<name>Mark Salyzyn</name>
<email>salyzyn@google.com</email>
</author>
<published>2015-04-29T19:48:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant/system_core/commit/?id=9bdc0647200bfcd64962a5d2bde39f01f2fd0457'/>
<id>9bdc0647200bfcd64962a5d2bde39f01f2fd0457</id>
<content type='text'>
(cherry pick from commit 023f51f360472f6bb9bad495e55cdb32b5411bc5)

- When searching for uidToName from /data/system/packages.list
  one must search for the uid % AID_USER;
- If uid % AID_USER is greater than AID_SHARED_GID_START - AID_APP,
  then subract it and try again to pick up uidToName.

Change-Id: I24df42957ff7e746fffa5d39484637b1b726b9c0
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
(cherry pick from commit 023f51f360472f6bb9bad495e55cdb32b5411bc5)

- When searching for uidToName from /data/system/packages.list
  one must search for the uid % AID_USER;
- If uid % AID_USER is greater than AID_SHARED_GID_START - AID_APP,
  then subract it and try again to pick up uidToName.

Change-Id: I24df42957ff7e746fffa5d39484637b1b726b9c0
</pre>
</div>
</content>
</entry>
<entry>
<title>logd: class hierarcy for Uid and Pid statistics.</title>
<updated>2015-05-07T17:01:39+00:00</updated>
<author>
<name>Mark Salyzyn</name>
<email>salyzyn@google.com</email>
</author>
<published>2015-04-13T21:24:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant/system_core/commit/?id=8b22c293a0e53ef56734fc5f278d75529419a432'/>
<id>8b22c293a0e53ef56734fc5f278d75529419a432</id>
<content type='text'>
(Cherry pick from commit 81b3eabc49736b89c4f99940f79785074955eaa5)

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
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
(Cherry pick from commit 81b3eabc49736b89c4f99940f79785074955eaa5)

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
</pre>
</div>
</content>
</entry>
<entry>
<title>logd: improve details on chatty records</title>
<updated>2015-04-30T22:25:12+00:00</updated>
<author>
<name>Mark Salyzyn</name>
<email>salyzyn@google.com</email>
</author>
<published>2015-04-20T14:26:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant/system_core/commit/?id=95108f18443f22440653bf1648c969816ca852dd'/>
<id>95108f18443f22440653bf1648c969816ca852dd</id>
<content type='text'>
(Cherry pick from commit 21fb7e0b753b2251369bfaa1c6f6a09e58e64437)

- 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
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
(Cherry pick from commit 21fb7e0b753b2251369bfaa1c6f6a09e58e64437)

- 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
</pre>
</div>
</content>
</entry>
<entry>
<title>logd: Statistics headers</title>
<updated>2015-04-21T17:54:34+00:00</updated>
<author>
<name>Mark Salyzyn</name>
<email>salyzyn@google.com</email>
</author>
<published>2015-04-21T14:43:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.replicant.us/replicant/system_core/commit/?id=5720d2c168f17afb57eefb6ed762a120a24c8ecb'/>
<id>5720d2c168f17afb57eefb6ed762a120a24c8ecb</id>
<content type='text'>
Answer to the question "Bytes or Lines?"

Change-Id: I352737265aeac63ea8d89e778d4222a9123bdf07
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Answer to the question "Bytes or Lines?"

Change-Id: I352737265aeac63ea8d89e778d4222a9123bdf07
</pre>
</div>
</content>
</entry>
</feed>
