Suren Baghdasaryan
39b54809fb
lmkd: Add thrashing and max_thrashing into killinfo reports
...
Due to the increased importance of thrashing limits, include current and
max thrashing levels into killinfo reports.
Bug: 195979894
Test: lmkd_unit_test
Signed-off-by: Suren Baghdasaryan <surenb@google.com>
Change-Id: I36f947e45e03a4d845d18881e137e4b242aacb65
2021-08-09 15:10:46 -07:00
George Burgess IV
29fdb80cf1
lmkd: fix potential NULL pointer dereference am: e849f1414e am: 047e6e30e7 am: e4689257db
...
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/1787727
Change-Id: I6e059ac33f76da60ff49fafcb81836c89b83c1a4
2021-08-05 18:00:26 +00:00
George Burgess IV
e4689257db
lmkd: fix potential NULL pointer dereference am: e849f1414e am: 047e6e30e7
...
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/1787727
Change-Id: I905d1733efec72c8e2745cff51cec0547ea57fea
2021-08-05 17:51:22 +00:00
George Burgess IV
047e6e30e7
lmkd: fix potential NULL pointer dereference am: e849f1414e
...
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/1787727
Change-Id: I1b048df607f8503bcc93d68c44b061dfd148a2d2
2021-08-05 17:33:24 +00:00
George Burgess IV
e849f1414e
lmkd: fix potential NULL pointer dereference
...
`ki` appears to be potentially NULL. Output bogus values if it is.
Caught by the static analyzer:
> system/memory/lmkd/lmkd.cpp:2171:66: warning: Access to field
'kill_reason' results in a dereference of a null pointer (loaded from
variable 'ki') [clang-analyzer-core.NullDereference]
Bug: None
Test: TreeHugger
Change-Id: Iae26855528e1f7fec8f1455e06c7e813a732dc75
2021-08-05 06:59:42 +00:00
Suren Baghdasaryan
0a4989190e
lmkd: Add a tracepoint for each kill with kill parameters am: 34928bb817 am: a2394fb247 am: dc2e03adf9
...
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/1782391
Change-Id: Ifc0f708f92163cd49657a7a4fce3dd918c4e19bf
2021-08-03 16:34:55 +00:00
Suren Baghdasaryan
dc2e03adf9
lmkd: Add a tracepoint for each kill with kill parameters am: 34928bb817 am: a2394fb247
...
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/1782391
Change-Id: I80cdfcc2f323b16ea9f3518ac2b317be6c7b3f2a
2021-08-03 16:19:23 +00:00
Suren Baghdasaryan
a2394fb247
lmkd: Add a tracepoint for each kill with kill parameters am: 34928bb817
...
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/1782391
Change-Id: I805fa72d4784775bfc9c148a957417654a26d3c8
2021-08-03 16:04:54 +00:00
Suren Baghdasaryan
34928bb817
lmkd: Add a tracepoint for each kill with kill parameters
...
Add a trace for each kill that includes pid, kill reason, oom_adj_score,
min_oom_score and max_thrashing statistics at the time of the kill.
Bug: 195085238
Test: generate kills while tracing and observer the new tracepoints
Signed-off-by: Suren Baghdasaryan <surenb@google.com>
Change-Id: Ic2014adc08f5e5dd4aacd415970332618bd15250
2021-07-30 12:59:15 -07:00
Suren Baghdasaryan
f926a1c499
lmkd: Add current and max thrashing levels in LMK_MEMORY_STATS reports am: 81bb801dd2 am: 78e7e0d352
...
Original change: https://googleplex-android-review.googlesource.com/c/platform/system/memory/lmkd/+/15365195
Change-Id: I0b1b7a067dfc4eb3a10b9cc8cf2a29d5986b9ca6
2021-07-28 15:11:37 +00:00
Suren Baghdasaryan
78e7e0d352
lmkd: Add current and max thrashing levels in LMK_MEMORY_STATS reports am: 81bb801dd2
...
Original change: https://googleplex-android-review.googlesource.com/c/platform/system/memory/lmkd/+/15365195
Change-Id: I33801e8e2a818fe65007180083689369e7a61400
2021-07-28 15:02:10 +00:00
Suren Baghdasaryan
6d9f35b05b
[automerger skipped] lmkd: Add current and max thrashing levels in LMK_MEMORY_STATS reports am: e16047516d am: 74c1874aa2 -s ours am: 6deecd4aa5 -s ours
...
am skip reason: Merged-In I8a34dc41e7f03668bfad4ac2cbcb5d2570a10752 with SHA-1 81bb801dd2 is already in history
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/1776906
Change-Id: I4bffa51a467430085fbd4dd320abae904066932e
2021-07-27 01:51:43 +00:00
Suren Baghdasaryan
52a3387084
[automerger skipped] Revert "lmkd: Disable critical thrashing limit by default" am: 1ef4718aed am: ccd7f3f735 -s ours am: ee01679a16 -s ours
...
am skip reason: Merged-In I15be5b3d67a71b68bca6dea9c2d5b4aa54d6c260 with SHA-1 dded82877f is already in history
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/1776905
Change-Id: I8657928669e56c47e182ce8d85855e13b5990e84
2021-07-27 01:51:42 +00:00
Suren Baghdasaryan
a4eab2c49d
lmkd: Add current and max thrashing levels in LMK_MEMORY_STATS reports am: 81bb801dd2 am: 559c0d11a8
...
Original change: https://googleplex-android-review.googlesource.com/c/platform/system/memory/lmkd/+/15365195
Change-Id: I09bd22b7fa59b4248d66f3fb288dd8a200d7ced9
2021-07-26 19:03:50 +00:00
Suren Baghdasaryan
6deecd4aa5
[automerger skipped] lmkd: Add current and max thrashing levels in LMK_MEMORY_STATS reports am: e16047516d am: 74c1874aa2 -s ours
...
am skip reason: Merged-In I8a34dc41e7f03668bfad4ac2cbcb5d2570a10752 with SHA-1 81bb801dd2 is already in history
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/1776906
Change-Id: I2831e9f8024f7809373cb2d3499c112f5f125c51
2021-07-26 18:18:39 +00:00
Suren Baghdasaryan
ee01679a16
[automerger skipped] Revert "lmkd: Disable critical thrashing limit by default" am: 1ef4718aed am: ccd7f3f735 -s ours
...
am skip reason: Merged-In I15be5b3d67a71b68bca6dea9c2d5b4aa54d6c260 with SHA-1 dded82877f is already in history
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/1776905
Change-Id: I0fe9b16c095298e4b9836f5e5b06d813f57e7f22
2021-07-26 18:18:38 +00:00
Suren Baghdasaryan
74c1874aa2
lmkd: Add current and max thrashing levels in LMK_MEMORY_STATS reports am: e16047516d
...
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/1776906
Change-Id: Idf1f7e4011c25bf645eda165cc0604ff324597a7
2021-07-26 18:03:10 +00:00
Suren Baghdasaryan
ccd7f3f735
Revert "lmkd: Disable critical thrashing limit by default" am: 1ef4718aed
...
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/1776905
Change-Id: I813228ae2107df1ee31a18ffae4853e01bcad5fd
2021-07-26 18:03:09 +00:00
Suren Baghdasaryan
559c0d11a8
lmkd: Add current and max thrashing levels in LMK_MEMORY_STATS reports am: 81bb801dd2
...
Original change: https://googleplex-android-review.googlesource.com/c/platform/system/memory/lmkd/+/15365195
Change-Id: If9fbee8fab4c2abf05ec288382deb9432f6ada6d
2021-07-23 21:42:14 +00:00
Suren Baghdasaryan
e16047516d
lmkd: Add current and max thrashing levels in LMK_MEMORY_STATS reports
...
Thrashing threshold tuning requires collecting thrashing level data from
the field and correlating these levels with other indications of device
being non-responsive.
Include current and max thrashing levels in the lmkd kill reports. Max
thrashing level captures the highest level seen since the last kill report.
Bug: 194433891
Signed-off-by: Suren Baghdasaryan <surenb@google.com>
Change-Id: I8a34dc41e7f03668bfad4ac2cbcb5d2570a10752
Merged-In: I8a34dc41e7f03668bfad4ac2cbcb5d2570a10752
2021-07-23 19:11:36 +00:00
Suren Baghdasaryan
1ef4718aed
Revert "lmkd: Disable critical thrashing limit by default"
...
This reverts commit e1ffef4e36 .
Reason for revert: Restore the default thrashing limits to prevent unresponsive devices.
Bug: 194199500
Change-Id: I15be5b3d67a71b68bca6dea9c2d5b4aa54d6c260
Merged-In: I15be5b3d67a71b68bca6dea9c2d5b4aa54d6c260
2021-07-23 12:01:55 -07:00
Suren Baghdasaryan
81bb801dd2
lmkd: Add current and max thrashing levels in LMK_MEMORY_STATS reports
...
Thrashing threshold tuning requires collecting thrashing level data from
the field and correlating these levels with other indications of device
being non-responsive.
Include current and max thrashing levels in the lmkd kill reports. Max
thrashing level captures the highest level seen since the last kill report.
Bug: 194433891
Signed-off-by: Suren Baghdasaryan <surenb@google.com>
Change-Id: I8a34dc41e7f03668bfad4ac2cbcb5d2570a10752
2021-07-22 16:51:46 -07:00
Suren Baghdasaryan
c121feb993
Revert "lmkd: Disable critical thrashing limit by default" am: dded82877f am: d042af50d1
...
Original change: https://googleplex-android-review.googlesource.com/c/platform/system/memory/lmkd/+/15362664
Change-Id: Ia1ca22a07f2fde58d04dca627290e783e4234598
2021-07-22 23:34:08 +00:00
Suren Baghdasaryan
4c9bb29e4b
Revert "lmkd: Disable critical thrashing limit by default" am: dded82877f am: 2d5658d328
...
Original change: https://googleplex-android-review.googlesource.com/c/platform/system/memory/lmkd/+/15362664
Change-Id: I5c3e7afe6cb277302add0e01aa74bba8fc33a795
2021-07-22 23:33:20 +00:00
Suren Baghdasaryan
2d5658d328
Revert "lmkd: Disable critical thrashing limit by default" am: dded82877f
...
Original change: https://googleplex-android-review.googlesource.com/c/platform/system/memory/lmkd/+/15362664
Change-Id: I6048195ff3a387d7fc45b34cbafc0cc35da66772
2021-07-22 23:15:47 +00:00
Suren Baghdasaryan
d042af50d1
Revert "lmkd: Disable critical thrashing limit by default" am: dded82877f
...
Original change: https://googleplex-android-review.googlesource.com/c/platform/system/memory/lmkd/+/15362664
Change-Id: I1bf0676d3bddbbb391da637931305a67bb38e46b
2021-07-22 23:14:16 +00:00
Suren Baghdasaryan
dded82877f
Revert "lmkd: Disable critical thrashing limit by default"
...
This reverts commit e1ffef4e36 .
Reason for revert: Restore the default thrashing limits to prevent unresponsive devices.
Bug: 194199500
Change-Id: I15be5b3d67a71b68bca6dea9c2d5b4aa54d6c260
2021-07-22 21:01:14 +00:00
TreeHugger Robot
a1f86d1856
[automerger skipped] Merge "lmkd: Add ro.lmk.filecache_min_kb property for min filecache watermark" into sc-dev am: 9d08f060ac -s ours am: 1cbd4a6ce4 -s ours
...
am skip reason: Merged-In I49ca4cd2f33b27fdbc432d9ce6944b1a1794b749 with SHA-1 11221d4062 is already in history
Original change: https://googleplex-android-review.googlesource.com/c/platform/system/memory/lmkd/+/15327678
Change-Id: Iadf810a66840a88c647705dbcfc98400c23294ab
2021-07-21 08:01:12 +00:00
TreeHugger Robot
117cfcd22a
[automerger skipped] Merge "lmkd: Add ro.lmk.filecache_min_kb property for min filecache watermark" into sc-dev am: 9d08f060ac am: c80b0c8774 -s ours
...
am skip reason: Merged-In I49ca4cd2f33b27fdbc432d9ce6944b1a1794b749 with SHA-1 11221d4062 is already in history
Original change: https://googleplex-android-review.googlesource.com/c/platform/system/memory/lmkd/+/15327678
Change-Id: Iaf5c96cea96c8fe12b64ee12a9e763996eeeb1ef
2021-07-21 08:00:48 +00:00
TreeHugger Robot
c80b0c8774
Merge "lmkd: Add ro.lmk.filecache_min_kb property for min filecache watermark" into sc-dev am: 9d08f060ac
...
Original change: https://googleplex-android-review.googlesource.com/c/platform/system/memory/lmkd/+/15327678
Change-Id: I4314ea7c312b0d28af044b5d491df96cdcc1e2d5
2021-07-21 07:47:03 +00:00
TreeHugger Robot
1cbd4a6ce4
[automerger skipped] Merge "lmkd: Add ro.lmk.filecache_min_kb property for min filecache watermark" into sc-dev am: 9d08f060ac -s ours
...
am skip reason: Merged-In I49ca4cd2f33b27fdbc432d9ce6944b1a1794b749 with SHA-1 11221d4062 is already in history
Original change: https://googleplex-android-review.googlesource.com/c/platform/system/memory/lmkd/+/15327678
Change-Id: I449d797c0d420753d952bd8d28c20d53a3624278
2021-07-21 07:45:56 +00:00
TreeHugger Robot
9d08f060ac
Merge "lmkd: Add ro.lmk.filecache_min_kb property for min filecache watermark" into sc-dev
2021-07-21 07:34:31 +00:00
Suren Baghdasaryan
7040ea8649
lmkd: Disable critical thrashing limit by default am: c1171394a3 am: 05a14bada0 am: 05bf34f100
...
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/1773246
Change-Id: I610407fa6f877b9740d8ca65bfd46f8af34034da
2021-07-20 21:38:14 +00:00
Suren Baghdasaryan
05bf34f100
lmkd: Disable critical thrashing limit by default am: c1171394a3 am: 05a14bada0
...
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/1773246
Change-Id: I9f326e632fbb8cda92b19f2b1cf91031fee5fc63
2021-07-20 21:28:33 +00:00
Suren Baghdasaryan
05a14bada0
lmkd: Disable critical thrashing limit by default am: c1171394a3
...
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/1773246
Change-Id: I878ee527439b88c108d006feef6b491c6f8f5db3
2021-07-20 21:14:09 +00:00
Suren Baghdasaryan
3ac4c14738
lmkd: Disable critical thrashing limit by default am: e1ffef4e36 am: 1ef8e2f767
...
Original change: https://googleplex-android-review.googlesource.com/c/platform/system/memory/lmkd/+/15339915
Change-Id: Ibe2fa32143864c307eb879def1f9719b2a627c6d
2021-07-20 19:48:43 +00:00
Suren Baghdasaryan
8522f4bdd9
lmkd: Disable critical thrashing limit by default am: e1ffef4e36 am: 8da0890d28
...
Original change: https://googleplex-android-review.googlesource.com/c/platform/system/memory/lmkd/+/15339915
Change-Id: I2a5ae0bbd024958eeb0e971654dc2d1881812fab
2021-07-20 19:48:14 +00:00
Suren Baghdasaryan
8da0890d28
lmkd: Disable critical thrashing limit by default am: e1ffef4e36
...
Original change: https://googleplex-android-review.googlesource.com/c/platform/system/memory/lmkd/+/15339915
Change-Id: I85527bc1aa7fd77fa693909ad914c1fbd6705511
2021-07-20 19:36:07 +00:00
Suren Baghdasaryan
1ef8e2f767
lmkd: Disable critical thrashing limit by default am: e1ffef4e36
...
Original change: https://googleplex-android-review.googlesource.com/c/platform/system/memory/lmkd/+/15339915
Change-Id: I5614425c8b29377aae1fde3fa1e5dba910e85792
2021-07-20 19:35:27 +00:00
Suren Baghdasaryan
c1171394a3
lmkd: Disable critical thrashing limit by default
...
Critical thrashing limit determines the balance between how much
thrashing should be tolerated before killing a perceptible app.
This threshold might differ between devices, therefore we disable
critical thrashing limit by default allowing each device to set it
individually. This is done to prevent excessive kills of perceptible
apps.
Bug: 194199500
Signed-off-by: Suren Baghdasaryan <surenb@google.com>
Change-Id: Idd1715564c3727b09fcb0a109ab3d6bae9d0b99a
2021-07-20 18:12:22 +00:00
Suren Baghdasaryan
e1ffef4e36
lmkd: Disable critical thrashing limit by default
...
Critical thrashing limit determines the balance between how much
thrashing should be tolerated before killing a perceptible app.
This threshold might differ between devices, therefore we disable
critical thrashing limit by default allowing each device to set it
individually. This is done to prevent excessive kills of perceptible
apps.
Bug: 194199500
Signed-off-by: Suren Baghdasaryan <surenb@google.com>
Change-Id: Idd1715564c3727b09fcb0a109ab3d6bae9d0b99a
2021-07-20 18:06:43 +00:00
Suren Baghdasaryan
57f12d13ce
lmkd: Add ro.lmk.filecache_min_kb property for min filecache watermark
...
We see many cases when device keeps thrashing despite lmkd kills. This
happens because killed processes do not free enough filecache to fit
the current workingset completely.
To prevent such cases, introduce ro.lmk.filecache_min_kb property to
specify min filecache size in KB that should be reached after thrashing
is detected. Lmkd will keep killing background processes until this
filecache size limit is satisfied.
Bug: 193293513
Signed-off-by: Suren Baghdasaryan <surenb@google.com>
Change-Id: I49ca4cd2f33b27fdbc432d9ce6944b1a1794b749
Merged-In: I49ca4cd2f33b27fdbc432d9ce6944b1a1794b749
2021-07-19 09:50:49 +00:00
Suren Baghdasaryan
a1b92f7b0d
lmkd: Add ro.lmk.filecache_min_kb property for min filecache watermark am: 11221d4062 am: 47fc8fc026 am: e499b231a5
...
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/1766838
Change-Id: I05cd22baaf6ca3b16cf1ac7fa921206d04f14163
2021-07-16 17:16:36 +00:00
Suren Baghdasaryan
e499b231a5
lmkd: Add ro.lmk.filecache_min_kb property for min filecache watermark am: 11221d4062 am: 47fc8fc026
...
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/1766838
Change-Id: I004c501da601d7e5020e921d85326f80a3d2ba29
2021-07-16 16:55:22 +00:00
Suren Baghdasaryan
47fc8fc026
lmkd: Add ro.lmk.filecache_min_kb property for min filecache watermark am: 11221d4062
...
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/1766838
Change-Id: I7ba3f64ccf9bbe2a4125c563697b4c9498659f16
2021-07-16 16:39:35 +00:00
Suren Baghdasaryan
11221d4062
lmkd: Add ro.lmk.filecache_min_kb property for min filecache watermark
...
We see many cases when device keeps thrashing despite lmkd kills. This
happens because killed processes do not free enough filecache to fit
the current workingset completely.
To prevent such cases, introduce ro.lmk.filecache_min_kb property to
specify min filecache size in KB that should be reached after thrashing
is detected. Lmkd will keep killing background processes until this
filecache size limit is satisfied.
Bug: 193293513
Signed-off-by: Suren Baghdasaryan <surenb@google.com>
Change-Id: I49ca4cd2f33b27fdbc432d9ce6944b1a1794b749
2021-07-15 11:05:09 -07:00
Bill Yi
939a5bea0b
[automerger skipped] Merge RQ3A.210705.001 to aosp-master - DO NOT MERGE am: af5221c0aa -s ours am: bb644e429d -s ours am: 414187f3e7 -s ours
...
am skip reason: subject contains skip directive
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/1763588
Change-Id: I2db16bf6ac282380807df923a7ed3789ccb5d9a1
2021-07-13 01:39:27 +00:00
Bill Yi
414187f3e7
[automerger skipped] Merge RQ3A.210705.001 to aosp-master - DO NOT MERGE am: af5221c0aa -s ours am: bb644e429d -s ours
...
am skip reason: Merged-In Ie5a50c392ef5124a0c2390c8d4f902808d672739 with SHA-1 4571e22641 is already in history
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/1763588
Change-Id: I2115de4b4c22260f0b89ef6fc65a5855a4d22889
2021-07-13 01:21:32 +00:00
Bill Yi
bb644e429d
[automerger skipped] Merge RQ3A.210705.001 to aosp-master - DO NOT MERGE am: af5221c0aa -s ours
...
am skip reason: Merged-In Ie5a50c392ef5124a0c2390c8d4f902808d672739 with SHA-1 4571e22641 is already in history
Original change: https://android-review.googlesource.com/c/platform/system/memory/lmkd/+/1763588
Change-Id: Ie6aa987914131dc840a522707f0492e88e2dfc1c
2021-07-13 01:02:57 +00:00
Bill Yi
af5221c0aa
Merge RQ3A.210705.001 to aosp-master - DO NOT MERGE
...
Merged-In: Ie5a50c392ef5124a0c2390c8d4f902808d672739
Merged-In: I89b3edde09dfcf35b8214fecbed18ce5092701cc
Merged-In: I89b3edde09dfcf35b8214fecbed18ce5092701cc
Change-Id: I25eccb8109695125480f0da0e136ab98dabfaa0d
2021-07-12 11:08:30 -07:00