• Reza Arbab's avatar
    powerpc/mm: add radix__remove_section_mapping() · 4b5d62ca
    Reza Arbab authored
    Tear down and free the four-level page tables of physical mappings
    during memory hotremove.
    
    Borrow the basic structure of remove_pagetable() and friends from the
    identically-named x86 functions. Reduce the frequency of tlb flushes and
    page_table_lock spinlocks by only doing them in the outermost function.
    There was some question as to whether the locking is needed at all.
    Leave it for now, but we could consider dropping it.
    
    Memory must be offline to be removed, thus not in use. So there
    shouldn't be the sort of concurrent page walking activity here that
    might prompt us to use RCU.
    Signed-off-by: default avatarReza Arbab <arbab@linux.vnet.ibm.com>
    Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
    4b5d62ca
pgtable-radix.c 17.9 KB