-
Andrew Morton authored
There are a few VM-related patches in this series. Mainly fixes; feature work is on hold. We have some fairly serious locking contention problems with the reverse mapping's pte_chains. Until we have a clear way out of that I believe that it is best to not merge code which has a lot of rmap dependency. It is apparent that these problems will not be solved by tweaking - some redesign is needed. In the 2.5 timeframe the only practical solution appears to be page table sharing, based on Daniel's February work. Daniel and Dave McCracken are working that. Some bits and pieces here: - list_splice() has an open-coded list_empty() in it. Use list_empty() instead. - in shrink_cache() we have a local `nr_pages' which shadows another local. Rename the inner one. (Nikita Danilov) - Add a BUG() on a can't-happen code path in page_remove_rmap(). - Tighten up the bug checks in the BH completion handlers - if the buffer is still under IO then it must be locked, because we unlock it inside the page_uptodate_lock.
1a40868e