lmkd: update watermarks before the first kill

Change-Id: Ie8080fd8995c54fc8c1f5b94e77dbf32e33783fe
Signed-off-by: Suren Baghdasaryan <surenb@google.com>
This commit is contained in:
Suren Baghdasaryan 2024-04-01 14:04:49 -07:00 committed by Andrew Evans
parent 63dd69984d
commit 20de82dde2
1 changed files with 9 additions and 0 deletions

View File

@ -2807,6 +2807,7 @@ static void mp_event_psi(int data, uint32_t events, struct polling_params *poll_
max_thrashing = thrashing; max_thrashing = thrashing;
} }
update_watermarks:
/* /*
* Refresh watermarks once per min in case user updated one of the margins. * Refresh watermarks once per min in case user updated one of the margins.
* TODO: b/140521024 replace this periodic update with an API for AMS to notify LMKD * TODO: b/140521024 replace this periodic update with an API for AMS to notify LMKD
@ -2942,6 +2943,14 @@ static void mp_event_psi(int data, uint32_t events, struct polling_params *poll_
.thrashing = (int)thrashing, .thrashing = (int)thrashing,
.max_thrashing = max_thrashing, .max_thrashing = max_thrashing,
}; };
static bool first_kill = true;
/* Make sure watermarks are correct before the first kill */
if (first_kill) {
first_kill = false;
watermarks.high_wmark = 0; // force recomputation
goto update_watermarks;
}
/* Allow killing perceptible apps if the system is stalled */ /* Allow killing perceptible apps if the system is stalled */
if (critical_stall) { if (critical_stall) {