Messages in this thread | | | Date | Mon, 07 Jun 2010 13:06:54 +0200 | From | Peter Zijlstra <> | Subject | [PATCH 00/28] mm: preemptibility -v3 |
| |
This patch-set makes part of the mm a lot more preemptible. It converts i_mmap_lock and anon_vma->lock to mutexes and makes mmu_gather fully preemptible.
The main motivation was making mm_take_all_locks() preemptible, since it appears people are nesting hundreds of spinlocks there.
The side-effects are that can finally make mmu_gather preemptible, something which lots of people have wanted to do for a long time.
It also gets us anon_vma refcounting, which seems to result in a nice cleanup of the anon_vma lifetime rules wrt KSM and compaction.
This patch-set it build and boot-tested on x86_64 (a previous version was also tested on Dave's Niagra2 machines, and I suppose s390 did too when Martin provided the conversion patch for his arch).
There are no known architectures left unconverted, although some arch code never did see a compiler (superh and um come to mind).
Can we move this work forwards, or is there anything people would want to see done?
[ The series includes Rik's latest patches to the same area for convenience ]
| |