public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* Re: + handle-kernelcore=-boot-parameter-in-common-code-to-avoid-boot-problem-on-ia64.patch added to -mm tree
       [not found] <200704242104.l3OL4SV3019236@shell0.pdx.osdl.net>
@ 2007-04-25 15:08 ` Randy Dunlap
  2007-04-25 16:23   ` Mel Gorman
  0 siblings, 1 reply; 3+ messages in thread
From: Randy Dunlap @ 2007-04-25 15:08 UTC (permalink / raw)
  To: linux-kernel; +Cc: akpm, y-goto, apw, mel

On Tue, 24 Apr 2007 14:04:28 -0700 akpm@linux-foundation.org wrote:

> 
> The patch titled
>      Handle kernelcore= boot parameter in common code to avoid boot problem on IA64
> has been added to the -mm tree.  Its filename is
>      handle-kernelcore=-boot-parameter-in-common-code-to-avoid-boot-problem-on-ia64.patch
> 
> *** Remember to use Documentation/SubmitChecklist when testing your code ***
> 
> See http://www.zip.com.au/~akpm/linux/patches/stuff/added-to-mm.txt to find
> out what to do about this
> 
> ------------------------------------------------------
> Subject: Handle kernelcore= boot parameter in common code to avoid boot problem on IA64
> From: Yasunori Goto <y-goto@jp.fujitsu.com>
> 
> When "kernelcore" boot option is specified, kernel can't boot up on ia64
> because of an infinite loop.  In addition, the parsing code can be handled
> in an architecture-independent manner.

Is this boot option documented anywhere in the kernel source tree?


