sched: walt: fix out-of-bounds access
A computation in update_top_tasks() is indexing off the end of a top_tasks array. There's code to limit the index in the computation, but it's insufficient. Bug: 110529282 Change-Id: Idb5ff5e5800c014394bcb04638844bf1e057a40c Signed-off-by: John Dias <joaodias@google.com> [pkondeti@codeaurora.org: Backported to 4.4 for HMP scheduler] Signed-off-by: Pavankumar Kondeti <pkondeti@codeaurora.org>
This commit is contained in:
parent
42570c93ec
commit
bd4ac8e584
1 changed files with 4 additions and 7 deletions
|
@ -2081,14 +2081,11 @@ static u32 top_task_load(struct rq *rq)
|
|||
}
|
||||
}
|
||||
|
||||
static int load_to_index(u32 load)
|
||||
static u32 load_to_index(u32 load)
|
||||
{
|
||||
if (load < sched_load_granule)
|
||||
return 0;
|
||||
else if (load >= sched_ravg_window)
|
||||
return NUM_LOAD_INDICES - 1;
|
||||
else
|
||||
return load / sched_load_granule;
|
||||
u32 index = load / sched_load_granule;
|
||||
|
||||
return min(index, (u32)(NUM_LOAD_INDICES - 1));
|
||||
}
|
||||
|
||||
static void update_top_tasks(struct task_struct *p, struct rq *rq,
|
||||
|
|
Loading…
Add table
Reference in a new issue