• Philippe Gerum's avatar
    mm: ipipe: disable ondemand memory · 8168e4dd
    Philippe Gerum authored
    Co-kernels cannot bear with the extra latency caused by memory access
    faults involved in COW or
    overcommit. __ipipe_disable_ondemand_mappings() force commits all
    common memory mappings with physical RAM.
    In addition, the architecture code is given a chance to pre-load page
    table entries for ioremap and vmalloc memory, for preventing further
    minor faults accessing such memory due to PTE misses (if that ever
    makes sense for them).
    Revisit: Further COW breaking in copy_user_page() and copy_pte_range()
    may be useless once __ipipe_disable_ondemand_mappings() has run for a
    co-kernel task, since all of its mappings have been populated, and
    unCOWed if applicable.