Skip to contentSkip to conversation

Any reason why install_page and zap_page_range are not

DISCUSSION Petr Vandrovec 1 participant 1 message Jul 31, 2003

lore
Share & tools
lore
#0 lore raw
Quoted 10 lines · Andrew Morton
Quoted 7 lines · Petr Vandrovec

And second missing thing is zap_page_range - we need way to tell
that specified page is not mapped anywhere (mostly for debugging purposes). At worst install_page with PROT_NONE protection can be used for that, but it seems natural that if there should be no page there, we should just put nothing to the pagetables instead of some fake page. And for large ranges doing one 200MB zap_page_range is much faster than doing 50000 install_pages.

zap_page_range() sounds like an odd thing to be exporting. If we had an

Currently we are doing an identity do_mmap_pgoff() over the region to flush page tables currently. It works very nice with 2.6.x kernels. Unfortunately 2.4.x do not merge regions this mmap split back together :-( Fortunately we can just remap whole original region to merge VMAs back together when we think that there is too many VMAs around.

Quoted 2 lines

in-kernel module which needed it then OK. Do you have plans in that direction?

Probably not, we are happy with distributing modules together with product, so while module has to support wide range of kernels, it can support only one version of our product... It looks like that it is better this way for both us (we can do incompatible changes) and for customers too (they do not have to use latest kernels).

Thanks for exporting install_page.
Best regards,
Petr Vandrovec