How does kdump deal with trampoline allocation?

Eric W. Biederman ebiederm at xmission.com
Tue Dec 28 02:40:08 EST 2010


"H. Peter Anvin" <hpa at zytor.com> writes:

> On 12/27/2010 04:06 PM, Vivek Goyal wrote:
>> On Mon, Dec 27, 2010 at 12:31:20PM -0800, H. Peter Anvin wrote:
>>> Hi guys,
>>>
>>> I'm planning a major overhaul of the trampoline allocation in x86, and
>>> I'm trying to understand how kdump deals with it.  The trampoline has to
>>> be allocated in low memory (< 1 MiB) and obviously that doesn't include
>>> the kdump area at all.
>> 
>> Hi Peter,
>> 
>> Kdump has the concept of backup area. We backup the contents of first
>> 640KB of physical RAM in kdump reserved area and then allow kdump kernel
>> to use first 640KB of memory. So any trampoline allocation can be done
>> in low memory area without overwritting the contents of first kernel.
>> 
>
> OK, that's straightforward.  That presumably means that the low 640K is
> marked unused in the memory map that memblock sees during early startup.
>  That fits very cleanly with the patches I'm doing.

Additionally we typically start with maxcpus=1 so we don't strictly
need the trampoline to start other cpus.

Eric



More information about the kexec mailing list