Re: deferred rss update instead of sloppy rss

From: Nick Piggin
Date: Mon Nov 22 2004 - 18:19:59 EST


Christoph Lameter wrote:
On Mon, 22 Nov 2004, Andrew Morton wrote:


The page fault code only increments rss. For larger transactions that
increase / decrease rss significantly the page_table_lock is taken and
mm->rss is updated directly. So no
gross inaccuracies can result.

Sure. Take a million successive pagefaults and mm->rss is grossly
inaccurate. Hence my suggestion that it be spilled into mm->rss
periodically.


It is spilled into mm->rss periodically. That is the whole point of the
patch.

The timer tick occurs every 1 ms. The maximum pagefault frequency that I
have seen is 500000 faults /second. The max deviation is therefore
less than 500 (could be greater if page table lock / mmap_sem always held
when the tick occurs).


You could imagine a situation where something pagefaults and sleeps in
lock-step with the timer though. Theoretical problem only?

I think that by the time you get the spilling code in, the mm-list method
will be looking positively elegant!

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/