vmalloc faulting on RISC-V

Pekka Enberg penberg at kernel.org
Wed Sep 9 02:29:10 EDT 2020


Hello!

Why does RISC-V need vmalloc faulting in do_page_fault()? If I
understand correctly, some architectures implement it because process
page tables can get out of sync with "init_mm.pgd". How does that
happen on RISC-V?

I am asking because Joerg Roedel recently switched the x86
architecture to a different approach because apparently vmalloc
faulting is error-prone:

commit 7f0a002b5a21302d9f4b29ba83c96cd433ff3769
Author: Joerg Roedel <jroedel at suse.de>
Date:   Mon Jun 1 21:52:40 2020 -0700

    x86/mm: remove vmalloc faulting

    Remove fault handling on vmalloc areas, as the vmalloc code now takes
    care of synchronizing changes to all page-tables in the system.

If RISC-V has the issue of page tables getting out of sync, I think we
should switch to this approach too.

Regards,

- Pekka



More information about the linux-riscv mailing list