Re: [PATCH RFC] mm: don't miss the last page because of round-off error
From: Matthew Wilcox
Date: Fri Aug 17 2018 - 21:22:23 EST
On Fri, Aug 17, 2018 at 04:18:34PM -0700, Roman Gushchin wrote:
> - scan = div64_u64(scan * fraction[file],
> - denominator);
> + if (scan > 1)
> + scan = div64_u64(scan * fraction[file],
> + denominator);
Wouldn't we be better off doing a div_round_up? ie:
scan = div64_u64(scan * fraction[file] + denominator - 1, denominator);
although i'd rather hide that in a new macro in math64.h than opencode it
here.