On 8/28/19 8:06 AM, Wei Yang wrote: > When insert and delete a vma, it will compute and propagate related subtree > gap. After some investigation, we can reduce subtree gap propagation a little. > > [1]: This one reduce the propagation by update *next* gap after itself, since > *next* must be a parent in this case. > [2]: This one achieve this by unlinking vma from list. > > After applying these two patches, test shows it reduce 0.3% function call for > vma_compute_subtree_gap. BTW, what's the overall motivation of focusing so much micro-optimization effort on the vma tree lately? This has been rather stable code where we can be reasonably sure of all bugs being found. Now even after some review effort, subtle bugs can be introduced. And Matthew was warning for a while about an upcoming major rewrite of the whole data structure, which will undo all this effort? > BTW, this series is based on some un-merged cleanup patched. > > --- > This version is rebased on current linus tree, whose last commit is > commit 9e8312f5e160 ("Merge tag 'nfs-for-5.3-3' of > git://git.linux-nfs.org/projects/trondmy/linux-nfs"). > > Wei Yang (2): > mm/mmap.c: update *next* gap after itself > mm/mmap.c: unlink vma before rb_erase > > mm/mmap.c | 15 ++++++++------- > 1 file changed, 8 insertions(+), 7 deletions(-) >