Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit c4304529 authored by Atsushi Nemoto's avatar Atsushi Nemoto Committed by Ralf Baechle
Browse files

MIPS: Make local arrays with CL_SIZE static __initdata



Since commit 22242681 ("MIPS: Extend
COMMAND_LINE_SIZE"), CL_SIZE is 4096 and local array variables with this
size will cause an build failure with default CONFIG_FRAME_WARN settings.

Although current users of such array variables are all early bootstrap
code and not likely to cause real stack overflow (thread_info corruption),
it is preferable to  to declare these arrays static with __initdata.

Signed-off-by: default avatarAtsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: default avatarRalf Baechle <ralf@linux-mips.org>
parent f8ac0425
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -100,7 +100,7 @@ static __init void prom_init_console(void)

static __init void prom_init_cmdline(void)
{
	char buf[CL_SIZE];
	static char buf[CL_SIZE] __initdata;

	/* Get the kernel command line from CFE */
	if (cfe_getenv("LINUX_CMDLINE", buf, CL_SIZE) >= 0) {
+2 −1
Original line number Diff line number Diff line
@@ -54,7 +54,8 @@ static struct prom_pmemblock * __init prom_getmdesc(void)
{
	char *memsize_str;
	unsigned int memsize;
	char cmdline[CL_SIZE], *ptr;
	char *ptr;
	static char cmdline[CL_SIZE] __initdata;

	/* otherwise look in the environment */
	memsize_str = prom_getenv("memsize");
+1 −1
Original line number Diff line number Diff line
@@ -69,7 +69,7 @@ static inline unsigned long tag2ul(char *arg, const char *tag)

void __init prom_setup_cmdline(void)
{
	char cmd_line[CL_SIZE];
	static char cmd_line[CL_SIZE] __initdata;
	char *cp, *board;
	int prom_argc;
	char **prom_argv, **prom_envp;
+2 −2
Original line number Diff line number Diff line
@@ -160,7 +160,7 @@ static void __init prom_init_cmdline(void)
	int argc;
	int *argv32;
	int i;			/* Always ignore the "-c" at argv[0] */
	char builtin[CL_SIZE];
	static char builtin[CL_SIZE] __initdata;

	if (fw_arg0 >= CKSEG0 || fw_arg1 < CKSEG0) {
		/*
@@ -315,7 +315,7 @@ static inline void txx9_cache_fixup(void)

static void __init preprocess_cmdline(void)
{
	char cmdline[CL_SIZE];
	static char cmdline[CL_SIZE] __initdata;
	char *s;

	strcpy(cmdline, arcs_cmdline);