[RFC v2 0/2] powerpc/mm: enable memory hotplug on radix

Reza Arbab arbab at linux.vnet.ibm.com
Thu Aug 18 01:51:21 AEST 2016


Memory hotplug is leading to hash page table calls, even on radix:

...
	arch_add_memory
		create_section_mapping
			htab_bolt_mapping
				BUG_ON(!ppc_md.hpte_insert);

Refactor {create,remove}_section_mapping() into hash__ and radix__ variants.

RFC/TODO:
I wasn't sure what to do in radix__remove_section_mapping(). Its vmemmap
counterpart radix__vmemmap_remove_mapping() is stubbed as a FIXME. I left it
empty for now.

v2:
* Do not simply fall through to vmemmap_{create,remove}_mapping(). As Aneesh 
  and Michael pointed out, they are tied to CONFIG_SPARSEMEM_VMEMMAP and only
  did what I needed by luck anyway.

v1:
* https://lkml.kernel.org/r/1466699962-22412-1-git-send-email-arbab@linux.vnet.ibm.com

Reza Arbab (2):
  powerpc/mm: refactor {create,remove}_section_mapping()
  powerpc/mm: add radix__{create,remove}_section_mapping()

 arch/powerpc/include/asm/book3s/64/hash.h  |  5 +++++
 arch/powerpc/include/asm/book3s/64/radix.h |  5 +++++
 arch/powerpc/include/asm/sparsemem.h       | 22 ++++++++++++++++++++--
 arch/powerpc/mm/hash_utils_64.c            |  4 ++--
 arch/powerpc/mm/pgtable-radix.c            | 23 +++++++++++++++++++++++
 5 files changed, 55 insertions(+), 4 deletions(-)

-- 
1.8.3.1


*** BLURB HERE ***

Reza Arbab (2):
  powerpc/mm: refactor {create,remove}_section_mapping()
  powerpc/mm: add radix__{create,remove}_section_mapping()

 arch/powerpc/include/asm/book3s/64/hash.h  |  5 +++++
 arch/powerpc/include/asm/book3s/64/radix.h |  5 +++++
 arch/powerpc/include/asm/sparsemem.h       | 22 ++++++++++++++++++++--
 arch/powerpc/mm/hash_utils_64.c            |  4 ++--
 arch/powerpc/mm/pgtable-radix.c            | 23 +++++++++++++++++++++++
 5 files changed, 55 insertions(+), 4 deletions(-)

-- 
1.8.3.1



More information about the Linuxppc-dev mailing list