Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ce13cb52 authored by Suren Baghdasaryan's avatar Suren Baghdasaryan
Browse files

lmkd: Disable memory.stat usage when per-application memcgs are not used



Per-application memory.stat files are not available when per-application
memcgs are not used (per_app_memcg=false). Disable its usage based on
ro.config.per_app_memcg property.

minchan:
* correct indentation of memory_stat_parse
* move per_app_memcg check into memory_stat_parse inside
* change low_ram_device to per_app_memcg

Bug: 110384555
Test: manual test to see lkmd log message with memory hogger
Merged-In: Ib6dd7586d3ef1c64cb04d16e2d2b21fa9c8e6a3a
Change-Id: Ib6dd7586d3ef1c64cb04d16e2d2b21fa9c8e6a3a
Signed-off-by: default avatarMinchan Kim <minchan@google.com>
Signed-off-by: default avatarSuren Baghdasaryan <surenb@google.com>
parent a02ca9e7
Loading
Loading
Loading
Loading
+4 −1
Original line number Diff line number Diff line
@@ -111,6 +111,7 @@ static bool low_ram_device;
static bool kill_heaviest_task;
static unsigned long kill_timeout_ms;
static bool use_minfree_levels;
static bool per_app_memcg;

/* data required to handle events */
struct event_handler_info {
@@ -472,7 +473,7 @@ static void cmd_procprio(LMKD_CTRL_PACKET packet) {
        return;
    }

    if (low_ram_device) {
    if (per_app_memcg) {
        if (params.oomadj >= 900) {
            soft_limit_mult = 0;
        } else if (params.oomadj >= 800) {
@@ -1481,6 +1482,8 @@ int main(int argc __unused, char **argv __unused) {
        (unsigned long)property_get_int32("ro.lmk.kill_timeout_ms", 0);
    use_minfree_levels =
        property_get_bool("ro.lmk.use_minfree_levels", false);
    per_app_memcg =
        property_get_bool("ro.config.per_app_memcg", low_ram_device);

    if (!init()) {
        if (!use_inkernel_interface) {