"Feel free to try" is definitely the open source motto.
I basically came to the conclusion that it sucks when I
gave it a go.
In my scheme I tried to save space by using very small descriptors to
keep track of anonymous areas in processes. This was essentially a
vma->vm_anon pointer that kept track of the pages for you.
After trying to fight this for a few days I determined that this
doesn't work at all because of how COW dups the pages around on you.
Also it was a devil to work out anonymous pages created due to writes
to private mmaps of a file, as soon as one of these were made for the
first time on a vma you had to cook up one of the anon descriptors.
Yeah, I got the anon descriptor down to 2 pointers and an atomic
counter, but it didn't work so this achievement was worthless :-)
There are a few approaches that work, but they tend to take up too
much space to be considerable, as Linus mentioned.
Later,
David S. Miller
davem@redhat.com
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/