Re: deferred rss update instead of sloppy rss

From: Benjamin Herrenschmidt
Date: Mon Nov 22 2004 - 17:24:36 EST


On Mon, 2004-11-22 at 14:13 -0800, Christoph Lameter wrote:
> On Mon, 22 Nov 2004, Andrew Morton wrote:
>
> > hrm. I cannot see anywhere in this patch where you update task_struct.rss.
>
> This is just the piece around it dealing with rss. The updating of rss
> happens in the generic code. The change to that is trivial. I can repost
> the whole shebang if you want.
>
> > > + /* only holding mmap_sem here maybe get page_table_lock too? */
> > > + mm->rss += tsk->rss;
> > > + tsk->rss = 0;
> > > up_read(&mm->mmap_sem);
> >
> > mmap_sem needs to be held for writing, surely?
>
> If there are no page faults occurring anymore then we would not need to
> get the lock. Q: Is it safe to assume that no faults occur
> anymore at this point?

Why wouldn't the mm take faults on other CPUs ? (other threads)

> > just to prevent transient gross inaccuracies. For some value of "16".
>
> 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.
> --
> To unsubscribe, send a message with 'unsubscribe linux-mm' in
> the body to majordomo@xxxxxxxxxx For more info on Linux MM,
> see: http://www.linux-mm.org/ .
> Don't email: <a href=mailto:"aart@xxxxxxxxx";> aart@xxxxxxxxx </a>
--
Benjamin Herrenschmidt <benh@xxxxxxxxxxxxxxxxxxx>

-
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/