[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20180905115411.0c52399c@canb.auug.org.au>
Date: Wed, 5 Sep 2018 11:54:11 +1000
From: Stephen Rothwell <sfr@...b.auug.org.au>
To: Rob Herring <robherring2@...il.com>
Cc: Linux-Next Mailing List <linux-next@...r.kernel.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: Re: linux-next: build warnings after merge of the devicetree tree
Hi all,
On Wed, 5 Sep 2018 10:39:06 +1000 Stephen Rothwell <sfr@...b.auug.org.au> wrote:
>
> After merging the devicetree tree, today's linux-next build (x86_64
> allmodconfig) produced these warnings:
>
> WARNING: vmlinux.o(.text+0xf40a16): Section mismatch in reference from the function of_fdt_limit_memory() to the variable .init.data:dt_root_addr_cells
> The function of_fdt_limit_memory() references
> the variable __initdata dt_root_addr_cells.
> This is often because of_fdt_limit_memory lacks a __initdata
> annotation or the annotation of dt_root_addr_cells is wrong.
>
> WARNING: vmlinux.o(.text+0xf40a1d): Section mismatch in reference from the function of_fdt_limit_memory() to the variable .init.data:dt_root_size_cells
> The function of_fdt_limit_memory() references
> the variable __initdata dt_root_size_cells.
> This is often because of_fdt_limit_memory lacks a __initdata
> annotation or the annotation of dt_root_size_cells is wrong.
>
> Introduced by commit
>
> bb35ea5c7c30 ("of/fdt: avoid re-parsing '#{address,size}-cells' in of_fdt_limit_memory")
It turns out that section mismatches are fatal errors in some configs (like powerpc allnoconfig), so I have added the following patch for today:
From: Stephen Rothwell <sfr@...b.auug.org.au>
Date: Wed, 5 Sep 2018 11:50:29 +1000
Subject: [PATCH] mark of_fdt_limit_memory() as __init
Signed-off-by: Stephen Rothwell <sfr@...b.auug.org.au>
---
drivers/of/fdt.c | 2 +-
include/linux/of_fdt.h | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/of/fdt.c b/drivers/of/fdt.c
index fef4b2c8a171..fe78bed8925f 100644
--- a/drivers/of/fdt.c
+++ b/drivers/of/fdt.c
@@ -39,7 +39,7 @@
* memory entries in the /memory node. This function may be called
* any time after initial_boot_param is set.
*/
-void of_fdt_limit_memory(int limit)
+void __init of_fdt_limit_memory(int limit)
{
int memory;
int len;
diff --git a/include/linux/of_fdt.h b/include/linux/of_fdt.h
index b9cd9ebdf9b9..19ebf22a7862 100644
--- a/include/linux/of_fdt.h
+++ b/include/linux/of_fdt.h
@@ -46,7 +46,7 @@ extern char __dtb_end[];
/* Other Prototypes */
extern u64 of_flat_dt_translate_address(unsigned long node);
-extern void of_fdt_limit_memory(int limit);
+extern void __init of_fdt_limit_memory(int limit);
#endif /* CONFIG_OF_FLATTREE */
#ifdef CONFIG_OF_EARLY_FLATTREE
--
2.18.0
--
Cheers,
Stephen Rothwell
Content of type "application/pgp-signature" skipped
Powered by blists - more mailing lists