From: "Aneesh Kumar K.V" <aneesh.kumar@linux.vnet.ibm.com>
To: Reza Arbab <arbab@linux.vnet.ibm.com>,
Michael Ellerman <mpe@ellerman.id.au>,
Benjamin Herrenschmidt <benh@kernel.crashing.org>,
Paul Mackerras <paulus@samba.org>
Cc: linuxppc-dev@lists.ozlabs.org,
Balbir Singh <bsingharora@gmail.com>,
Alistair Popple <apopple@au1.ibm.com>
Subject: Re: [PATCH v3 2/5] powerpc/mm: refactor {create, remove}_section_mapping()
Date: Mon, 19 Dec 2016 14:30:28 +0530 [thread overview]
Message-ID: <8737hkuwcz.fsf@linux.vnet.ibm.com> (raw)
In-Reply-To: <1481831443-22761-3-git-send-email-arbab@linux.vnet.ibm.com>
Reza Arbab <arbab@linux.vnet.ibm.com> writes:
> Change {create,remove}_section_mapping() to be wrappers around functions
> prefixed with "hash__".
>
> This is preparation for the addition of their "radix__" variants. No
> functional change.
>
I think this can go upstream now ? To fixup broken hotplug with radix ?
Reviewed-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
> Signed-off-by: Reza Arbab <arbab@linux.vnet.ibm.com>
> ---
> arch/powerpc/include/asm/book3s/64/hash.h | 5 +++++
> arch/powerpc/mm/hash_utils_64.c | 4 ++--
> arch/powerpc/mm/pgtable-book3s64.c | 18 ++++++++++++++++++
> 3 files changed, 25 insertions(+), 2 deletions(-)
>
> diff --git a/arch/powerpc/include/asm/book3s/64/hash.h b/arch/powerpc/include/asm/book3s/64/hash.h
> index f61cad3..dd90574 100644
> --- a/arch/powerpc/include/asm/book3s/64/hash.h
> +++ b/arch/powerpc/include/asm/book3s/64/hash.h
> @@ -201,6 +201,11 @@ extern int __meminit hash__vmemmap_create_mapping(unsigned long start,
> unsigned long phys);
> extern void hash__vmemmap_remove_mapping(unsigned long start,
> unsigned long page_size);
> +
> +#ifdef CONFIG_MEMORY_HOTPLUG
> +int hash__create_section_mapping(unsigned long start, unsigned long end);
> +int hash__remove_section_mapping(unsigned long start, unsigned long end);
> +#endif /* CONFIG_MEMORY_HOTPLUG */
> #endif /* !__ASSEMBLY__ */
> #endif /* __KERNEL__ */
> #endif /* _ASM_POWERPC_BOOK3S_64_HASH_H */
> diff --git a/arch/powerpc/mm/hash_utils_64.c b/arch/powerpc/mm/hash_utils_64.c
> index b9a062f..96a4fb7 100644
> --- a/arch/powerpc/mm/hash_utils_64.c
> +++ b/arch/powerpc/mm/hash_utils_64.c
> @@ -743,7 +743,7 @@ static unsigned long __init htab_get_table_size(void)
> }
>
> #ifdef CONFIG_MEMORY_HOTPLUG
> -int create_section_mapping(unsigned long start, unsigned long end)
> +int hash__create_section_mapping(unsigned long start, unsigned long end)
> {
> int rc = htab_bolt_mapping(start, end, __pa(start),
> pgprot_val(PAGE_KERNEL), mmu_linear_psize,
> @@ -757,7 +757,7 @@ int create_section_mapping(unsigned long start, unsigned long end)
> return rc;
> }
>
> -int remove_section_mapping(unsigned long start, unsigned long end)
> +int hash__remove_section_mapping(unsigned long start, unsigned long end)
> {
> int rc = htab_remove_mapping(start, end, mmu_linear_psize,
> mmu_kernel_ssize);
> diff --git a/arch/powerpc/mm/pgtable-book3s64.c b/arch/powerpc/mm/pgtable-book3s64.c
> index ebf9782..653ff6c 100644
> --- a/arch/powerpc/mm/pgtable-book3s64.c
> +++ b/arch/powerpc/mm/pgtable-book3s64.c
> @@ -126,3 +126,21 @@ void mmu_cleanup_all(void)
> else if (mmu_hash_ops.hpte_clear_all)
> mmu_hash_ops.hpte_clear_all();
> }
> +
> +#ifdef CONFIG_MEMORY_HOTPLUG
> +int create_section_mapping(unsigned long start, unsigned long end)
> +{
> + if (radix_enabled())
> + return -ENODEV;
> +
> + return hash__create_section_mapping(start, end);
> +}
> +
> +int remove_section_mapping(unsigned long start, unsigned long end)
> +{
> + if (radix_enabled())
> + return -ENODEV;
> +
> + return hash__remove_section_mapping(start, end);
> +}
> +#endif /* CONFIG_MEMORY_HOTPLUG */
> --
> 1.8.3.1
next prev parent reply other threads:[~2016-12-19 9:00 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-12-15 19:50 [PATCH v3 0/5] powerpc/mm: enable memory hotplug on radix Reza Arbab
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 [this message]
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=8737hkuwcz.fsf@linux.vnet.ibm.com \
--to=aneesh.kumar@linux.vnet.ibm.com \
--cc=apopple@au1.ibm.com \
--cc=arbab@linux.vnet.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.