diff options
author | Joonwoo Park <joonwoop@codeaurora.org> | 2017-06-01 10:59:12 -0700 |
---|---|---|
committer | Georg Veichtlbauer <georg@vware.at> | 2023-07-16 12:47:43 +0200 |
commit | 41cbb7bc59fb94f020839f20b890033e2f407ca3 (patch) | |
tree | 6e0509bdb04f7eacc449350b1becfde6f604761d | |
parent | 43cbf9d6153d820d68ba96ddb1a57dbdc7373c90 (diff) |
sched: walt: fix window misalignment when HZ=300
Due to rounding error hrtimer tick interval becomes 3333333 ns when HZ=300.
Consequently the tick time stamp nearest to the WALT's default window size
20ms will be also 19999998 (3333333 * 6).
[beykerykt]: Adapt for HMP
Change-Id: I08f9bd2dbecccbb683e4490d06d8b0da703d3ab2
Suggested-by: Joel Fernandes <joelaf@google.com>
Signed-off-by: Joonwoo Park <joonwoop@codeaurora.org>
-rw-r--r-- | kernel/sched/hmp.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/kernel/sched/hmp.c b/kernel/sched/hmp.c index 598656b42203..f9fff7217eaa 100644 --- a/kernel/sched/hmp.c +++ b/kernel/sched/hmp.c @@ -765,7 +765,15 @@ unsigned int min_max_possible_capacity = 1024; /* min(rq->max_possible_capacity) */ /* Min window size (in ns) = 10ms */ +#ifdef CONFIG_HZ_300 +/* + * Tick interval becomes to 3333333 due to + * rounding error when HZ=300. + */ +#define MIN_SCHED_RAVG_WINDOW (3333333 * 6) +#else #define MIN_SCHED_RAVG_WINDOW 10000000 +#endif /* Max window size (in ns) = 1s */ #define MAX_SCHED_RAVG_WINDOW 1000000000 |