2002-12-05 22:28:40

by Mitchell Erblich

[permalink] [raw]
Subject: Kernel: question/bug: mm/vmscan.c : refill_inactive_zone() : 2.4.18-3

Statement:

In a "while" loop we are looking for a target number of
pages to deactivate.

Question?
If there are a large number of processes that have not
exceeded their Resident Set Size (rss) and they are
keeping their pages hot, then we won't reach our target
value. This would keep our inactive page list small.

Suggestion and solution:
In this environment, I would think it would make sense
to effectively walk this list again (without aging)
and effectively half the rss so we are able to reach
our target value.

I would think that this approach would then penalize
all tasks equally. If halving the rss is too extreme,
then an increased percentage (< 100%) would walk more
pages to reach the target value.

Mitchell Erblich : [email protected]
Note: I am not currently on this mail alias.