Merge "lmkd: Fix kill failure handling"
am: 46bc39ba23 Change-Id: Ia581ad84feaf56ebff1320e8f69e757590f7a864
This commit is contained in:
commit
613fa51aaf
15
lmkd.c
15
lmkd.c
|
|
@ -1793,6 +1793,14 @@ static int kill_one_process(struct proc* procp, int min_oom_score, const char *r
|
|||
/* CAP_KILL required */
|
||||
r = kill(pid, SIGKILL);
|
||||
|
||||
TRACE_KILL_END();
|
||||
|
||||
if (r) {
|
||||
ALOGE("kill(%d): errno=%d", pid, errno);
|
||||
/* Delete process record even when we fail to kill so that we don't get stuck on it */
|
||||
goto out;
|
||||
}
|
||||
|
||||
set_process_group_and_prio(pid, SP_FOREGROUND, ANDROID_PRIORITY_HIGHEST);
|
||||
|
||||
inc_killcnt(procp->oomadj);
|
||||
|
|
@ -1804,14 +1812,8 @@ static int kill_one_process(struct proc* procp, int min_oom_score, const char *r
|
|||
uid, procp->oomadj, tasksize * page_k);
|
||||
}
|
||||
|
||||
TRACE_KILL_END();
|
||||
|
||||
last_killed_pid = pid;
|
||||
|
||||
if (r) {
|
||||
ALOGE("kill(%d): errno=%d", pid, errno);
|
||||
goto out;
|
||||
} else {
|
||||
#ifdef LMKD_LOG_STATS
|
||||
if (memory_stat_parse_result == 0) {
|
||||
stats_write_lmk_kill_occurred(log_ctx, LMK_KILL_OCCURRED, uid, taskname,
|
||||
|
|
@ -1825,7 +1827,6 @@ static int kill_one_process(struct proc* procp, int min_oom_score, const char *r
|
|||
}
|
||||
#endif
|
||||
result = tasksize;
|
||||
}
|
||||
|
||||
out:
|
||||
/*
|
||||
|
|
|
|||
Loading…
Reference in New Issue