Messages in this thread | | | Date | Tue, 10 Jun 2003 05:11:24 -0700 | From | William Lee Irwin III <> | Subject | pgcl-2.5.70-bk15-1 |
| |
The terrifying series of patches against pgcl-2.5.70-bk13-1 rediffed vs. 2.5.70-bk15. Attempts to utilize more than one piece of pages anonymized via COW faults were merged.
Outstanding bugs will hopefully be fixed ASAP. But I figured, "Why be grossly inefficiently buggy when one can merely be slightly less than grossly inefficiently buggy?" The intra-vma PTE vectoring is far less effective than one would suspect. Logs seem to indicate that with PAGE_MMUCOUNT == 8 things average (rough estimate from watching logs) around 3/8 ptes in a vector filled from within a single vma. This of course means there's more complexity in the future, and we need to actually run off and do the things we all knew would be needed from the start (i.e. searching across vma's and pagetable pages), but that my vague punting on the fault handlers' performance for a long stretch of time may have inspired some false hope for avoiding.
It's also less of a step forward than one would suspect, since it's really only an abstracting out of pieces of the fault handlers to prepare for unifying the handling of faults that instantiate anonymous pages, and it doesn't actually do much code sharing between the two apart from filling in the pte vectors, which as one may have noticed was sorely lacking from do_wp_page() and probably wasted at least 3 times as much RAM as this ineffective method I've got going as an intermediate phase.
I chased down and fixed a memory stomper in reconstitute_ptes() in pgcl-2.5.70-bk14-2. It added lots of debugging noise, which was later removed in pgcl-2.5.70-bk14-3. The cleanup of debugging cruft was separated out due to its size; shifting around that much code could potentially destabilize things. And it did: the patches after pgcl-2.5.70-bk14-2 were all badly generated, so things were painful to merge and forward port and so on and so forth.
pgcl-2.5.70-bk14-4 removed buttloads of miscellaneous debugging crap that's noisier than it should be. I also gave up and merged the sysenter workaround since whatever I did to sysenter isn't going to get fixed in a timely fashion.
As usual, available from: ftp://ftp.kernel.org/pub/linux/kernel/people/wli/vm/pgcl/
-- wli - 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/
| |