Patrick Georgi has submitted this change and it was merged. ( https://review.coreboot.org/c/coreboot/+/32223 )
Change subject: libpayload/drivers/timer: Use 64 bits to prevent overflow ......................................................................
libpayload/drivers/timer: Use 64 bits to prevent overflow
Cast cpu_khz to a 64 bit integer to prevent possible integer overflow (the multiplication is currently done using 32 bit math). Similar to 61dac13 (libpayload: timer: cast cpu_khz to make sure 64bit math is used).
Found-by: Coverity Scan, CID 1261177 Signed-off-by: Jacob Garber jgarber1@ualberta.ca Change-Id: Iadb0abb7c7cc078f31a6d88d971f5d1b8ac62a9e Reviewed-on: https://review.coreboot.org/c/coreboot/+/32223 Tested-by: build bot (Jenkins) no-reply@coreboot.org Reviewed-by: Paul Menzel paulepanter@users.sourceforge.net Reviewed-by: Patrick Georgi pgeorgi@google.com --- M payloads/libpayload/drivers/timer/img_pistachio.c 1 file changed, 1 insertion(+), 1 deletion(-)
Approvals: build bot (Jenkins): Verified Patrick Georgi: Looks good to me, approved Paul Menzel: Looks good to me, but someone else must approve
diff --git a/payloads/libpayload/drivers/timer/img_pistachio.c b/payloads/libpayload/drivers/timer/img_pistachio.c index 070998f..d11c3ff 100644 --- a/payloads/libpayload/drivers/timer/img_pistachio.c +++ b/payloads/libpayload/drivers/timer/img_pistachio.c @@ -18,7 +18,7 @@
uint64_t timer_hz(void) { - return lib_sysinfo.cpu_khz * 1000; + return (uint64_t)lib_sysinfo.cpu_khz * 1000; }
uint64_t timer_raw_value(void)