2008-06-08 13:46:48

by Bernhard Walle

[permalink] [raw]
Subject: [patch 0/3] [x86] Fix crashkernel reservation on NUMA machines

This patch series fixes the crashkernel reservation on NUMA machine. The
regression was discovered by Dave Anderson <[email protected]>.

The background is that on NUMA machines, reserve_bootmem_generic() is required
instead of reserve_bootmem(). To achieve that, it's necessary to make a few
API changes.

The patches are against latest linux-2.6 git. They should still go into 2.6.26
since it's only bug fixing. For 2.6.27, we should unify crashkernel reservation
for i386 and x86-64.

Tested on both i386 and x86-64. Compilation was tested with both kexec disabled
and enabled. The change is x86 only, so no need to test on other architectures.


Signed-off-by: Bernhard Walle <[email protected]>

--
Bernhard Walle, SUSE LINUX Products GmbH, Architecture Maintenance


2008-06-09 13:07:09

by Vivek Goyal

[permalink] [raw]
Subject: Re: [patch 0/3] [x86] Fix crashkernel reservation on NUMA machines

On Sun, Jun 08, 2008 at 03:46:28PM +0200, Bernhard Walle wrote:
> This patch series fixes the crashkernel reservation on NUMA machine. The
> regression was discovered by Dave Anderson <[email protected]>.
>
> The background is that on NUMA machines, reserve_bootmem_generic() is required
> instead of reserve_bootmem(). To achieve that, it's necessary to make a few
> API changes.
>
> The patches are against latest linux-2.6 git. They should still go into 2.6.26
> since it's only bug fixing. For 2.6.27, we should unify crashkernel reservation
> for i386 and x86-64.
>
> Tested on both i386 and x86-64. Compilation was tested with both kexec disabled
> and enabled. The change is x86 only, so no need to test on other architectures.
>
>
> Signed-off-by: Bernhard Walle <[email protected]>

Yes we should be using reserve_bootmem_generic() for reserving memory
on NUMA machines. Recently myself and Dave A. ran into crash while
reserving memory using resreve_bootmem() on a NUMA machine.

Reason for crash? reserve_bootmem() always assumes node id to be zero, and
that was not the case.

Acked-by: Vivek Goyal <[email protected]>

Thanks
Vivek

2008-06-10 12:44:46

by Ingo Molnar

[permalink] [raw]
Subject: Re: [patch 0/3] [x86] Fix crashkernel reservation on NUMA machines


* Bernhard Walle <[email protected]> wrote:

> This patch series fixes the crashkernel reservation on NUMA machine.
> The regression was discovered by Dave Anderson <[email protected]>.
>
> The background is that on NUMA machines, reserve_bootmem_generic() is
> required instead of reserve_bootmem(). To achieve that, it's necessary
> to make a few API changes.
>
> The patches are against latest linux-2.6 git. They should still go
> into 2.6.26 since it's only bug fixing. For 2.6.27, we should unify
> crashkernel reservation for i386 and x86-64.
>
> Tested on both i386 and x86-64. Compilation was tested with both kexec
> disabled and enabled. The change is x86 only, so no need to test on
> other architectures.

applied to tip/x86/numa - thanks Bernhard.

Ingo