1. 07 Feb, 2017 10 commits
  2. 06 Feb, 2017 11 commits
  3. 03 Feb, 2017 4 commits
  4. 02 Feb, 2017 13 commits
  5. 31 Jan, 2017 2 commits
    • Reza Arbab's avatar
      powerpc/mm: unstub radix__vmemmap_remove_mapping() · 0d0a4bc2
      Reza Arbab authored
      Use remove_pagetable() and friends for radix vmemmap removal.
      
      We do not require the special-case handling of vmemmap done in the x86
      versions of these functions. This is because vmemmap_free() has already
      freed the mapped pages, and calls us with an aligned address range.
      
      So, add a few failsafe WARNs, but otherwise the code to remove physical
      mappings is already sufficient for vmemmap.
      Signed-off-by: default avatarReza Arbab <arbab@linux.vnet.ibm.com>
      Acked-by: default avatarBalbir Singh <bsingharora@gmail.com>
      Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
      0d0a4bc2
    • 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