On Mon, Feb 01, 2021 at 07:06:51AM +0100, Oscar Salvador wrote: > The premise of the refault distance is that it can be seen as a deficit > of the inactive list space, so that if the inactive list would have had > (R - E) more slots, the page would not have been evicted but promoted > to the active list instead. > > However, the way the code is ordered right now set us to be off by one, > so the real number of slots would be (R - E) + 1. > I stumbled upon this when trying to understand the code and it puzzled me > that the comments did not match what the code did. > > This it not an issue at all since evictions and refaults tend to happen > in a number large enough that being off-by-one does not have any impact > - and since the compiler and CPUs are free to rearrange the execution > sequence anyway. > But as Johannes says, it is better to re-arrange the code in the proper > order since otherwise would be misleading to somebody who is actively > reading and trying to understand the logic of the code - like it > happened to me. > > Signed-off-by: Oscar Salvador <osalvador@xxxxxxx> > Acked-by: Johannes Weiner <hannes@xxxxxxxxxxx> Hi Andrew, is this on your radar? Thanks! -- Oscar Salvador SUSE L3