• Ard Biesheuvel's avatar
    arm64: mm: BUG on unsupported manipulations of live kernel mappings · e98216b5
    Ard Biesheuvel authored
    Now that we take care not manipulate the live kernel page tables in a
    way that may lead to TLB conflicts, the case where a table mapping is
    replaced by a block mapping can no longer occur. So remove the handling
    of this at the PUD and PMD levels, and instead, BUG() on any occurrence
    of live kernel page table manipulations that modify anything other than
    the permission bits.
    
    Since mark_rodata_ro() is the only caller where the kernel mappings that
    are being manipulated are actually live, drop the various conditional
    flush_tlb_all() invocations, and add a single call to mark_rodata_ro()
    instead.
    Signed-off-by: default avatarArd Biesheuvel <ard.biesheuvel@linaro.org>
    Signed-off-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
    e98216b5
mmu.c 20.2 KB