linux-next: build failure after merge of the rcu tree

Message ID 20230727141930.0b5a3c40@canb.auug.org.au
State New
Headers
Series linux-next: build failure after merge of the rcu tree |

Commit Message

Stephen Rothwell July 27, 2023, 4:19 a.m. UTC
  Hi all,

After merging the rcu tree, today's linux-next build (arm64 defconfig)
failed like this:

In file included from arch/arm64/include/asm/alternative.h:9,
                 from arch/arm64/include/asm/lse.h:14,
                 from arch/arm64/include/asm/cmpxchg.h:14,
                 from arch/arm64/include/asm/atomic.h:16,
                 from include/linux/atomic.h:7,
                 from include/asm-generic/bitops/atomic.h:5,
                 from arch/arm64/include/asm/bitops.h:25,
                 from include/linux/bitops.h:68,
                 from arch/arm64/include/asm/cache.h:40,
                 from include/linux/cache.h:6,
                 from include/linux/slab.h:15,
                 from include/linux/resource_ext.h:11,
                 from include/linux/acpi.h:13,
                 from include/acpi/apei.h:9,
                 from include/acpi/ghes.h:5,
                 from include/linux/arm_sdei.h:8,
                 from arch/arm64/kernel/asm-offsets.c:10:
include/linux/init.h:149:33: error: expected '=', ',', ';', 'asm' or '__attribute__' before '__ro_after_init'
  149 | extern char boot_command_line[] __ro_after_init;
      |                                 ^~~~~~~~~~~~~~~

Caused by commit

  de2f542cfbec ("fs/proc: Add /proc/cmdline_load for boot loader arguments")

I have applied the following fix up (I have a faint memory that the
section setting attributes are only needed on the definition, not the
declaration):

From 9f56e539ed7d9c402caa85d4f5f3f8cec8373b2f Mon Sep 17 00:00:00 2001
From: Stephen Rothwell <sfr@canb.auug.org.au>
Date: Thu, 27 Jul 2023 13:26:08 +1000
Subject: [PATCH] fix up for "fs/proc: Add /proc/cmdline_load for boot loader
 arguments"

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
---
 include/linux/init.h | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)
  

Comments

Paul E. McKenney July 27, 2023, 2:08 p.m. UTC | #1
On Thu, Jul 27, 2023 at 02:19:30PM +1000, Stephen Rothwell wrote:
> Hi all,
> 
> After merging the rcu tree, today's linux-next build (arm64 defconfig)
> failed like this:
> 
> In file included from arch/arm64/include/asm/alternative.h:9,
>                  from arch/arm64/include/asm/lse.h:14,
>                  from arch/arm64/include/asm/cmpxchg.h:14,
>                  from arch/arm64/include/asm/atomic.h:16,
>                  from include/linux/atomic.h:7,
>                  from include/asm-generic/bitops/atomic.h:5,
>                  from arch/arm64/include/asm/bitops.h:25,
>                  from include/linux/bitops.h:68,
>                  from arch/arm64/include/asm/cache.h:40,
>                  from include/linux/cache.h:6,
>                  from include/linux/slab.h:15,
>                  from include/linux/resource_ext.h:11,
>                  from include/linux/acpi.h:13,
>                  from include/acpi/apei.h:9,
>                  from include/acpi/ghes.h:5,
>                  from include/linux/arm_sdei.h:8,
>                  from arch/arm64/kernel/asm-offsets.c:10:
> include/linux/init.h:149:33: error: expected '=', ',', ';', 'asm' or '__attribute__' before '__ro_after_init'
>   149 | extern char boot_command_line[] __ro_after_init;
>       |                                 ^~~~~~~~~~~~~~~
> 
> Caused by commit
> 
>   de2f542cfbec ("fs/proc: Add /proc/cmdline_load for boot loader arguments")
> 
> I have applied the following fix up (I have a faint memory that the
> section setting attributes are only needed on the definition, not the
> declaration):
> 
> From 9f56e539ed7d9c402caa85d4f5f3f8cec8373b2f Mon Sep 17 00:00:00 2001
> From: Stephen Rothwell <sfr@canb.auug.org.au>
> Date: Thu, 27 Jul 2023 13:26:08 +1000
> Subject: [PATCH] fix up for "fs/proc: Add /proc/cmdline_load for boot loader
>  arguments"
> 
> Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>

Thank you, Stephen, I will adjust the commit as shown below.

							Thanx, Paul

> ---
>  include/linux/init.h | 4 +---
>  1 file changed, 1 insertion(+), 3 deletions(-)
> 
> diff --git a/include/linux/init.h b/include/linux/init.h
> index e3ce68988e1b..c075983c5015 100644
> --- a/include/linux/init.h
> +++ b/include/linux/init.h
> @@ -113,8 +113,6 @@
>  
>  #ifndef __ASSEMBLY__
>  
> -#include <linux/cache.h>
> -
>  /*
>   * Used for initialization calls..
>   */
> @@ -146,7 +144,7 @@ struct file_system_type;
>  
>  /* Defined in init/main.c */
>  extern int do_one_initcall(initcall_t fn);
> -extern char boot_command_line[] __ro_after_init;
> +extern char boot_command_line[];
>  extern char *saved_command_line;
>  extern unsigned int saved_command_line_len;
>  extern unsigned int reset_devices;
> -- 
> 2.40.1
> 
> -- 
> Cheers,
> Stephen Rothwell
  

Patch

diff --git a/include/linux/init.h b/include/linux/init.h
index e3ce68988e1b..c075983c5015 100644
--- a/include/linux/init.h
+++ b/include/linux/init.h
@@ -113,8 +113,6 @@ 
 
 #ifndef __ASSEMBLY__
 
-#include <linux/cache.h>
-
 /*
  * Used for initialization calls..
  */
@@ -146,7 +144,7 @@  struct file_system_type;
 
 /* Defined in init/main.c */
 extern int do_one_initcall(initcall_t fn);
-extern char boot_command_line[] __ro_after_init;
+extern char boot_command_line[];
 extern char *saved_command_line;
 extern unsigned int saved_command_line_len;
 extern unsigned int reset_devices;