> This patch patches uses common code to handle the kernelcore= parameter. 
> It is only available to architectures that support arch-independent
> zone-sizing (i.e.  define CONFIG_ARCH_POPULATES_NODE_MAP).  Other
> architectures will ignore the boot parameter.
> 
> This effectively removes the following arch-specific patches;
> 
> ia64-specify-amount-of-kernel-memory-at-boot-time.patch
> ppc-and-powerpc-specify-amount-of-kernel-memory-at-boot-time.patch
> x86_64-specify-amount-of-kernel-memory-at-boot-time.patch
> x86-specify-amount-of-kernel-memory-at-boot-time.patch
> 
> Signed-off-by: Yasunori Goto <y-goto@jp.fujitsu.com>
> Signed-off-by: Mel Gorman <mel@csn.ul.ie>
> Acked-by: Andy Whitcroft <apw@shadowen.org>
> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
> ---
> 
>  arch/i386/kernel/setup.c   |    1 -
>  arch/ia64/kernel/efi.c     |    2 --
>  arch/powerpc/kernel/prom.c |    1 -
>  arch/ppc/mm/init.c         |    2 --
>  arch/x86_64/kernel/e820.c  |    1 -
>  include/linux/mm.h         |    1 -
>  mm/page_alloc.c            |    3 +++
>  7 files changed, 3 insertions(+), 8 deletions(-)
> 
> diff -puN arch/i386/kernel/setup.c~handle-kernelcore=-boot-parameter-in-common-code-to-avoid-boot-problem-on-ia64 arch/i386/kernel/setup.c
> --- a/arch/i386/kernel/setup.c~handle-kernelcore=-boot-parameter-in-common-code-to-avoid-boot-problem-on-ia64
> +++ a/arch/i386/kernel/setup.c
> @@ -195,7 +195,6 @@ static int __init parse_mem(char *arg)
>  	return 0;
>  }
>  early_param("mem", parse_mem);
> -early_param("kernelcore", cmdline_parse_kernelcore);
>  
>  #ifdef CONFIG_PROC_VMCORE
>  /* elfcorehdr= specifies the location of elf core header
> diff -puN arch/ia64/kernel/efi.c~handle-kernelcore=-boot-parameter-in-common-code-to-avoid-boot-problem-on-ia64 arch/ia64/kernel/efi.c
> --- a/arch/ia64/kernel/efi.c~handle-kernelcore=-boot-parameter-in-common-code-to-avoid-boot-problem-on-ia64
> +++ a/arch/ia64/kernel/efi.c
> @@ -423,8 +423,6 @@ efi_init (void)
>  			mem_limit = memparse(cp + 4, &cp);
>  		} else if (memcmp(cp, "max_addr=", 9) == 0) {
>  			max_addr = GRANULEROUNDDOWN(memparse(cp + 9, &cp));
> -		} else if (memcmp(cp, "kernelcore=",11) == 0) {
> -			cmdline_parse_kernelcore(cp+11);
>  		} else if (memcmp(cp, "min_addr=", 9) == 0) {
>  			min_addr = GRANULEROUNDDOWN(memparse(cp + 9, &cp));
>  		} else {
> diff -puN arch/powerpc/kernel/prom.c~handle-kernelcore=-boot-parameter-in-common-code-to-avoid-boot-problem-on-ia64 arch/powerpc/kernel/prom.c
> --- a/arch/powerpc/kernel/prom.c~handle-kernelcore=-boot-parameter-in-common-code-to-avoid-boot-problem-on-ia64
> +++ a/arch/powerpc/kernel/prom.c
> @@ -432,7 +432,6 @@ static int __init early_parse_mem(char *
>  	return 0;
>  }
>  early_param("mem", early_parse_mem);
> -early_param("kernelcore", cmdline_parse_kernelcore);
>  
>  /*
>   * The device tree may be allocated below our memory limit, or inside the
> diff -puN arch/ppc/mm/init.c~handle-kernelcore=-boot-parameter-in-common-code-to-avoid-boot-problem-on-ia64 arch/ppc/mm/init.c
> --- a/arch/ppc/mm/init.c~handle-kernelcore=-boot-parameter-in-common-code-to-avoid-boot-problem-on-ia64
> +++ a/arch/ppc/mm/init.c
> @@ -214,8 +214,6 @@ void MMU_setup(void)
>  	}
>  }
>  
> -early_param("kernelcore", cmdline_parse_kernelcore);
> -
>  /*
>   * MMU_init sets up the basic memory mappings for the kernel,
>   * including both RAM and possibly some I/O regions,
> diff -puN arch/x86_64/kernel/e820.c~handle-kernelcore=-boot-parameter-in-common-code-to-avoid-boot-problem-on-ia64 arch/x86_64/kernel/e820.c
> --- a/arch/x86_64/kernel/e820.c~handle-kernelcore=-boot-parameter-in-common-code-to-avoid-boot-problem-on-ia64
> +++ a/arch/x86_64/kernel/e820.c
> @@ -618,7 +618,6 @@ static int __init parse_memopt(char *p)
>  	return 0;
>  } 
>  early_param("mem", parse_memopt);
> -early_param("kernelcore", cmdline_parse_kernelcore);
>  
>  static int userdef __initdata;
>  
> diff -puN include/linux/mm.h~handle-kernelcore=-boot-parameter-in-common-code-to-avoid-boot-problem-on-ia64 include/linux/mm.h
> --- a/include/linux/mm.h~handle-kernelcore=-boot-parameter-in-common-code-to-avoid-boot-problem-on-ia64
> +++ a/include/linux/mm.h
> @@ -988,7 +988,6 @@ extern unsigned long find_max_pfn_with_a
>  extern void free_bootmem_with_active_regions(int nid,
>  						unsigned long max_low_pfn);
>  extern void sparse_memory_present_with_active_regions(int nid);
> -extern int cmdline_parse_kernelcore(char *p);
>  #ifndef CONFIG_HAVE_ARCH_EARLY_PFN_TO_NID
>  extern int early_pfn_to_nid(unsigned long pfn);
>  #endif /* CONFIG_HAVE_ARCH_EARLY_PFN_TO_NID */
> diff -puN mm/page_alloc.c~handle-kernelcore=-boot-parameter-in-common-code-to-avoid-boot-problem-on-ia64 mm/page_alloc.c
> --- a/mm/page_alloc.c~handle-kernelcore=-boot-parameter-in-common-code-to-avoid-boot-problem-on-ia64
> +++ a/mm/page_alloc.c
> @@ -3542,6 +3542,9 @@ int __init cmdline_parse_kernelcore(char
>  
>  	return 0;
>  }
> +
> +early_param("kernelcore", cmdline_parse_kernelcore);
> +
>  #endif /* CONFIG_ARCH_POPULATES_NODE_MAP */
>  
>  /**
> _


---
~Randy
*** Remember to use Documentation/SubmitChecklist when testing your code ***

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: + handle-kernelcore=-boot-parameter-in-common-code-to-avoid-boot-problem-on-ia64.patch added to -mm tree
  2007-04-25 15:08 ` + handle-kernelcore=-boot-parameter-in-common-code-to-avoid-boot-problem-on-ia64.patch added to -mm tree Randy Dunlap
@ 2007-04-25 16:23   ` Mel Gorman
  2007-04-25 16:33     ` Randy Dunlap
  0 siblings, 1 reply; 3+ messages in thread
From: Mel Gorman @ 2007-04-25 16:23 UTC (permalink / raw)
  To: Randy Dunlap; +Cc: linux-kernel, akpm, y-goto, apw

On (25/04/07 08:08), Randy Dunlap didst pronounce:
> On Tue, 24 Apr 2007 14:04:28 -0700 akpm@linux-foundation.org wrote:
> 
> > 
> > The patch titled
> >      Handle kernelcore= boot parameter in common code to avoid boot problem on IA64
> > has been added to the -mm tree.  Its filename is
> >      handle-kernelcore=-boot-parameter-in-common-code-to-avoid-boot-problem-on-ia64.patch
> > 
> > *** Remember to use Documentation/SubmitChecklist when testing your code ***
> > 
> > See http://www.zip.com.au/~akpm/linux/patches/stuff/added-to-mm.txt to find
> > out what to do about this
> > 
> > ------------------------------------------------------
> > Subject: Handle kernelcore= boot parameter in common code to avoid boot problem on IA64
> > From: Yasunori Goto <y-goto@jp.fujitsu.com>
> > 
> > When "kernelcore" boot option is specified, kernel can't boot up on ia64
> > because of an infinite loop.  In addition, the parsing code can be handled
> > in an architecture-independent manner.
> 
> Is this boot option documented anywhere in the kernel source tree?
> 

Documentation/kernel-parameters.txt

> 
> > This patch patches uses common code to handle the kernelcore= parameter. 
> > It is only available to architectures that support arch-independent
> > zone-sizing (i.e.  define CONFIG_ARCH_POPULATES_NODE_MAP).  Other
> > architectures will ignore the boot parameter.
> > 
> > This effectively removes the following arch-specific patches;
> > 
> > ia64-specify-amount-of-kernel-memory-at-boot-time.patch
> > ppc-and-powerpc-specify-amount-of-kernel-memory-at-boot-time.patch
> > x86_64-specify-amount-of-kernel-memory-at-boot-time.patch
> > x86-specify-amount-of-kernel-memory-at-boot-time.patch
> > 
> > Signed-off-by: Yasunori Goto <y-goto@jp.fujitsu.com>
> > Signed-off-by: Mel Gorman <mel@csn.ul.ie>
> > Acked-by: Andy Whitcroft <apw@shadowen.org>
> > Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
> > ---
> > 
> >  arch/i386/kernel/setup.c   |    1 -
> >  arch/ia64/kernel/efi.c     |    2 --
> >  arch/powerpc/kernel/prom.c |    1 -
> >  arch/ppc/mm/init.c         |    2 --
> >  arch/x86_64/kernel/e820.c  |    1 -
> >  include/linux/mm.h         |    1 -
> >  mm/page_alloc.c            |    3 +++
> >  7 files changed, 3 insertions(+), 8 deletions(-)
> > 
> > diff -puN arch/i386/kernel/setup.c~handle-kernelcore=-boot-parameter-in-common-code-to-avoid-boot-problem-on-ia64 arch/i386/kernel/setup.c
> > --- a/arch/i386/kernel/setup.c~handle-kernelcore=-boot-parameter-in-common-code-to-avoid-boot-problem-on-ia64
> > +++ a/arch/i386/kernel/setup.c
> > @@ -195,7 +195,6 @@ static int __init parse_mem(char *arg)
> >  	return 0;
> >  }
> >  early_param("mem", parse_mem);
> > -early_param("kernelcore", cmdline_parse_kernelcore);
> >  
> >  #ifdef CONFIG_PROC_VMCORE
> >  /* elfcorehdr= specifies the location of elf core header
> > diff -puN arch/ia64/kernel/efi.c~handle-kernelcore=-boot-parameter-in-common-code-to-avoid-boot-problem-on-ia64 arch/ia64/kernel/efi.c
> > --- a/arch/ia64/kernel/efi.c~handle-kernelcore=-boot-parameter-in-common-code-to-avoid-boot-problem-on-ia64
> > +++ a/arch/ia64/kernel/efi.c
> > @@ -423,8 +423,6 @@ efi_init (void)
> >  			mem_limit = memparse(cp + 4, &cp);
> >  		} else if (memcmp(cp, "max_addr=", 9) == 0) {
> >  			max_addr = GRANULEROUNDDOWN(memparse(cp + 9, &cp));
> > -		} else if (memcmp(cp, "kernelcore=",11) == 0) {
> > -			cmdline_parse_kernelcore(cp+11);
> >  		} else if (memcmp(cp, "min_addr=", 9) == 0) {
> >  			min_addr = GRANULEROUNDDOWN(memparse(cp + 9, &cp));
> >  		} else {
> > diff -puN arch/powerpc/kernel/prom.c~handle-kernelcore=-boot-parameter-in-common-code-to-avoid-boot-problem-on-ia64 arch/powerpc/kernel/prom.c
> > --- a/arch/powerpc/kernel/prom.c~handle-kernelcore=-boot-parameter-in-common-code-to-avoid-boot-problem-on-ia64
> > +++ a/arch/powerpc/kernel/prom.c
> > @@ -432,7 +432,6 @@ static int __init early_parse_mem(char *
> >  	return 0;
> >  }
> >  early_param("mem", early_parse_mem);
> > -early_param("kernelcore", cmdline_parse_kernelcore);
> >  
> >  /*
> >   * The device tree may be allocated below our memory limit, or inside the
> > diff -puN arch/ppc/mm/init.c~handle-kernelcore=-boot-parameter-in-common-code-to-avoid-boot-problem-on-ia64 arch/ppc/mm/init.c
> > --- a/arch/ppc/mm/init.c~handle-kernelcore=-boot-parameter-in-common-code-to-avoid-boot-problem-on-ia64
> > +++ a/arch/ppc/mm/init.c
> > @@ -214,8 +214,6 @@ void MMU_setup(void)
> >  	}
> >  }
> >  
> > -early_param("kernelcore", cmdline_parse_kernelcore);
> > -
> >  /*
> >   * MMU_init sets up the basic memory mappings for the kernel,
> >   * including both RAM and possibly some I/O regions,
> > diff -puN arch/x86_64/kernel/e820.c~handle-kernelcore=-boot-parameter-in-common-code-to-avoid-boot-problem-on-ia64 arch/x86_64/kernel/e820.c
> > --- a/arch/x86_64/kernel/e820.c~handle-kernelcore=-boot-parameter-in-common-code-to-avoid-boot-problem-on-ia64
> > +++ a/arch/x86_64/kernel/e820.c
> > @@ -618,7 +618,6 @@ static int __init parse_memopt(char *p)
> >  	return 0;
> >  } 
> >  early_param("mem", parse_memopt);
> > -early_param("kernelcore", cmdline_parse_kernelcore);
> >  
> >  static int userdef __initdata;
> >  
> > diff -puN include/linux/mm.h~handle-kernelcore=-boot-parameter-in-common-code-to-avoid-boot-problem-on-ia64 include/linux/mm.h
> > --- a/include/linux/mm.h~handle-kernelcore=-boot-parameter-in-common-code-to-avoid-boot-problem-on-ia64
> > +++ a/include/linux/mm.h
> > @@ -988,7 +988,6 @@ extern unsigned long find_max_pfn_with_a
> >  extern void free_bootmem_with_active_regions(int nid,
> >  						unsigned long max_low_pfn);
> >  extern void sparse_memory_present_with_active_regions(int nid);
> > -extern int cmdline_parse_kernelcore(char *p);
> >  #ifndef CONFIG_HAVE_ARCH_EARLY_PFN_TO_NID
> >  extern int early_pfn_to_nid(unsigned long pfn);
> >  #endif /* CONFIG_HAVE_ARCH_EARLY_PFN_TO_NID */
> > diff -puN mm/page_alloc.c~handle-kernelcore=-boot-parameter-in-common-code-to-avoid-boot-problem-on-ia64 mm/page_alloc.c
> > --- a/mm/page_alloc.c~handle-kernelcore=-boot-parameter-in-common-code-to-avoid-boot-problem-on-ia64
> > +++ a/mm/page_alloc.c
> > @@ -3542,6 +3542,9 @@ int __init cmdline_parse_kernelcore(char
> >  
> >  	return 0;
> >  }
> > +
> > +early_param("kernelcore", cmdline_parse_kernelcore);
> > +
> >  #endif /* CONFIG_ARCH_POPULATES_NODE_MAP */
> >  
> >  /**
> > _
> 
> 
> ---
> ~Randy
> *** Remember to use Documentation/SubmitChecklist when testing your code ***

-- 
-- 
Mel Gorman
Part-time Phd Student                          Linux Technology Center
University of Limerick                         IBM Dublin Software Lab

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: + handle-kernelcore=-boot-parameter-in-common-code-to-avoid-boot-problem-on-ia64.patch added to -mm tree
  2007-04-25 16:23   ` Mel Gorman
@ 2007-04-25 16:33     ` Randy Dunlap
  0 siblings, 0 replies; 3+ messages in thread
From: Randy Dunlap @ 2007-04-25 16:33 UTC (permalink / raw)
  To: Mel Gorman; +Cc: linux-kernel, akpm, y-goto, apw

Mel Gorman wrote:
> On (25/04/07 08:08), Randy Dunlap didst pronounce:
>> On Tue, 24 Apr 2007 14:04:28 -0700 akpm@linux-foundation.org wrote:
>>
>>> The patch titled
>>>      Handle kernelcore= boot parameter in common code to avoid boot problem on IA64
>>> has been added to the -mm tree.  Its filename is
>>>      handle-kernelcore=-boot-parameter-in-common-code-to-avoid-boot-problem-on-ia64.patch
>>>
>>> *** Remember to use Documentation/SubmitChecklist when testing your code ***
>>>
>>> See http://www.zip.com.au/~akpm/linux/patches/stuff/added-to-mm.txt to find
>>> out what to do about this
>>>
>>> ------------------------------------------------------
>>> Subject: Handle kernelcore= boot parameter in common code to avoid boot problem on IA64
>>> From: Yasunori Goto <y-goto@jp.fujitsu.com>
>>>
>>> When "kernelcore" boot option is specified, kernel can't boot up on ia64
>>> because of an infinite loop.  In addition, the parsing code can be handled
>>> in an architecture-independent manner.
>> Is this boot option documented anywhere in the kernel source tree?
>>
> 
> Documentation/kernel-parameters.txt

Thanks, my bad.  I failed to look at that file in -mm.

-- 
~Randy
*** Remember to use Documentation/SubmitChecklist when testing your code ***

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2007-04-25 16:33 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <200704242104.l3OL4SV3019236@shell0.pdx.osdl.net>
2007-04-25 15:08 ` + handle-kernelcore=-boot-parameter-in-common-code-to-avoid-boot-problem-on-ia64.patch added to -mm tree Randy Dunlap
2007-04-25 16:23   ` Mel Gorman
2007-04-25 16:33     ` Randy Dunlap

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox