[PATCH] x86: Move crashkernel reservation before dma32_reserve_bootmem()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Jul 14, 2008 at 03:37:24PM +0200, Bernhard Walle wrote:
> * Vivek Goyal [2008-07-14 09:30]:
> >
> > On Sun, Jul 13, 2008 at 08:49:44PM +0200, Bernhard Walle wrote:
> > > From: Bernhard Walle <bernhard.walle at gmx.de>
> > > 
> > > On a x86-64 machine (nothing special I could encounter) I had the problem that
> > > crashkernel reservation with the usual "64M at 16M" failed. While debugging that,
> > > I encountered that dma32_reserve_bootmem() reserves a memory region which is in
> > > that area.
> > > 
> > > Because dma32_reserve_bootmem() does not rely on a specific offset but
> > > crashkernel does, it makes sense to move the crashkernel reservation up a bit.
> > > I tested that patch and it works without problems. I don't see any negative
> > > effects of that move, but maybe I oversaw something ...
> > > 
> > > While the long-term solution is to make the crashkernel reservation dynamic
> > > (which is already done in -tip), this bug should be fixed also short-term for
> > > 2.6.26 (or 2.6.26-stable if it's too short), and that's why I made that patch.
> > > 
> > > 
> > > Signed-off-by: Bernhard Walle <bwalle at suse.de>
> > > Signed-off-by: Bernhard Walle <bernhard.walle at gmx.de>
> > > ---
> > >  arch/x86/kernel/setup_64.c |    7 ++++++-
> > >  1 files changed, 6 insertions(+), 1 deletions(-)
> > > 
> > > diff --git a/arch/x86/kernel/setup_64.c b/arch/x86/kernel/setup_64.c
> > > index 6dff128..158cefe 100644
> > > --- a/arch/x86/kernel/setup_64.c
> > > +++ b/arch/x86/kernel/setup_64.c
> > > @@ -444,6 +444,12 @@ void __init setup_arch(char **cmdline_p)
> > >  	contig_initmem_init(0, end_pfn);
> > >  #endif
> > >  
> > > +	/*
> > > +	 * dma32_reserve_bootmem() allocates bootmem which may conflict
> > > +	 * with the crashkernel command line, so do that before
> > > +	 */
> > > +	reserve_crashkernel();
> > > +
> > >  	dma32_reserve_bootmem();
> > >  
> > >  #ifdef CONFIG_ACPI_SLEEP
> > > @@ -484,7 +490,6 @@ void __init setup_arch(char **cmdline_p)
> > >  		}
> > >  	}
> > >  #endif
> > > -	reserve_crashkernel();
> > >  
> > >  	reserve_ibft_region();
> > 
> > Looks good to me. 
> > 
> > Acked-by: Vivek Goyal <vgoyal at redhat.com>
> 
> Greg,
> 
> would that be something for -stable?

If it affects 2.6.25 or 2.6.26, yes, it would be.  Just send it to
stable at kernel.org and we can take it from there as long as it is
accepted already into Linus's tree.

thanks,

greg k-h



[Index of Archives]     [LM Sensors]     [Linux Sound]     [ALSA Users]     [ALSA Devel]     [Linux Audio Users]     [Linux Media]     [Kernel]     [Gimp]     [Yosemite News]     [Linux Media]

  Powered by Linux