From: Jason-JH Lin > Sent: 14 July 2023 07:46 > > Hi CK, > > Thanks for the reviews. > > On Fri, 2023-07-14 at 05:45 +0000, CK Hu (胡俊光) wrote: > > Hi, Jason: > > > > On Wed, 2023-06-21 at 18:22 +0800, Jason-JH.Lin wrote: > > > 1. Add casting before assign to avoid the unintentional integer > > > overflow or unintended sign extension. > > > 2. Add a int varriable for multiplier calculation instead of > > > calculating > > > different types multiplier with dma_addr_t varriable directly. > > > > I agree with these modification, but the title does not match the > > modification. > > > > Regards, > > CK > > I'll change the title and commit msg at the next version below: > > Fix unintentional integer overflow in multiplying different types > > 1. Instead of multiplying 2 variable of different types. Change to > assign a value of one variable and then multiply the other variable. > > 2. Add a int variable for multiplier calculation instead of calculating > different types multiplier with dma_addr_t variable directly. I'm pretty sure the patch makes absolutely no difference. In C all arithmetic is done with char/short (inc. unsigned) promoted to int. So the only likely overflow is if the values exceed 2^31. Since the temporaries you are using are 'int' this isn't true. David - Registered Address Lakeside, Bramley Road, Mount Farm, Milton Keynes, MK1 1PT, UK Registration No: 1397386 (Wales)