From: Reza Arbab <arbab@linux.vnet.ibm.com>
To: Michael Ellerman <mpe@ellerman.id.au>,
Benjamin Herrenschmidt <benh@kernel.crashing.org>,
Paul Mackerras <paulus@samba.org>
Cc: linuxppc-dev@lists.ozlabs.org,
"Aneesh Kumar K.V" <aneesh.kumar@linux.vnet.ibm.com>,
Balbir Singh <bsingharora@gmail.com>,
Alistair Popple <apopple@au1.ibm.com>
Subject: [PATCH v3 0/5] powerpc/mm: enable memory hotplug on radix
Date: Thu, 15 Dec 2016 13:50:38 -0600 [thread overview]
Message-ID: <1481831443-22761-1-git-send-email-arbab@linux.vnet.ibm.com> (raw)
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);
To fix, refactor {create,remove}_section_mapping() into hash__ and radix__
variants. Implement the radix versions by borrowing from existing vmemmap
and x86 code.
This passes basic verification of plugging and removing memory, but this
stuff is tricky and I'd appreciate extra scrutiny of the series for
correctness--in particular, the adaptation of remove_pagetable() from x86.
/* changelog */
v3:
* Port remove_pagetable() et al. from x86 for unmapping.
* [RFC] -> [PATCH]
v2:
* https://lkml.kernel.org/r/1471449083-15931-1-git-send-email-arbab@linux.vnet.ibm.com
* 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 (5):
powerpc/mm: set the radix linear page mapping size
powerpc/mm: refactor {create,remove}_section_mapping()
powerpc/mm: add radix__create_section_mapping()
powerpc/mm: add radix__remove_section_mapping()
powerpc/mm: unstub radix__vmemmap_remove_mapping()
arch/powerpc/include/asm/book3s/64/hash.h | 5 +
arch/powerpc/include/asm/book3s/64/radix.h | 5 +
arch/powerpc/mm/hash_utils_64.c | 4 +-
arch/powerpc/mm/pgtable-book3s64.c | 18 +++
arch/powerpc/mm/pgtable-radix.c | 207 ++++++++++++++++++++++++++++-
5 files changed, 236 insertions(+), 3 deletions(-)
--
1.8.3.1
next reply other threads:[~2016-12-15 19:50 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-12-15 19:50 Reza Arbab [this message]
2016-12-15 19:50 ` [PATCH v3 1/5] powerpc/mm: set the radix linear page mapping size Reza Arbab
2016-12-19 8:58 ` Aneesh Kumar K.V
2016-12-19 20:53 ` Benjamin Herrenschmidt
2016-12-20 2:02 ` Aneesh Kumar K.V
2016-12-15 19:50 ` [PATCH v3 2/5] powerpc/mm: refactor {create, remove}_section_mapping() Reza Arbab
2016-12-19 9:00 ` Aneesh Kumar K.V
2016-12-19 18:00 ` [PATCH v3 2/5] powerpc/mm: refactor {create,remove}_section_mapping() Reza Arbab
2016-12-20 5:26 ` Balbir Singh
2016-12-15 19:50 ` [PATCH v3 3/5] powerpc/mm: add radix__create_section_mapping() Reza Arbab
2016-12-19 9:04 ` Aneesh Kumar K.V
2016-12-19 18:06 ` Reza Arbab
2016-12-21 7:03 ` Anshuman Khandual
2016-12-20 6:28 ` Balbir Singh
2016-12-20 15:32 ` Reza Arbab
2016-12-15 19:50 ` [PATCH v3 4/5] powerpc/mm: add radix__remove_section_mapping() Reza Arbab
2016-12-19 9:48 ` Aneesh Kumar K.V
2016-12-19 18:11 ` Reza Arbab
2016-12-19 20:59 ` Benjamin Herrenschmidt
2016-12-15 19:50 ` [PATCH v3 5/5] powerpc/mm: unstub radix__vmemmap_remove_mapping() Reza Arbab
2016-12-16 14:38 ` [PATCH v3 0/5] powerpc/mm: enable memory hotplug on radix Balbir Singh
2016-12-19 17:58 ` Reza Arbab
2016-12-21 6:54 ` Anshuman Khandual
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1481831443-22761-1-git-send-email-arbab@linux.vnet.ibm.com \
--to=arbab@linux.vnet.ibm.com \
--cc=aneesh.kumar@linux.vnet.ibm.com \
--cc=apopple@au1.ibm.com \
--cc=benh@kernel.crashing.org \
--cc=bsingharora@gmail.com \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=mpe@ellerman.id.au \
--cc=paulus@samba.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).