diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2014-10-20 15:07:50 +0400 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2014-10-25 12:43:15 +0400 |
commit | 10632008b9e18b76cbff0ffc69c15e948aa548e0 (patch) | |
tree | 4694d20120da394c2d501ef7eb4b9f7d5dd8ec90 /drivers/clocksource | |
parent | 6891c4509c792209c44ced55a60f13954cb50ef4 (diff) | |
download | linux-10632008b9e18b76cbff0ffc69c15e948aa548e0.tar.xz |
clockevents: Prevent shift out of bounds
Andrey reported that on a kernel with UBSan enabled he found:
UBSan: Undefined behaviour in ../kernel/time/clockevents.c:75:34
I guess it should be 1ULL here instead of 1U:
(!ismax || evt->mult <= (1U << evt->shift)))
That's indeed the correct solution because shift might be 32.
Reported-by: Andrey Ryabinin <a.ryabinin@samsung.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'drivers/clocksource')
0 files changed, 0 insertions, 0 deletions