On 04/04/2014 04:31 PM, Stephen Warren wrote: > From: Stephen Warren <swarren at nvidia.com> > > BIT_WORD() truncates rather than rounds, so the loops in > syncpt_thresh_isr() and _host1x_intr_disable_all_syncpt_intrs() use <= > rather than < in an attempt to process the correct number of registers > when rounding of the conversion of count of bits to count of words is > necessary. However, when rounding isn't necessary because the value is > already a multiple of the divisor (as is the case for all values of > nb_pts the code actually sees), this causes one too many registers to > be processed. > > Solve this by using and explicit DIV_ROUND_UP() call, rather than > BIT_WORD(), and comparing with < rather than <=.
I don't see this in linux-next yet.