public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Vivek Goyal <vgoyal@redhat.com>
To: Bernhard Walle <bwalle@suse.de>
Cc: Amul Shah <amul.shah@unisys.com>,
	Andi Kleen <andi@firstfloor.org>,
	Johannes Weiner <hannes@saeurebad.de>,
	kexec@lists.infradead.org, linux-kernel@vger.kernel.org,
	hpa@zytor.com, anderson@redhat.com, "Romer,
	Benjamin M" <Benjamin.Romer@unisys.com>
Subject: Re: [patch 2/3] Add flags parameter to reserve_bootmem_generic()
Date: Mon, 9 Jun 2008 16:29:35 -0400	[thread overview]
Message-ID: <20080609202935.GI3542@redhat.com> (raw)
In-Reply-To: <20080609221732.1e14e5d5@kopernikus.site>

On Mon, Jun 09, 2008 at 10:17:32PM +0200, Bernhard Walle wrote:
> * Amul Shah <amul.shah@unisys.com> [2008-06-09 15:50]:
> >
> > > Don't remember the details. Perhaps Amul does (cc'ed)
> > > 
> > > -Andi
> > >   
> > 
> > The short story is that the kexec kernel was panicking when trying to
> > reserve the MP tables.  The panic occurs because the MP tables resided
> > in a reserved memory area above the highest address (80MB phys at that
> > time) in the user defined E820 map used by the kexec kernel.
> > 
> > I had placed my code to affect only MP table reservation (see patch
> > below) because it is unique to just that code path.  Andi decided a
> > generalized approach would be better in case other vendors had similar
> > issues.
> 
> Ok, in that case it makes indeed sense to just return success here.
> Here's my third version of that patch:

Hi Bernhard,


[..]
> -void __init reserve_bootmem_generic(unsigned long phys, unsigned len)
> +int __init reserve_bootmem_generic(unsigned long phys, unsigned len, int flags)
>  {
>  #ifdef CONFIG_NUMA
>  	int nid, next_nid;
>  #endif
>  	unsigned long pfn = phys >> PAGE_SHIFT;
> +	int ret;
>  
>  	if (pfn >= end_pfn) {
>  		/*
> @@ -811,11 +812,11 @@ void __init reserve_bootmem_generic(unsi
>  		 * firmware tables:
>  		 */
>  		if (pfn < max_pfn_mapped)
> -			return;
> +			return 0;
>  

Can you please put some more explanation comment here to explain that
why it is ok to return with success, despite the fact that we never
reserved any memory.

One comment is already there, but it would be nice if we could expand
that a bit to give more context. Like during normal boot there we need
to make sure "MP tables" memory is reserved but once kdump kernel is
booted, same "MP tables" memory might be beyond "end_pfn" and
reserving code would not know about this special case. So it is ok to
return with success. (Something similar).

Thanks
Vivek

  reply	other threads:[~2008-06-09 20:29 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-06-08 13:46 [patch 0/3] [x86] Fix crashkernel reservation on NUMA machines Bernhard Walle
2008-06-08 13:46 ` [patch 1/3] Add return value to reserve_bootmem_node() Bernhard Walle
2008-06-08 13:46 ` [patch 2/3] Add flags parameter to reserve_bootmem_generic() Bernhard Walle
2008-06-08 14:26   ` WANG Cong
2008-06-08 17:12     ` Bernhard Walle
2008-06-08 22:01   ` Johannes Weiner
2008-06-09 13:22     ` Vivek Goyal
2008-06-09 16:23       ` Bernhard Walle
2008-06-09 16:39         ` Andi Kleen
2008-06-09 19:50           ` Amul Shah
2008-06-09 20:17             ` Bernhard Walle
2008-06-09 20:29               ` Vivek Goyal [this message]
2008-06-09 20:42                 ` Bernhard Walle
2008-06-09 20:54                   ` Vivek Goyal
2008-06-09 20:57                     ` Bernhard Walle
2008-06-09 21:00                       ` Vivek Goyal
2008-06-09 21:04                         ` Bernhard Walle
2008-06-09 16:25     ` Bernhard Walle
2008-06-08 22:06   ` Johannes Weiner
2008-06-09 16:37     ` Bernhard Walle
2008-06-08 13:46 ` [patch 3/3] Use reserve_bootmem_generic() to reserve crashkernel memory on x86_64 Bernhard Walle
2008-06-09 13:06 ` [patch 0/3] [x86] Fix crashkernel reservation on NUMA machines Vivek Goyal
2008-06-10 12:44 ` Ingo Molnar

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=20080609202935.GI3542@redhat.com \
    --to=vgoyal@redhat.com \
    --cc=Benjamin.Romer@unisys.com \
    --cc=amul.shah@unisys.com \
    --cc=anderson@redhat.com \
    --cc=andi@firstfloor.org \
    --cc=bwalle@suse.de \
    --cc=hannes@saeurebad.de \
    --cc=hpa@zytor.com \
    --cc=kexec@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox