From: Michal Hocko <mhocko@kernel.org>
To: Mike Rapoport <rppt@linux.vnet.ibm.com>
Cc: linux-mm@kvack.org, Andrew Morton <akpm@linux-foundation.org>,
"David S. Miller" <davem@davemloft.net>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
Ingo Molnar <mingo@redhat.com>,
Michael Ellerman <mpe@ellerman.id.au>,
Paul Burton <paul.burton@mips.com>,
Thomas Gleixner <tglx@linutronix.de>,
Tony Luck <tony.luck@intel.com>,
linux-ia64@vger.kernel.org, linux-mips@linux-mips.org,
linuxppc-dev@lists.ozlabs.org, sparclinux@vger.kernel.org,
linux-kernel@vger.kernel.org
Subject: Re: [RFC PATCH 18/29] memblock: replace alloc_bootmem_low_pages with memblock_alloc_low
Date: Thu, 6 Sep 2018 10:43:08 +0200 [thread overview]
Message-ID: <20180906084308.GC14951@dhcp22.suse.cz> (raw)
In-Reply-To: <1536163184-26356-19-git-send-email-rppt@linux.vnet.ibm.com>
On Wed 05-09-18 18:59:33, Mike Rapoport wrote:
> The conversion is done using the following semantic patch:
>
> @@
> expression e;
> @@
> - alloc_bootmem_low_pages(e)
> + memblock_alloc_low(e, PAGE_SIZE)
>
> Signed-off-by: Mike Rapoport <rppt@linux.vnet.ibm.com>
Again, I trust Coccinelle to do the right thing and from a quick glance
it looks sane (modulo _virt naming)
Acked-by: Michal Hocko <mhocko@suse.com>
> ---
> arch/arc/mm/highmem.c | 2 +-
> arch/m68k/atari/stram.c | 3 ++-
> arch/m68k/mm/motorola.c | 5 +++--
> arch/mips/cavium-octeon/dma-octeon.c | 2 +-
> arch/mips/mm/init.c | 3 ++-
> arch/um/kernel/mem.c | 10 ++++++----
> arch/xtensa/mm/mmu.c | 2 +-
> 7 files changed, 16 insertions(+), 11 deletions(-)
>
> diff --git a/arch/arc/mm/highmem.c b/arch/arc/mm/highmem.c
> index 77ff64a..f582dc8 100644
> --- a/arch/arc/mm/highmem.c
> +++ b/arch/arc/mm/highmem.c
> @@ -123,7 +123,7 @@ static noinline pte_t * __init alloc_kmap_pgtable(unsigned long kvaddr)
> pud_k = pud_offset(pgd_k, kvaddr);
> pmd_k = pmd_offset(pud_k, kvaddr);
>
> - pte_k = (pte_t *)alloc_bootmem_low_pages(PAGE_SIZE);
> + pte_k = (pte_t *)memblock_alloc_low(PAGE_SIZE, PAGE_SIZE);
> pmd_populate_kernel(&init_mm, pmd_k, pte_k);
> return pte_k;
> }
> diff --git a/arch/m68k/atari/stram.c b/arch/m68k/atari/stram.c
> index c83d664..1089d67 100644
> --- a/arch/m68k/atari/stram.c
> +++ b/arch/m68k/atari/stram.c
> @@ -95,7 +95,8 @@ void __init atari_stram_reserve_pages(void *start_mem)
> {
> if (kernel_in_stram) {
> pr_debug("atari_stram pool: kernel in ST-RAM, using alloc_bootmem!\n");
> - stram_pool.start = (resource_size_t)alloc_bootmem_low_pages(pool_size);
> + stram_pool.start = (resource_size_t)memblock_alloc_low(pool_size,
> + PAGE_SIZE);
> stram_pool.end = stram_pool.start + pool_size - 1;
> request_resource(&iomem_resource, &stram_pool);
> stram_virt_offset = 0;
> diff --git a/arch/m68k/mm/motorola.c b/arch/m68k/mm/motorola.c
> index 4e17ecb..8bcf57e 100644
> --- a/arch/m68k/mm/motorola.c
> +++ b/arch/m68k/mm/motorola.c
> @@ -55,7 +55,7 @@ static pte_t * __init kernel_page_table(void)
> {
> pte_t *ptablep;
>
> - ptablep = (pte_t *)alloc_bootmem_low_pages(PAGE_SIZE);
> + ptablep = (pte_t *)memblock_alloc_low(PAGE_SIZE, PAGE_SIZE);
>
> clear_page(ptablep);
> __flush_page_to_ram(ptablep);
> @@ -95,7 +95,8 @@ static pmd_t * __init kernel_ptr_table(void)
>
> last_pgtable += PTRS_PER_PMD;
> if (((unsigned long)last_pgtable & ~PAGE_MASK) == 0) {
> - last_pgtable = (pmd_t *)alloc_bootmem_low_pages(PAGE_SIZE);
> + last_pgtable = (pmd_t *)memblock_alloc_low(PAGE_SIZE,
> + PAGE_SIZE);
>
> clear_page(last_pgtable);
> __flush_page_to_ram(last_pgtable);
> diff --git a/arch/mips/cavium-octeon/dma-octeon.c b/arch/mips/cavium-octeon/dma-octeon.c
> index 236833b..c44c1a6 100644
> --- a/arch/mips/cavium-octeon/dma-octeon.c
> +++ b/arch/mips/cavium-octeon/dma-octeon.c
> @@ -244,7 +244,7 @@ void __init plat_swiotlb_setup(void)
> swiotlb_nslabs = ALIGN(swiotlb_nslabs, IO_TLB_SEGSIZE);
> swiotlbsize = swiotlb_nslabs << IO_TLB_SHIFT;
>
> - octeon_swiotlb = alloc_bootmem_low_pages(swiotlbsize);
> + octeon_swiotlb = memblock_alloc_low(swiotlbsize, PAGE_SIZE);
>
> if (swiotlb_init_with_tbl(octeon_swiotlb, swiotlb_nslabs, 1) == -ENOMEM)
> panic("Cannot allocate SWIOTLB buffer");
> diff --git a/arch/mips/mm/init.c b/arch/mips/mm/init.c
> index 400676c..a010fba7 100644
> --- a/arch/mips/mm/init.c
> +++ b/arch/mips/mm/init.c
> @@ -244,7 +244,8 @@ void __init fixrange_init(unsigned long start, unsigned long end,
> pmd = (pmd_t *)pud;
> for (; (k < PTRS_PER_PMD) && (vaddr < end); pmd++, k++) {
> if (pmd_none(*pmd)) {
> - pte = (pte_t *) alloc_bootmem_low_pages(PAGE_SIZE);
> + pte = (pte_t *) memblock_alloc_low(PAGE_SIZE,
> + PAGE_SIZE);
> set_pmd(pmd, __pmd((unsigned long)pte));
> BUG_ON(pte != pte_offset_kernel(pmd, 0));
> }
> diff --git a/arch/um/kernel/mem.c b/arch/um/kernel/mem.c
> index 3c0e470..185f6bb 100644
> --- a/arch/um/kernel/mem.c
> +++ b/arch/um/kernel/mem.c
> @@ -64,7 +64,8 @@ void __init mem_init(void)
> static void __init one_page_table_init(pmd_t *pmd)
> {
> if (pmd_none(*pmd)) {
> - pte_t *pte = (pte_t *) alloc_bootmem_low_pages(PAGE_SIZE);
> + pte_t *pte = (pte_t *) memblock_alloc_low(PAGE_SIZE,
> + PAGE_SIZE);
> set_pmd(pmd, __pmd(_KERNPG_TABLE +
> (unsigned long) __pa(pte)));
> if (pte != pte_offset_kernel(pmd, 0))
> @@ -75,7 +76,7 @@ static void __init one_page_table_init(pmd_t *pmd)
> static void __init one_md_table_init(pud_t *pud)
> {
> #ifdef CONFIG_3_LEVEL_PGTABLES
> - pmd_t *pmd_table = (pmd_t *) alloc_bootmem_low_pages(PAGE_SIZE);
> + pmd_t *pmd_table = (pmd_t *) memblock_alloc_low(PAGE_SIZE, PAGE_SIZE);
> set_pud(pud, __pud(_KERNPG_TABLE + (unsigned long) __pa(pmd_table)));
> if (pmd_table != pmd_offset(pud, 0))
> BUG();
> @@ -124,7 +125,7 @@ static void __init fixaddr_user_init( void)
> return;
>
> fixrange_init( FIXADDR_USER_START, FIXADDR_USER_END, swapper_pg_dir);
> - v = (unsigned long) alloc_bootmem_low_pages(size);
> + v = (unsigned long) memblock_alloc_low(size, PAGE_SIZE);
> memcpy((void *) v , (void *) FIXADDR_USER_START, size);
> p = __pa(v);
> for ( ; size > 0; size -= PAGE_SIZE, vaddr += PAGE_SIZE,
> @@ -143,7 +144,8 @@ void __init paging_init(void)
> unsigned long zones_size[MAX_NR_ZONES], vaddr;
> int i;
>
> - empty_zero_page = (unsigned long *) alloc_bootmem_low_pages(PAGE_SIZE);
> + empty_zero_page = (unsigned long *) memblock_alloc_low(PAGE_SIZE,
> + PAGE_SIZE);
> for (i = 0; i < ARRAY_SIZE(zones_size); i++)
> zones_size[i] = 0;
>
> diff --git a/arch/xtensa/mm/mmu.c b/arch/xtensa/mm/mmu.c
> index 9d1ecfc..f33a1ff 100644
> --- a/arch/xtensa/mm/mmu.c
> +++ b/arch/xtensa/mm/mmu.c
> @@ -31,7 +31,7 @@ static void * __init init_pmd(unsigned long vaddr, unsigned long n_pages)
> pr_debug("%s: vaddr: 0x%08lx, n_pages: %ld\n",
> __func__, vaddr, n_pages);
>
> - pte = alloc_bootmem_low_pages(n_pages * sizeof(pte_t));
> + pte = memblock_alloc_low(n_pages * sizeof(pte_t), PAGE_SIZE);
>
> for (i = 0; i < n_pages; ++i)
> pte_clear(NULL, 0, pte + i);
> --
> 2.7.4
>
--
Michal Hocko
SUSE Labs
next prev parent reply other threads:[~2018-09-06 8:43 UTC|newest]
Thread overview: 81+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-09-05 15:59 [RFC PATCH 00/29] mm: remove bootmem allocator Mike Rapoport
2018-09-05 15:59 ` [RFC PATCH 01/29] mips: switch to NO_BOOTMEM Mike Rapoport
2018-09-05 15:59 ` [RFC PATCH 02/29] mm: remove CONFIG_NO_BOOTMEM Mike Rapoport
2018-09-05 15:59 ` [RFC PATCH 03/29] mm: remove CONFIG_HAVE_MEMBLOCK Mike Rapoport
2018-09-19 9:04 ` Jonathan Cameron
2018-09-19 9:04 ` Jonathan Cameron
2018-09-19 10:34 ` Mike Rapoport
2018-09-19 10:45 ` Jonathan Cameron
2018-09-19 10:45 ` Jonathan Cameron
2018-09-19 10:55 ` Mike Rapoport
2018-09-05 15:59 ` [RFC PATCH 04/29] mm: remove bootmem allocator implementation Mike Rapoport
2018-09-06 7:30 ` Michal Hocko
2018-09-06 8:31 ` Michal Hocko
2018-09-05 15:59 ` [RFC PATCH 05/29] mm: nobootmem: remove dead code Mike Rapoport
2018-09-05 15:59 ` [RFC PATCH 06/29] memblock: rename memblock_alloc{_nid,_try_nid} to memblock_phys_alloc* Mike Rapoport
2018-09-06 7:35 ` Michal Hocko
2018-09-05 15:59 ` [RFC PATCH 07/29] memblock: remove _virt from APIs returning virtual address Mike Rapoport
2018-09-05 17:04 ` Rob Herring
2018-09-05 17:20 ` Mike Rapoport
2018-09-06 7:28 ` Michal Hocko
2018-09-06 12:43 ` Mike Rapoport
2018-09-06 13:01 ` Michal Hocko
2018-09-06 13:39 ` Mike Rapoport
2018-09-06 13:46 ` Michal Hocko
2018-09-07 8:42 ` Mike Rapoport
2018-09-07 8:47 ` Michal Hocko
2018-09-07 9:19 ` Mike Rapoport
2018-09-05 15:59 ` [RFC PATCH 08/29] memblock: replace alloc_bootmem_align with memblock_alloc Mike Rapoport
2018-09-06 7:39 ` Michal Hocko
2018-09-05 15:59 ` [RFC PATCH 09/29] memblock: replace alloc_bootmem_low with memblock_alloc_low Mike Rapoport
2018-09-06 7:41 ` Michal Hocko
2018-09-05 15:59 ` [RFC PATCH 10/29] memblock: replace __alloc_bootmem_node_nopanic with memblock_alloc_try_nid_nopanic Mike Rapoport
2018-09-06 7:49 ` Michal Hocko
2018-09-05 15:59 ` [RFC PATCH 11/29] memblock: replace alloc_bootmem_pages_nopanic with memblock_alloc_nopanic Mike Rapoport
2018-09-06 7:53 ` Michal Hocko
2018-09-05 15:59 ` [RFC PATCH 12/29] memblock: replace alloc_bootmem_low with memblock_alloc_low Mike Rapoport
2018-09-06 7:55 ` Michal Hocko
2018-09-05 15:59 ` [RFC PATCH 13/29] memblock: replace __alloc_bootmem_nopanic with memblock_alloc_from_nopanic Mike Rapoport
2018-09-06 7:57 ` Michal Hocko
2018-09-06 12:44 ` Mike Rapoport
2018-09-05 15:59 ` [RFC PATCH 14/29] memblock: add align parameter to memblock_alloc_node() Mike Rapoport
2018-09-06 8:06 ` Michal Hocko
2018-09-06 12:49 ` Mike Rapoport
2018-09-05 15:59 ` [RFC PATCH 15/29] memblock: replace alloc_bootmem_pages_node with memblock_alloc_node Mike Rapoport
2018-09-06 8:08 ` Michal Hocko
2018-09-05 15:59 ` [RFC PATCH 16/29] memblock: replace __alloc_bootmem_node with appropriate memblock_ API Mike Rapoport
2018-09-06 8:38 ` Michal Hocko
2018-09-06 12:50 ` Mike Rapoport
2018-09-05 15:59 ` [RFC PATCH 17/29] memblock: replace alloc_bootmem_node with memblock_alloc_node Mike Rapoport
2018-09-06 8:41 ` Michal Hocko
2018-09-05 15:59 ` [RFC PATCH 18/29] memblock: replace alloc_bootmem_low_pages with memblock_alloc_low Mike Rapoport
2018-09-06 8:43 ` Michal Hocko [this message]
2018-09-05 15:59 ` [RFC PATCH 19/29] memblock: replace alloc_bootmem_pages with memblock_alloc Mike Rapoport
2018-09-06 8:44 ` Michal Hocko
2018-09-05 15:59 ` [RFC PATCH 20/29] memblock: replace __alloc_bootmem with memblock_alloc_from Mike Rapoport
2018-09-06 8:52 ` Michal Hocko
2018-09-06 12:58 ` Mike Rapoport
2018-09-05 15:59 ` [RFC PATCH 21/29] memblock: replace alloc_bootmem with memblock_alloc Mike Rapoport
2018-09-06 8:55 ` Michal Hocko
2018-09-06 13:14 ` Mike Rapoport
2018-09-05 15:59 ` [RFC PATCH 22/29] mm: nobootmem: remove bootmem allocation APIs Mike Rapoport
2018-09-06 8:56 ` Michal Hocko
2018-09-05 15:59 ` [RFC PATCH 23/29] memblock: replace free_bootmem{_node} with memblock_free Mike Rapoport
2018-09-06 8:57 ` Michal Hocko
2018-09-05 15:59 ` [RFC PATCH 24/29] memblock: replace free_bootmem_late with memblock_free_late Mike Rapoport
2018-09-06 9:02 ` Michal Hocko
2018-09-05 15:59 ` [RFC PATCH 25/29] memblock: rename free_all_bootmem to memblock_free_all Mike Rapoport
2018-09-06 9:04 ` Michal Hocko
2018-09-05 15:59 ` [RFC PATCH 26/29] memblock: rename __free_pages_bootmem to memblock_free_pages Mike Rapoport
2018-09-06 9:06 ` Michal Hocko
2018-09-05 15:59 ` [RFC PATCH 27/29] mm: remove nobootmem Mike Rapoport
2018-09-06 9:08 ` Michal Hocko
2018-09-05 15:59 ` [RFC PATCH 28/29] memblock: replace BOOTMEM_ALLOC_* with MEMBLOCK variants Mike Rapoport
2018-09-06 9:08 ` Michal Hocko
2018-09-05 15:59 ` [RFC PATCH 29/29] mm: remove include/linux/bootmem.h Mike Rapoport
2018-09-06 2:33 ` [RFC PATCH 00/29] mm: remove bootmem allocator Greentime Hu
2018-09-06 13:30 ` Mike Rapoport
2018-09-06 9:15 ` Michal Hocko
2018-09-06 13:04 ` Pasha Tatashin
2018-09-06 13:21 ` Mike Rapoport
2018-09-06 13:16 ` Mike Rapoport
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=20180906084308.GC14951@dhcp22.suse.cz \
--to=mhocko@kernel.org \
--cc=akpm@linux-foundation.org \
--cc=davem@davemloft.net \
--cc=gregkh@linuxfoundation.org \
--cc=linux-ia64@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mips@linux-mips.org \
--cc=linux-mm@kvack.org \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=mingo@redhat.com \
--cc=mpe@ellerman.id.au \
--cc=paul.burton@mips.com \
--cc=rppt@linux.vnet.ibm.com \
--cc=sparclinux@vger.kernel.org \
--cc=tglx@linutronix.de \
--cc=tony.luck@intel.com \
/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).