diff options
author | Hugh Dickins <hugh@veritas.com> | 2005-10-29 18:16:00 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2005-10-29 21:40:37 -0700 |
commit | 7be7a546994f1222b2312fd348da14e16b6b7b42 (patch) | |
tree | e1f8dae8783274372a0f136be6eb64102877e9f6 /drivers/char | |
parent | 65500d234e74fc4e8f18e1a429bc24e51e75de4a (diff) | |
download | op-kernel-dev-7be7a546994f1222b2312fd348da14e16b6b7b42.zip op-kernel-dev-7be7a546994f1222b2312fd348da14e16b6b7b42.tar.gz |
[PATCH] mm: move_page_tables by extents
Speeding up mremap's moving of ptes has never been a priority, but the locking
will get more complicated shortly, and is already too baroque.
Scrap the current one-by-one moving, do an extent at a time: curtailed by end
of src and dst pmds (have to use PMD_SIZE: the way pmd_addr_end gets elided
doesn't match this usage), and by latency considerations.
One nice property of the old method is lost: it never allocated a page table
unless absolutely necessary, so you could free empty page tables by mremapping
to and fro. Whereas this way, it allocates a dst table wherever there was a
src table. I keep diving in to reinstate the old behaviour, then come out
preferring not to clutter how it now is.
Signed-off-by: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'drivers/char')
0 files changed, 0 insertions, 0 deletions