Message ID | 20240325064023.2997-5-adrian.hunter@intel.com (mailing list archive) |
---|---|
State | Handled Elsewhere |
Headers | show |
Series | timekeeping: Handle potential multiplication overflow | expand |
On Mon, Mar 25, 2024 at 08:40:08AM +0200, Adrian Hunter wrote: > Put together declaration and initialization of local variables. > > Suggested-by: Thomas Gleixner <tglx@linutronix.de> > Signed-off-by: Adrian Hunter <adrian.hunter@intel.com> > --- Nothing wrong with this patch, but it is highly unlikely this code is actually tested much. Most (sane) architectures will use the __int128 version. > include/linux/math64.h | 6 +----- > 1 file changed, 1 insertion(+), 5 deletions(-) > > diff --git a/include/linux/math64.h b/include/linux/math64.h > index bf74478926d4..fd13622b2056 100644 > --- a/include/linux/math64.h > +++ b/include/linux/math64.h > @@ -179,16 +179,12 @@ static __always_inline u64 mul_u64_u64_shr(u64 a, u64 mul, unsigned int shift) > #ifndef mul_u64_u32_shr > static __always_inline u64 mul_u64_u32_shr(u64 a, u32 mul, unsigned int shift) > { > - u32 ah, al; > + u32 ah = a >> 32, al = a; > u64 ret; > > - al = a; > - ah = a >> 32; > - > ret = mul_u32_u32(al, mul) >> shift; > if (ah) > ret += mul_u32_u32(ah, mul) << (32 - shift); > - > return ret; > } > #endif /* mul_u64_u32_shr */ > -- > 2.34.1 >
diff --git a/include/linux/math64.h b/include/linux/math64.h index bf74478926d4..fd13622b2056 100644 --- a/include/linux/math64.h +++ b/include/linux/math64.h @@ -179,16 +179,12 @@ static __always_inline u64 mul_u64_u64_shr(u64 a, u64 mul, unsigned int shift) #ifndef mul_u64_u32_shr static __always_inline u64 mul_u64_u32_shr(u64 a, u32 mul, unsigned int shift) { - u32 ah, al; + u32 ah = a >> 32, al = a; u64 ret; - al = a; - ah = a >> 32; - ret = mul_u32_u32(al, mul) >> shift; if (ah) ret += mul_u32_u32(ah, mul) << (32 - shift); - return ret; } #endif /* mul_u64_u32_shr */
Put together declaration and initialization of local variables. Suggested-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Adrian Hunter <adrian.hunter@intel.com> --- include/linux/math64.h | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-)