Hi all, here come some improvements of the page walking API code. First: make_pages_present() would do an infinite recursion, if used in find_extend_vma(). I fixed this. Might as well have caused the ntp crash, that has been observed. So these make_pages_present parts are really important. I also did the promised rewrite of make_pages_present() and its users. MM-Gurus: Please double check, that I always provide the right vma. I also did two sample implementations (Kai and Doug, this is why you are CC'ed) of the scatter list walking and removed ~100 lines of code while doing it. Gerd: Your video-buf.[ch] is next on my list and I must coalesce videobuf_pages_to_sg() and videobuf_init_user() to do it efficiently. May be you can come up with a better solution for this or are already working on sth. here. If not, I'll do it my way first and wait for your approval ;-) That's all for now. I omitted the patches, to make 2.5.49-mm1 compile, as usual. Patch against 2.5.49-mm1 attached. diffstat of this patch: drivers/scsi/sg.c | 102 +++++++++---------------------------------- drivers/scsi/st.c | 109 ++++++++-------------------------------------- include/linux/mm.h | 2 include/linux/page_walk.h | 13 +++-- mm/mlock.c | 2 mm/mmap.c | 11 ++-- mm/mremap.c | 4 - mm/page_walk.c | 83 ++++++++++++++++++++++++----------- 8 files changed, 119 insertions, 207 deletions Regards Ingo Oeser -- Science is what we can tell a computer. Art is everything else. --- D.E.Knuth