All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jonathan Cameron <jonathan.cameron@huawei.com>
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>,
	Michal Hocko <mhocko@suse.com>,
	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, linuxarm@huawei.com
Subject: Re: [RFC PATCH 03/29] mm: remove CONFIG_HAVE_MEMBLOCK
Date: Wed, 19 Sep 2018 09:04:49 +0000	[thread overview]
Message-ID: <20180919100449.00006df9@huawei.com> (raw)
In-Reply-To: <1536163184-26356-4-git-send-email-rppt@linux.vnet.ibm.com>

On Wed, 5 Sep 2018 18:59:18 +0300
Mike Rapoport <rppt@linux.vnet.ibm.com> wrote:

> All architecures use memblock for early memory management. There is no need
> for the CONFIG_HAVE_MEMBLOCK configuration option.
> 
> Signed-off-by: Mike Rapoport <rppt@linux.vnet.ibm.com>

Hi Mike,

A minor editing issue in here that is stopping boot on arm64 platforms with latest
version of the mm tree.

> diff --git a/drivers/of/fdt.c b/drivers/of/fdt.c
> index 76c83c1..bd841bb 100644
> --- a/drivers/of/fdt.c
> +++ b/drivers/of/fdt.c
> @@ -1115,13 +1115,11 @@ int __init early_init_dt_scan_chosen(unsigned long node, const char *uname,
>  	return 1;
>  }
>  
> -#ifdef CONFIG_HAVE_MEMBLOCK
>  #ifndef MIN_MEMBLOCK_ADDR
>  #define MIN_MEMBLOCK_ADDR	__pa(PAGE_OFFSET)
>  #endif
>  #ifndef MAX_MEMBLOCK_ADDR
>  #define MAX_MEMBLOCK_ADDR	((phys_addr_t)~0)
> -#endif

This isn't the right #endif. It is matching with the #ifndef MAX_MEMBLOCK_ADDR
not the intented #ifdef CONFIG_HAVE_MEMBLOCK.

Now I haven't chased through the exact reason this is causing my acpi
arm64 system not to boot on the basis it is obviously miss-matched anyway
and I'm inherently lazy.  It's resulting in stubs replacing the following weak
functions.

early_init_dt_add_memory_arch
(this is defined elsewhere for some architectures but not arm)

early_init_dt_mark_hotplug_memory_arch
(there is only one definition of this in the kernel so it doesn't
 need to be weak or in the header etc).

early_init_dt_reserve_memory_arch
(defined on mips but nothing else)

Taking out the right endif also lets you drop an #else removing some stub
functions further down in here.

Nice cleanup in general btw.

Thanks,

