[PATCH v3 0/4] kexec_file_load() for arm

Łukasz Stelmach l.stelmach at samsung.com
Wed Sep 30 14:34:09 EDT 2020


The following series of patches provides implementation of the                                                         
kexec_file_load() system call form the arm architecture. zImage and uImage                                             
(legacy format) files are supported. Like on arm64, there is no                                                        
possibility of loading a new DTB and the currently loaded is reused.                                                   

Changes in v3:
  - move the patchset to next-20200929
  - drop the first patch: set malloc pool size for the decompressor
    (replaced by adc5f70293760)  
  - use text_offset added in 83dfeedb6663e
  - add text_offset and malloc_size to struct zimage_krnl_size
  - add dependency on CONFIG_KEXEC_FILE in arch/arm/include/asm/kexec.h
    to enable compilation without CONFIG_KEXEC
  - add dependency on MMU in Kconfig

Changes in v2:                                                                                                         
  - add CONFIG_KEXEC_FILE_UIMAGE for optional uImage support                                                           
  - MALLOC_SIZE as a define instead of a symbol                                                                        
  - DCSZ tag holds combined dynamic memory requirements (bss+stack+malloc)                                             
  - use union for a single tag structure                                                                               
  - copyright notice includes Russell King                                                                             

Łukasz Stelmach (4):
  arm: add image header definitions
  arm: decompressor: define a new zImage tag
  arm: Add kexec_image_info
  arm: kexec_file: load zImage or uImage, initrd and dtb

 arch/arm/Kconfig                       |  26 +++
 arch/arm/boot/compressed/head.S        |   3 +-
 arch/arm/boot/compressed/vmlinux.lds.S |  22 +--
 arch/arm/include/asm/image.h           |  79 +++++++++
 arch/arm/include/asm/kexec.h           |  16 +-
 arch/arm/kernel/Makefile               |   5 +-
 arch/arm/kernel/kexec_uimage.c         |  80 ++++++++++
 arch/arm/kernel/kexec_zimage.c         | 197 +++++++++++++++++++++++
 arch/arm/kernel/machine_kexec.c        |  39 ++++-
 arch/arm/kernel/machine_kexec_file.c   | 211 +++++++++++++++++++++++++
 10 files changed, 660 insertions(+), 18 deletions(-)
 create mode 100644 arch/arm/include/asm/image.h
 create mode 100644 arch/arm/kernel/kexec_uimage.c
 create mode 100644 arch/arm/kernel/kexec_zimage.c
 create mode 100644 arch/arm/kernel/machine_kexec_file.c

-- 
2.26.2




More information about the kexec mailing list