[PATCH 3/8] add mem64_min/max control

H. Peter Anvin hpa at zytor.com
Sat Nov 17 23:55:41 EST 2012

On 11/17/2012 08:47 PM, Eric W. Biederman wrote:
>> I don't think that is feasible; we need access to this structure
>> extremely early.  I think if you're using the 64-bit entry point it
>> has to be an entry condition that those structures are mapped.  It
>> simply becomes a precondition for using the 64-bit entry point.
> 64bit purgatory coming from kexec should be running with a page table
> that identity maps everything loaded by kexec and in practice all of
> memory.
> We should still be using that page table when we enter the new kernel.
> However then the 64bit kernel switches to it's own page tables.
> So after that point we potentially need early_ioremap, because the
> kernel's page tables may not have covered the boot_params.  Certainly we
> need to do something to ensure the kernels page table covers boot_params.

The easy way to fix that is to do what we do on 32 bits: we copy it into 
the bss before we turn paging on (the 64-bit equivalent is before we 
switch to the new page tables.)  That way we know where it is, at least 
for the bounded-size data items.


H. Peter Anvin, Intel Open Source Technology Center
I work for Intel.  I don't speak on their behalf.

More information about the kexec mailing list