]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
fix integer overflow bugs in *stosbt
authorWarner Losh <imp@FreeBSD.org>
Wed, 6 Apr 2022 03:35:27 +0000 (21:35 -0600)
committerWarner Losh <imp@FreeBSD.org>
Wed, 6 Apr 2022 03:36:59 +0000 (21:36 -0600)
commit4c30b9ecd47a2d92565731082a6a4f2bd1e6e051
treef57e513b32372cc354fb89f90d5eeab82bba18a0
parentf00f8b4fbd268a212687984e44daa3e0d0a16b87
fix integer overflow bugs in *stosbt

68f57679d660 Fixed another class of integer overflows, but introduced a
boundary condition for 2-4s in ns conversion, 2-~4000s in us conversions
and 2-~4,000,000s in ms conversions. This was because we bogusly used
SBT_1S for the notion of 1 second, instead of the appropriate power of
10. To fix, just use the appropriate power of 10, which avoids these
overflows.

This caused some sleeps in ZFS to be on the order of an hour.

MFC: 1 day
PR: 263073
Sponsored by: Netflix
Reviewed by: asomers
Differential Revision: https://reviews.freebsd.org/D34790
sys/sys/time.h