[PATCH v9 0/7] kexec: put bzImage and ramdisk above 4G for x86 64bit

Dave Young dyoung at redhat.com
Tue Feb 26 04:18:58 EST 2013


On 02/22/2013 12:07 PM, Yinghai Lu wrote:
> Now we have limit kdump reserved under 896M, because kexec has the limitation.
> and also bzImage need to stay under 4g.

I think the kernel patches has been merged in linus tree, I got a crash
memory address above 4G during my test, kexec tools need this patchset
to load the 2nd kernel..

BTW, Simon, do you have plan to release the 2.0.4?

> 
> kernel parts changes get merged to linus tree already.
> 
> here patches are for kexec tools to load bzImage and ramdisk above 4G
> acccording to new added boot header fields.
> 
> it will only load high with 64bit kernel with 2.12 setup header.
> 
> -v3: address review from Eric to use locate_hole at first.
>      use xloadflags instead.
> -v4: remove the restriction about bzImage not crossing GB boundary.
>      add real-mode fix for bzImage.
>      add --entry-32bit and --real-mode for skip bzImage64.
> -v5: use USE_EXT_BOOT_PARAMS bit in xloadflags.
> -v6: use sentinel instead of USE_EXT_BOOT_PARAMS.
>      add crashkernel_low support
> -v7: Separate bootloader id setting in another patch
> -v8: update for CAN_BE_LOADED_ABOVE_4G is changed to bit1.
>      also make it appliable to current kexec-tools devel tree.
> -v9: only copy setup_header when it is not with real_mode_entry.
> 
> Yinghai Lu (7):
>   kexec, x86: set booloader id in setup_header
>   kexec, x86: add boot header member for version 2.12
>   kexec, x86: clean boot_params area for entry-32bit path
>   kexec, x86: Fix bzImage real-mode booting
>   kexec, x86: put ramdisk/cmd_line above 4G for 64bit bzImage
>   kexec, x86_64: Load bzImage64 above 4G
>   kexec, x86: handle Crash low kernel range
> 
>  include/x86/x86-linux.h                |   27 ++-
>  kexec/arch/i386/crashdump-x86.c        |   21 +++
>  kexec/arch/i386/include/arch/options.h |    4 +-
>  kexec/arch/i386/kexec-bzImage.c        |   76 ++++++--
>  kexec/arch/i386/x86-linux-setup.c      |   38 ++--
>  kexec/arch/i386/x86-linux-setup.h      |   15 +-
>  kexec/arch/x86_64/Makefile             |    1 +
>  kexec/arch/x86_64/kexec-bzImage64.c    |  304 ++++++++++++++++++++++++++++++++
>  kexec/arch/x86_64/kexec-x86_64.c       |    1 +
>  kexec/arch/x86_64/kexec-x86_64.h       |    5 +
>  10 files changed, 460 insertions(+), 32 deletions(-)
>  create mode 100644 kexec/arch/x86_64/kexec-bzImage64.c
> 


-- 
Thanks
Dave





More information about the kexec mailing list