| /linux-6.15/arch/arm64/kernel/ |
| H A D | machine_kexec.c | 33 const struct kimage *kimage) in _kexec_image_info() argument 43 void machine_kexec_cleanup(struct kimage *kimage) in machine_kexec_cleanup() argument 55 int machine_kexec_prepare(struct kimage *kimage) in machine_kexec_prepare() argument 68 static void kexec_segment_flush(const struct kimage *kimage) in kexec_segment_flush() argument 78 kimage->segment[i].mem + kimage->segment[i].memsz, in kexec_segment_flush() 92 struct kimage *kimage = arg; in kexec_page_alloc() local 105 int machine_kexec_post_load(struct kimage *kimage) in machine_kexec_post_load() argument 148 kimage->arch.phys_offset = virt_to_phys(kimage) - (long)kimage; in machine_kexec_post_load() 165 void machine_kexec(struct kimage *kimage) in machine_kexec() argument 198 void (*kernel_reloc)(struct kimage *kimage); in machine_kexec() [all …]
|
| H A D | asm-offsets.c | 169 DEFINE(KIMAGE_ARCH_DTB_MEM, offsetof(struct kimage, arch.dtb_mem)); in main() 170 DEFINE(KIMAGE_ARCH_EL2_VECTORS, offsetof(struct kimage, arch.el2_vectors)); in main() 171 DEFINE(KIMAGE_ARCH_ZERO_PAGE, offsetof(struct kimage, arch.zero_page)); in main() 172 DEFINE(KIMAGE_ARCH_PHYS_OFFSET, offsetof(struct kimage, arch.phys_offset)); in main() 173 DEFINE(KIMAGE_ARCH_TTBR1, offsetof(struct kimage, arch.ttbr1)); in main() 174 DEFINE(KIMAGE_HEAD, offsetof(struct kimage, head)); in main() 175 DEFINE(KIMAGE_START, offsetof(struct kimage, start)); in main()
|
| /linux-6.15/arch/parisc/kernel/ |
| H A D | kexec.c | 22 static void kexec_show_segment_info(const struct kimage *kimage, in kexec_show_segment_info() argument 27 kimage->segment[n].mem, in kexec_show_segment_info() 28 kimage->segment[n].mem + kimage->segment[n].memsz, in kexec_show_segment_info() 29 (unsigned long)kimage->segment[n].memsz, in kexec_show_segment_info() 33 static void kexec_image_info(const struct kimage *kimage) in kexec_image_info() argument 43 for (i = 0; i < kimage->nr_segments; i++) in kexec_image_info() 44 kexec_show_segment_info(kimage, i); in kexec_image_info() 47 if (kimage->file_mode) { in kexec_image_info() 49 kimage->cmdline_buf); in kexec_image_info() 54 void machine_kexec_cleanup(struct kimage *kimage) in machine_kexec_cleanup() argument [all …]
|
| /linux-6.15/arch/mips/kernel/ |
| H A D | machine_kexec.c | 34 static void kexec_image_info(const struct kimage *kimage) in kexec_image_info() argument 44 for (i = 0; i < kimage->nr_segments; i++) { in kexec_image_info() 47 kimage->segment[i].mem, in kexec_image_info() 48 kimage->segment[i].mem + kimage->segment[i].memsz, in kexec_image_info() 49 (unsigned long)kimage->segment[i].memsz, in kexec_image_info() 56 static int uhi_machine_kexec_prepare(struct kimage *kimage) in uhi_machine_kexec_prepare() argument 95 machine_kexec_prepare(struct kimage *kimage) in machine_kexec_prepare() argument 102 kexec_image_info(kimage); in machine_kexec_prepare() 105 return _machine_kexec_prepare(kimage); in machine_kexec_prepare() 111 machine_kexec_cleanup(struct kimage *kimage) in machine_kexec_cleanup() argument [all …]
|
| /linux-6.15/arch/loongarch/kernel/ |
| H A D | machine_kexec.c | 42 static void kexec_image_info(const struct kimage *kimage) in kexec_image_info() argument 54 kimage->segment[i].mem, in kexec_image_info() 55 kimage->segment[i].mem + kimage->segment[i].memsz); in kexec_image_info() 57 (unsigned long)kimage->segment[i].memsz, in kexec_image_info() 62 int machine_kexec_prepare(struct kimage *kimage) in machine_kexec_prepare() argument 68 kexec_image_info(kimage); in machine_kexec_prepare() 70 kimage->arch.efi_boot = fw_arg0; in machine_kexec_prepare() 71 kimage->arch.systable_ptr = fw_arg2; in machine_kexec_prepare() 82 if (!kimage->arch.cmdline_ptr) { in machine_kexec_prepare() 101 void machine_kexec_cleanup(struct kimage *kimage) in machine_kexec_cleanup() argument [all …]
|
| /linux-6.15/arch/powerpc/include/asm/ |
| H A D | kexec.h | 58 struct kimage; 63 extern void default_machine_kexec(struct kimage *image); 67 void kexec_copy_flush(struct kimage *image); 82 char *setup_kdump_cmdline(struct kimage *image, char *cmdline, 84 int setup_purgatory(struct kimage *image, const void *slave_code, 94 int arch_kimage_file_post_load_cleanup(struct kimage *image); 97 int arch_check_excluded_range(struct kimage *image, unsigned long start, 102 int load_crashdump_segments_ppc64(struct kimage *image, 104 int setup_purgatory_ppc64(struct kimage *image, const void *slave_code, 138 void arch_crash_handle_hotplug_event(struct kimage *image, void *arg); [all …]
|
| /linux-6.15/include/linux/ |
| H A D | kexec.h | 124 struct kimage; 149 int kexec_image_probe_default(struct kimage *image, void *buf, 151 int kexec_image_post_load_cleanup_default(struct kimage *image); 174 struct kimage *image; 293 int kexec_elf_load(struct kimage *image, struct elfhdr *ehdr, 301 struct kimage { struct 381 extern void machine_kexec(struct kimage *image); argument 382 extern int machine_kexec_prepare(struct kimage *image); 383 extern void machine_kexec_cleanup(struct kimage *image); 392 extern struct kimage *kexec_image; [all …]
|
| H A D | crash_core.h | 9 struct kimage; 40 static inline void arch_crash_handle_hotplug_event(struct kimage *image, void *arg) { } in arch_crash_handle_hotplug_event() 46 static inline int arch_crash_hotplug_support(struct kimage *image, unsigned long kexec_flags) in arch_crash_hotplug_support() 65 struct kimage; 80 extern int kimage_crash_copy_vmcoreinfo(struct kimage *image); 85 struct kimage; 91 static inline int kimage_crash_copy_vmcoreinfo(struct kimage *image) { return 0; }; in kimage_crash_copy_vmcoreinfo()
|
| H A D | ima.h | 34 extern void ima_add_kexec_buffer(struct kimage *image); 87 struct kimage; 89 static inline void ima_add_kexec_buffer(struct kimage *image) in ima_add_kexec_buffer()
|
| /linux-6.15/kernel/ |
| H A D | kexec_internal.h | 9 struct kimage *do_kimage_alloc_init(void); 10 int sanity_check_segment_list(struct kimage *image); 12 void kimage_free(struct kimage *image); 13 int kimage_load_segment(struct kimage *image, struct kexec_segment *segment); 14 void kimage_terminate(struct kimage *image); 15 int kimage_is_destination_range(struct kimage *image, 36 void kimage_file_post_load_cleanup(struct kimage *image); 40 static inline void kimage_file_post_load_cleanup(struct kimage *image) { } in kimage_file_post_load_cleanup()
|
| H A D | kexec_core.c | 104 static struct page *kimage_alloc_page(struct kimage *image, 108 int sanity_check_segment_list(struct kimage *image) in sanity_check_segment_list() 226 struct kimage *do_kimage_alloc_init(void) in do_kimage_alloc_init() 228 struct kimage *image; in do_kimage_alloc_init() 259 int kimage_is_destination_range(struct kimage *image, in kimage_is_destination_range() 508 static int kimage_set_destination(struct kimage *image, in kimage_set_destination() 535 void kimage_terminate(struct kimage *image) in kimage_terminate() 556 void kimage_free(struct kimage *image) in kimage_free() 861 int kimage_load_segment(struct kimage *image, in kimage_load_segment() 896 struct kimage *kexec_image; [all …]
|
| H A D | kexec_file.c | 41 static int kexec_calculate_store_digests(struct kimage *image); 51 int kexec_image_probe_default(struct kimage *image, void *buf, in kexec_image_probe_default() 68 static void *kexec_image_load_default(struct kimage *image) in kexec_image_load_default() 79 int kexec_image_post_load_cleanup_default(struct kimage *image) in kexec_image_post_load_cleanup_default() 92 void kimage_file_post_load_cleanup(struct kimage *image) in kimage_file_post_load_cleanup() 160 kimage_validate_signature(struct kimage *image) in kimage_validate_signature() 278 struct kimage *image; in kimage_file_alloc_init() 338 struct kimage **dest_image, *image; in SYSCALL_DEFINE5() 443 struct kimage *image = kbuf->image; in locate_mem_hole_top_down() 487 struct kimage *image = kbuf->image; in locate_mem_hole_bottom_up() [all …]
|
| /linux-6.15/arch/m68k/kernel/ |
| H A D | machine_kexec.c | 18 int machine_kexec_prepare(struct kimage *kimage) in machine_kexec_prepare() argument 23 void machine_kexec_cleanup(struct kimage *kimage) in machine_kexec_cleanup() argument 39 void machine_kexec(struct kimage *image) in machine_kexec()
|
| /linux-6.15/arch/s390/kernel/ |
| H A D | machine_kexec.c | 50 struct kimage *image = data; in __do_machine_kdump() 124 static bool kdump_csum_valid(struct kimage *image) in kdump_csum_valid() 192 int machine_kexec_prepare(struct kimage *image) in machine_kexec_prepare() 211 void machine_kexec_cleanup(struct kimage *image) in machine_kexec_cleanup() 230 struct kimage *image = data; in __do_machine_kexec() 257 if (((struct kimage *) data)->type == KEXEC_TYPE_CRASH) in __machine_kexec() 267 void machine_kexec(struct kimage *image) in machine_kexec()
|
| H A D | machine_kexec_file.c | 84 static int kexec_file_update_purgatory(struct kimage *image, in kexec_file_update_purgatory() 129 static int kexec_file_add_purgatory(struct kimage *image, in kexec_file_add_purgatory() 152 static int kexec_file_add_initrd(struct kimage *image, in kexec_file_add_initrd() 182 static int kexec_file_add_ipl_report(struct kimage *image, in kexec_file_add_ipl_report() 242 void *kexec_file_add_components(struct kimage *image, in kexec_file_add_components() 243 int (*add_kernel)(struct kimage *image, in kexec_file_add_components() 383 int arch_kimage_file_post_load_cleanup(struct kimage *image) in arch_kimage_file_post_load_cleanup()
|
| /linux-6.15/arch/s390/include/asm/ |
| H A D | kexec.h | 55 struct kimage; 73 void *kexec_file_add_components(struct kimage *image, 74 int (*add_kernel)(struct kimage *image, 110 int arch_kimage_file_post_load_cleanup(struct kimage *image);
|
| /linux-6.15/arch/arm64/include/asm/ |
| H A D | kexec.h | 96 struct kimage; 103 int machine_kexec_post_load(struct kimage *image); 124 int arch_kimage_file_post_load_cleanup(struct kimage *image); 127 extern int load_other_segments(struct kimage *image,
|
| /linux-6.15/arch/x86/include/asm/ |
| H A D | crash.h | 5 struct kimage; 7 int crash_load_segments(struct kimage *image); 8 int crash_setup_memmap_entries(struct kimage *image,
|
| H A D | kexec.h | 25 struct kimage; 202 int arch_kimage_file_post_load_cleanup(struct kimage *image); 210 void arch_crash_handle_hotplug_event(struct kimage *image, void *arg); 213 int arch_crash_hotplug_support(struct kimage *image, unsigned long kexec_flags);
|
| /linux-6.15/arch/x86/kernel/ |
| H A D | machine_kexec_32.c | 43 static void machine_kexec_free_page_tables(struct kimage *image) in machine_kexec_free_page_tables() 59 static int machine_kexec_alloc_page_tables(struct kimage *image) in machine_kexec_alloc_page_tables() 100 static void machine_kexec_prepare_page_tables(struct kimage *image) in machine_kexec_prepare_page_tables() 135 int machine_kexec_prepare(struct kimage *image) in machine_kexec_prepare() 151 void machine_kexec_cleanup(struct kimage *image) in machine_kexec_cleanup() 161 void machine_kexec(struct kimage *image) in machine_kexec()
|
| H A D | machine_kexec_64.c | 137 static void free_transition_pgtable(struct kimage *image) in free_transition_pgtable() 149 static int init_transition_pgtable(struct kimage *image, pgd_t *pgd, in init_transition_pgtable() 212 struct kimage *image = (struct kimage *)data; in alloc_pgt_page() 225 static int init_pgtable(struct kimage *image, unsigned long control_page) in init_pgtable() 307 int machine_kexec_prepare(struct kimage *image) in machine_kexec_prepare() 331 void machine_kexec_cleanup(struct kimage *image) in machine_kexec_cleanup() 345 void __nocfi machine_kexec(struct kimage *image) in machine_kexec() 555 int arch_kimage_file_post_load_cleanup(struct kimage *image) in arch_kimage_file_post_load_cleanup()
|
| /linux-6.15/arch/powerpc/kexec/ |
| H A D | file_load_64.c | 52 int arch_check_excluded_range(struct kimage *image, unsigned long start, in arch_check_excluded_range() 344 static int load_backup_segment(struct kimage *image, struct kexec_buf *kbuf) in load_backup_segment() 388 static void update_backup_region_phdr(struct kimage *image, Elf64_Ehdr *ehdr) in update_backup_region_phdr() 429 static int load_elfcorehdr_segment(struct kimage *image, struct kexec_buf *kbuf) in load_elfcorehdr_segment() 478 int load_crashdump_segments_ppc64(struct kimage *image, in load_crashdump_segments_ppc64() 516 int setup_purgatory_ppc64(struct kimage *image, const void *slave_code, in setup_purgatory_ppc64() 617 static unsigned int kdump_extra_fdt_size_ppc64(struct kimage *image, unsigned int cpu_nodes) in kdump_extra_fdt_size_ppc64() 662 unsigned int kexec_extra_fdt_size_ppc64(struct kimage *image, struct crash_mem *rmem) in kexec_extra_fdt_size_ppc64() 743 int setup_new_fdt_ppc64(const struct kimage *image, void *fdt, struct crash_mem *rmem) in setup_new_fdt_ppc64() 833 int arch_kexec_kernel_image_probe(struct kimage *image, void *buf, in arch_kexec_kernel_image_probe() [all …]
|
| /linux-6.15/arch/sh/kernel/ |
| H A D | machine_kexec.c | 41 int machine_kexec_prepare(struct kimage *image) in machine_kexec_prepare() 46 void machine_kexec_cleanup(struct kimage *image) in machine_kexec_cleanup() 50 static void kexec_info(struct kimage *image) in kexec_info() 69 void machine_kexec(struct kimage *image) in machine_kexec()
|
| /linux-6.15/arch/riscv/kernel/ |
| H A D | machine_kexec.c | 31 machine_kexec_prepare(struct kimage *image) in machine_kexec_prepare() 92 machine_kexec_cleanup(struct kimage *image) in machine_kexec_cleanup() 149 machine_kexec(struct kimage *image) in machine_kexec()
|
| /linux-6.15/arch/arm/kernel/ |
| H A D | machine_kexec.c | 33 int machine_kexec_prepare(struct kimage *image) in machine_kexec_prepare() 72 void machine_kexec_cleanup(struct kimage *image) in machine_kexec_cleanup() 141 void machine_kexec(struct kimage *image) in machine_kexec()
|