Jonathan
>  
>  void __init __weak early_init_dt_add_memory_arch(u64 base, u64 size)
>  {

WARNING: multiple messages have this Message-ID (diff)
From: Jonathan Cameron <jonathan.cameron@huawei.com>
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>,
	Michal Hocko <mhocko@suse.com>,
	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>,
	<linuxarm@huawei.com>
Subject: Re: [RFC PATCH 03/29] mm: remove CONFIG_HAVE_MEMBLOCK
Date: Wed, 19 Sep 2018 10:04:49 +0100	[thread overview]
Message-ID: <20180919100449.00006df9@huawei.com> (raw)
In-Reply-To: <1536163184-26356-4-git-send-email-rppt@linux.vnet.ibm.com>

On Wed, 5 Sep 2018 18:59:18 +0300
Mike Rapoport <rppt@linux.vnet.ibm.com> wrote:

> All architecures use memblock for early memory management. There is no need
> for the CONFIG_HAVE_MEMBLOCK configuration option.
> 
> Signed-off-by: Mike Rapoport <rppt@linux.vnet.ibm.com>

Hi Mike,

A minor editing issue in here that is stopping boot on arm64 platforms with latest
version of the mm tree.

> diff --git a/drivers/of/fdt.c b/drivers/of/fdt.c
> index 76c83c1..bd841bb 100644
> --- a/drivers/of/fdt.c
> +++ b/drivers/of/fdt.c
> @@ -1115,13 +1115,11 @@ int __init early_init_dt_scan_chosen(unsigned long node, const char *uname,
>  	return 1;
>  }
>  
> -#ifdef CONFIG_HAVE_MEMBLOCK
>  #ifndef MIN_MEMBLOCK_ADDR
>  #define MIN_MEMBLOCK_ADDR	__pa(PAGE_OFFSET)
>  #endif
>  #ifndef MAX_MEMBLOCK_ADDR
>  #define MAX_MEMBLOCK_ADDR	((phys_addr_t)~0)
> -#endif

This isn't the right #endif. It is matching with the #ifndef MAX_MEMBLOCK_ADDR
not the intented #ifdef CONFIG_HAVE_MEMBLOCK.

Now I haven't chased through the exact reason this is causing my acpi
arm64 system not to boot on the basis it is obviously miss-matched anyway
and I'm inherently lazy.  It's resulting in stubs replacing the following weak
functions.

early_init_dt_add_memory_arch
(this is defined elsewhere for some architectures but not arm)

early_init_dt_mark_hotplug_memory_arch
(there is only one definition of this in the kernel so it doesn't
 need to be weak or in the header etc).

early_init_dt_reserve_memory_arch
(defined on mips but nothing else)

Taking out the right endif also lets you drop an #else removing some stub
functions further down in here.

Nice cleanup in general btw.

Thanks,

Jonathan
>  
>  void __init __weak early_init_dt_add_memory_arch(u64 base, u64 size)
>  {

WARNING: multiple messages have this Message-ID (diff)
From: Jonathan Cameron <jonathan.cameron@huawei.com>
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>,
	Michal Hocko <mhocko@suse.com>,
	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, linuxarm@huawei.com
Subject: Re: [RFC PATCH 03/29] mm: remove CONFIG_HAVE_MEMBLOCK
Date: Wed, 19 Sep 2018 10:04:49 +0100	[thread overview]
Message-ID: <20180919100449.00006df9@huawei.com> (raw)
Message-ID: <20180919090449.JAmMurbkKmjUbInErJ6P2AG1jt10NjvdVlmV6ArpRIE@z> (raw)
In-Reply-To: <1536163184-26356-4-git-send-email-rppt@linux.vnet.ibm.com>

On Wed, 5 Sep 2018 18:59:18 +0300
Mike Rapoport <rppt@linux.vnet.ibm.com> wrote:

> All architecures use memblock for early memory management. There is no need
> for the CONFIG_HAVE_MEMBLOCK configuration option.
> 
> Signed-off-by: Mike Rapoport <rppt@linux.vnet.ibm.com>

Hi Mike,

A minor editing issue in here that is stopping boot on arm64 platforms with latest
version of the mm tree.

> diff --git a/drivers/of/fdt.c b/drivers/of/fdt.c
> index 76c83c1..bd841bb 100644
> --- a/drivers/of/fdt.c
> +++ b/drivers/of/fdt.c
> @@ -1115,13 +1115,11 @@ int __init early_init_dt_scan_chosen(unsigned long node, const char *uname,
>  	return 1;
>  }
>  
> -#ifdef CONFIG_HAVE_MEMBLOCK
>  #ifndef MIN_MEMBLOCK_ADDR
>  #define MIN_MEMBLOCK_ADDR	__pa(PAGE_OFFSET)
>  #endif
>  #ifndef MAX_MEMBLOCK_ADDR
>  #define MAX_MEMBLOCK_ADDR	((phys_addr_t)~0)
> -#endif

This isn't the right #endif. It is matching with the #ifndef MAX_MEMBLOCK_ADDR
not the intented #ifdef CONFIG_HAVE_MEMBLOCK.

Now I haven't chased through the exact reason this is causing my acpi
arm64 system not to boot on the basis it is obviously miss-matched anyway
and I'm inherently lazy.  It's resulting in stubs replacing the following weak
functions.

early_init_dt_add_memory_arch
(this is defined elsewhere for some architectures but not arm)

early_init_dt_mark_hotplug_memory_arch
(there is only one definition of this in the kernel so it doesn't
 need to be weak or in the header etc).

early_init_dt_reserve_memory_arch
(defined on mips but nothing else)

Taking out the right endif also lets you drop an #else removing some stub
functions further down in here.

Nice cleanup in general btw.

Thanks,

Jonathan
>  
>  void __init __weak early_init_dt_add_memory_arch(u64 base, u64 size)
>  {

  reply	other threads:[~2018-09-19  9:04 UTC|newest]

Thread overview: 167+ 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 ` Mike Rapoport
2018-09-05 15:59 ` [RFC PATCH 01/29] mips: switch to NO_BOOTMEM Mike Rapoport
2018-09-05 15:59   ` Mike Rapoport
2018-09-05 15:59 ` [RFC PATCH 02/29] mm: remove CONFIG_NO_BOOTMEM Mike Rapoport
2018-09-05 15:59   ` Mike Rapoport
2018-09-05 15:59 ` [RFC PATCH 03/29] mm: remove CONFIG_HAVE_MEMBLOCK Mike Rapoport
2018-09-05 15:59   ` Mike Rapoport
2018-09-19  9:04   ` Jonathan Cameron [this message]
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:34       ` Mike Rapoport
2018-09-19 10:34       ` Mike Rapoport
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:45         ` Jonathan Cameron
2018-09-19 10:55         ` Mike Rapoport
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-05 15:59   ` Mike Rapoport
2018-09-06  7:30   ` Michal Hocko
2018-09-06  7:30     ` Michal Hocko
2018-09-06  8:31     ` 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   ` 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-05 15:59   ` [RFC PATCH 06/29] memblock: rename memblock_alloc{_nid, _try_nid} " Mike Rapoport
2018-09-05 15:59   ` [RFC PATCH 06/29] memblock: rename memblock_alloc{_nid,_try_nid} " Mike Rapoport
2018-09-06  7:35   ` Michal Hocko
2018-09-06  7:35     ` [RFC PATCH 06/29] memblock: rename memblock_alloc{_nid, _try_nid} " Michal Hocko
2018-09-06  7:35     ` [RFC PATCH 06/29] memblock: rename memblock_alloc{_nid,_try_nid} " Michal Hocko
2018-09-05 15:59 ` [RFC PATCH 07/29] memblock: remove _virt from APIs returning virtual address Mike Rapoport
2018-09-05 15:59   ` Mike Rapoport
2018-09-05 17:04   ` Rob Herring
2018-09-05 17:04     ` Rob Herring
2018-09-05 17:20     ` Mike Rapoport
2018-09-05 17:20       ` Mike Rapoport
2018-09-06  7:28       ` Michal Hocko
2018-09-06  7:28         ` Michal Hocko
2018-09-06 12:43         ` Mike Rapoport
2018-09-06 12:43           ` Mike Rapoport
2018-09-06 13:01           ` Michal Hocko
2018-09-06 13:01             ` Michal Hocko
2018-09-06 13:39             ` Mike Rapoport
2018-09-06 13:39               ` Mike Rapoport
2018-09-06 13:46               ` Michal Hocko
2018-09-06 13:46                 ` Michal Hocko
2018-09-07  8:42                 ` Mike Rapoport
2018-09-07  8:42                   ` Mike Rapoport
2018-09-07  8:47                   ` Michal Hocko
2018-09-07  8:47                     ` Michal Hocko
2018-09-07  9:19                     ` Mike Rapoport
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-05 15:59   ` Mike Rapoport
2018-09-06  7:39   ` Michal Hocko
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-05 15:59   ` Mike Rapoport
2018-09-06  7:41   ` Michal Hocko
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-05 15:59   ` Mike Rapoport
2018-09-06  7:49   ` [RFC PATCH 10/29] memblock: replace __alloc_bootmem_node_nopanic with memblock_alloc_try_nid_nop Michal Hocko
2018-09-06  7:49     ` [RFC PATCH 10/29] memblock: replace __alloc_bootmem_node_nopanic with memblock_alloc_try_nid_nopanic 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-05 15:59   ` Mike Rapoport
2018-09-06  7:53   ` Michal Hocko
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-05 15:59   ` Mike Rapoport
2018-09-06  7:55   ` Michal Hocko
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-05 15:59   ` Mike Rapoport
2018-09-06  7:57   ` Michal Hocko
2018-09-06  7:57     ` Michal Hocko
2018-09-06 12:44     ` Mike Rapoport
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-05 15:59   ` Mike Rapoport
2018-09-06  8:06   ` Michal Hocko
2018-09-06  8:06     ` Michal Hocko
2018-09-06 12:49     ` Mike Rapoport
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-05 15:59   ` Mike Rapoport
2018-09-06  8:08   ` Michal Hocko
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-05 15:59   ` Mike Rapoport
2018-09-06  8:38   ` Michal Hocko
2018-09-06  8:38     ` Michal Hocko
2018-09-06 12:50     ` Mike Rapoport
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-05 15:59   ` Mike Rapoport
2018-09-06  8:41   ` Michal Hocko
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-05 15:59   ` Mike Rapoport
2018-09-06  8:43   ` Michal Hocko
2018-09-06  8:43     ` Michal Hocko
2018-09-05 15:59 ` [RFC PATCH 19/29] memblock: replace alloc_bootmem_pages with memblock_alloc Mike Rapoport
2018-09-05 15:59   ` Mike Rapoport
2018-09-06  8:44   ` Michal Hocko
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-05 15:59   ` Mike Rapoport
2018-09-06  8:52   ` Michal Hocko
2018-09-06  8:52     ` Michal Hocko
2018-09-06 12:58     ` Mike Rapoport
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-05 15:59   ` Mike Rapoport
2018-09-06  8:55   ` Michal Hocko
2018-09-06  8:55     ` Michal Hocko
2018-09-06 13:14     ` Mike Rapoport
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-05 15:59   ` Mike Rapoport
2018-09-06  8:56   ` Michal Hocko
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-05 15:59   ` Mike Rapoport
2018-09-06  8:57   ` Michal Hocko
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-05 15:59   ` Mike Rapoport
2018-09-06  9:02   ` Michal Hocko
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-05 15:59   ` Mike Rapoport
2018-09-06  9:04   ` Michal Hocko
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-05 15:59   ` Mike Rapoport
2018-09-06  9:06   ` Michal Hocko
2018-09-06  9:06     ` Michal Hocko
2018-09-05 15:59 ` [RFC PATCH 27/29] mm: remove nobootmem Mike Rapoport
2018-09-05 15:59   ` Mike Rapoport
2018-09-06  9:08   ` Michal Hocko
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-05 15:59   ` Mike Rapoport
2018-09-06  9:08   ` Michal Hocko
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-05 15:59   ` Mike Rapoport
2018-09-06  2:33 ` [RFC PATCH 00/29] mm: remove bootmem allocator Greentime Hu
2018-09-06  2:33   ` Greentime Hu
2018-09-06  2:33   ` Greentime Hu
2018-09-06 13:30   ` Mike Rapoport
2018-09-06 13:30     ` Mike Rapoport
2018-09-06 13:30     ` Mike Rapoport
2018-09-06  9:15 ` Michal Hocko
2018-09-06  9:15   ` Michal Hocko
2018-09-06 13:04   ` Pasha Tatashin
2018-09-06 13:04     ` Pasha Tatashin
2018-09-06 13:04     ` Pasha Tatashin
2018-09-06 13:21     ` Mike Rapoport
2018-09-06 13:21       ` Mike Rapoport
2018-09-06 13:16   ` 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=20180919100449.00006df9@huawei.com \
    --to=jonathan.cameron@huawei.com \
    --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=linuxarm@huawei.com \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=mhocko@suse.com \
    --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 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.