On Mon, 1 May 2000, Roel van der Goot wrote:
> I want to inform you that there is a subtle difference between
> the following two loops:
>
> (i)
>
> while ((mm->swap_cnt << 2 * (i + 1) < max_cnt)
> && i++ < 10);
>
> (ii)
>
> while ((mm->swap_cnt << 2 * (i + 1) < max_cnt)
> && i < 10)
> i++;
I want to inform you that you're wrong. The only difference is
in readability.
If the first test fails, the clause behind the && won't be run.
Furthermore, i will only reach 10 if the RSS difference between
the current process and the biggest process is more than a factor
2^21 ... which can never happen on 32-bit hardware, unless the
RSS of the current process is 0.
In fact, the <10 test is only there to prevent infinite looping
for when a process with 0 swap_cnt "slips through" the tests above.
regards,
Rik
-- The Internet is not a network of computers. It is a network of people. That is its real strength.Wanna talk about the kernel? irc.openprojects.net / #kernelnewbies http://www.conectiva.com/ http://www.surriel.com/
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
This archive was generated by hypermail 2b29 : Sun May 07 2000 - 21:00:09 EST