diff options
author | Yang Lu | 2018-05-14 23:59:44 -0500 |
---|---|---|
committer | Yang Lu | 2018-05-15 11:54:45 -0500 |
commit | 5564f4ee08cf154b2c4f646a2e7f1d5378063dc0 (patch) | |
tree | a4bdad700bb8a64c571238e9d912b26637105aee | |
parent | 0051684905e093c8c8ac5cc9f861392fea9d0b0c (diff) | |
download | platform-system-core-5564f4ee08cf154b2c4f646a2e7f1d5378063dc0.tar.gz platform-system-core-5564f4ee08cf154b2c4f646a2e7f1d5378063dc0.tar.xz platform-system-core-5564f4ee08cf154b2c4f646a2e7f1d5378063dc0.zip |
Only log the lmkd state change when the killing really happened.
BUG: b/78603347
Test: statsd test
Change-Id: I0345a47e1cd1c79a67103e401a2eb0a7fbe0631b
-rw-r--r-- | lmkd/lmkd.c | 16 |
1 files changed, 11 insertions, 5 deletions
diff --git a/lmkd/lmkd.c b/lmkd/lmkd.c index 20937cd77..76344b98a 100644 --- a/lmkd/lmkd.c +++ b/lmkd/lmkd.c | |||
@@ -1026,9 +1026,7 @@ static int find_and_kill_processes(enum vmpressure_level level, | |||
1026 | int pages_freed = 0; | 1026 | int pages_freed = 0; |
1027 | 1027 | ||
1028 | #ifdef LMKD_LOG_STATS | 1028 | #ifdef LMKD_LOG_STATS |
1029 | if (enable_stats_log) { | 1029 | bool lmk_state_change_start = false; |
1030 | stats_write_lmk_state_changed(log_ctx, LMK_STATE_CHANGED, LMK_STATE_CHANGE_START); | ||
1031 | } | ||
1032 | #endif | 1030 | #endif |
1033 | 1031 | ||
1034 | for (i = OOM_SCORE_ADJ_MAX; i >= min_score_adj; i--) { | 1032 | for (i = OOM_SCORE_ADJ_MAX; i >= min_score_adj; i--) { |
@@ -1043,11 +1041,19 @@ static int find_and_kill_processes(enum vmpressure_level level, | |||
1043 | 1041 | ||
1044 | killed_size = kill_one_process(procp, min_score_adj, level); | 1042 | killed_size = kill_one_process(procp, min_score_adj, level); |
1045 | if (killed_size >= 0) { | 1043 | if (killed_size >= 0) { |
1044 | #ifdef LMKD_LOG_STATS | ||
1045 | if (enable_stats_log && !lmk_state_change_start) { | ||
1046 | lmk_state_change_start = true; | ||
1047 | stats_write_lmk_state_changed(log_ctx, LMK_STATE_CHANGED, | ||
1048 | LMK_STATE_CHANGE_START); | ||
1049 | } | ||
1050 | #endif | ||
1051 | |||
1046 | pages_freed += killed_size; | 1052 | pages_freed += killed_size; |
1047 | if (pages_freed >= pages_to_free) { | 1053 | if (pages_freed >= pages_to_free) { |
1048 | 1054 | ||
1049 | #ifdef LMKD_LOG_STATS | 1055 | #ifdef LMKD_LOG_STATS |
1050 | if (enable_stats_log) { | 1056 | if (enable_stats_log && lmk_state_change_start) { |
1051 | stats_write_lmk_state_changed(log_ctx, LMK_STATE_CHANGED, | 1057 | stats_write_lmk_state_changed(log_ctx, LMK_STATE_CHANGED, |
1052 | LMK_STATE_CHANGE_STOP); | 1058 | LMK_STATE_CHANGE_STOP); |
1053 | } | 1059 | } |
@@ -1059,7 +1065,7 @@ static int find_and_kill_processes(enum vmpressure_level level, | |||
1059 | } | 1065 | } |
1060 | 1066 | ||
1061 | #ifdef LMKD_LOG_STATS | 1067 | #ifdef LMKD_LOG_STATS |
1062 | if (enable_stats_log) { | 1068 | if (enable_stats_log && lmk_state_change_start) { |
1063 | stats_write_lmk_state_changed(log_ctx, LMK_STATE_CHANGED, LMK_STATE_CHANGE_STOP); | 1069 | stats_write_lmk_state_changed(log_ctx, LMK_STATE_CHANGED, LMK_STATE_CHANGE_STOP); |
1064 | } | 1070 | } |
1065 | #endif | 1071 | #endif |