lkml.org 
[lkml]   [2002]   [Jan]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: Note describing poor dcache utilization under high memory pressure
Date
On January 28, 2002 10:43 pm, Rik van Riel wrote:
> On Mon, 28 Jan 2002, Rick Stevens wrote:
> > Daniel Phillips wrote:
> > [snip]
> [page table COW description]
>
> > Perhaps I'm missing this, but I read that as the child gets a reference
> > to the parent's memory. If the child attempts a write, then new memory
> > is allocated, data copied and the write occurs to this new memory. As
> > I read this, it's only invoked on a child write.
> >
> > Would this not leave a hole where the parent could write and, since the
> > child shares that memory, the new data would be read by the child? Sort
> > of a hidden shm segment? If so, I think we've got problems brewing.
> > Now, if a parent write causes the same behaviour as a child write, then
> > my point is moot.
>
> Daniel and I discussed this issue when Daniel first came up with
> the idea of doing page table COW. He seemed a bit confused by
> fork semantics when we first discussed this idea, too ;)

Oh yes, I admit it, confused is me. That way I avoid heading off in
directions that people have already gone, and found nothing ;-)

> You're right though, both parent and child need to react in the
> same way, preferably _without_ having to walk all of the parent's
> page tables and mark them read-only ...

Yes, and look at the algorithm as I've stated it, it's symmetric with respect
to parent and child. Getting it into this simple and robust form took a lot
of work, and as you know, my initial attempts were complex and, yes, confused.

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

\
 
 \ /
  Last update: 2005-03-22 13:15    [W:0.192 / U:0.184 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site