Re: [PATCH v7 00/27] x86, boot, 64bit: Add support for loadingramdisk and bzImage above 4G

From: Yinghai Lu
Date: Sat Dec 22 2012 - 05:38:34 EST


On Fri, Dec 21, 2012 at 6:42 PM, Konrad Rzeszutek Wilk
<konrad.wilk@xxxxxxxxxx> wrote:
> On Mon, Dec 17, 2012 at 11:15:32PM -0800, Yinghai Lu wrote:
>> Now we have limit kdump reseved under 896M, because kexec has the limitation.
>> and also bzImage need to stay under 4g.
>>
>> To make kexec/kdump could use range above 4g, we need to make bzImage and
>> ramdisk could be loaded above 4g.
>> During booting bzImage will be unpacked on same postion and stay high.
>>
>> The patches add fields in setup_header and boot_params to
>> 1. get info about ramdisk position info above 4g from bootloader/kexec
>> 2. get info about cmd_line_ptr info above 4g from bootloader/kexec
>> 3. set xloadflags bit0 in header for bzImage and bootloader/kexec load
>> could check that to decide if it could to put bzImage high.
>> 4. use sentinel to make sure ext_* fields in boot_params could be used.
>>
>> This patches is tested with kexec tools with local changes and they are sent
>> to kexec list later.
>>
>> could be found at:
>>
>> git://git.kernel.org/pub/scm/linux/kernel/git/yinghai/linux-yinghai.git for-x86-boot
>
> Did a light test and it looks to work under Xen - thought I had not tested
> any various configuration of memory layouts.
>
> More worryingly it blew up under native under an Dell T105 AMD box with 4GB of memory.
> I can't get it even to print anything on the serial log:

can you try that branch again ? update the #PF handler to clean
init_level4_pgt in all case.

I did not consider when you are xen enabled kernel on bare metal.

aka need to add
clear_page(init_level4_pgt);

in init_mapping_kernel() of head_64.S

Thanks

Yinghai
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/