On Mon, 28 Mar 2011 22:56:41 +0900 Namhyung Kim <namhyung@xxxxxxxxx> wrote: > When I was reading nommu code, I found that it handles the vma list/tree in > an unusual way. IIUC, because there can be more than one identical/overrapped > vmas in the list/tree, it sorts the tree more strictly and does a linear > search on the tree. But it doesn't applied to the list (i.e. the list could > be constructed in a different order than the tree so that we can't use the > list when finding the first vma in that order). > > Since inserting/sorting a vma in the tree and link is done at the same time, > we can easily construct both of them in the same order. And linear searching > on the tree could be more costly than doing it on the list, it can be > converted to use the list. > > Also, after the commit 297c5eee3724 ("mm: make the vma list be doubly linked") > made the list be doubly linked, there were a couple of code need to be fixed > to construct the list properly. > > Patch 1/6 is a preparation. It maintains the list sorted same as the tree and > construct doubly-linked list properly. Patch 2/6 is a simple optimization for > the vma deletion. Patch 3/6 and 4/6 convert tree traversal to list traversal > and the rest are simple fixes and cleanups. > > Note that I don't have a system to test on, so these are *totally untested* > patches. There could be some basic errors in the code. In that case, please > kindly let me know. :) > > Anyway, I just compiled them on my x86_64 desktop using this command: > > make mm/nommu.o > > (Of course this required few of dirty-fixes to proceed) > > Also note that these are on top of v2.6.38. > > Any comments are welcome. That seems like a nice set of changes. There isn't much I can do with them at this tims - hopefully some of the nommu people will be able to find time to review and test the patches. (Is there a way in which one can run a nommu kernel on a regular PC? Under an emulator?) -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxxx For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>