Messages in this thread | | | From | Daniel Phillips <> | Subject | Re: Note describing poor dcache utilization under high memory pressure | Date | Mon, 28 Jan 2002 23:26:47 +0100 |
| |
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/
| |