| /linux/arch/x86/kernel/ |
| H A D | crash.c | 159 struct crash_mem *cmem; in fill_up_crash_elf_data() local 180 cmem = vzalloc(struct_size(cmem, ranges, nr_ranges)); in fill_up_crash_elf_data() 181 if (!cmem) in fill_up_crash_elf_data() 184 cmem->max_nr_ranges = nr_ranges; in fill_up_crash_elf_data() 186 return cmem; in fill_up_crash_elf_data() 193 static int elf_header_exclude_ranges(struct crash_mem *cmem) in elf_header_exclude_ranges() argument 199 ret = crash_exclude_mem_range(cmem, 0, SZ_1M - 1); in elf_header_exclude_ranges() 204 ret = crash_exclude_mem_range(cmem, crashk_res.start, crashk_res.end); in elf_header_exclude_ranges() 209 ret = crash_exclude_mem_range(cmem, crashk_low_res.start, in elf_header_exclude_ranges() 215 ret = crash_exclude_mem_range(cmem, crashk_cma_ranges[i].start, in elf_header_exclude_ranges() [all …]
|
| /linux/arch/arm64/kernel/ |
| H A D | machine_kexec_file.c | 45 struct crash_mem *cmem; in prepare_elf_headers() local 55 cmem = kmalloc_flex(*cmem, ranges, nr_ranges); in prepare_elf_headers() 56 if (!cmem) in prepare_elf_headers() 59 cmem->max_nr_ranges = nr_ranges; in prepare_elf_headers() 60 cmem->nr_ranges = 0; in prepare_elf_headers() 62 cmem->ranges[cmem->nr_ranges].start = start; in prepare_elf_headers() 63 cmem->ranges[cmem->nr_ranges].end = end - 1; in prepare_elf_headers() 64 cmem->nr_ranges++; in prepare_elf_headers() 68 ret = crash_exclude_mem_range(cmem, crashk_res.start, crashk_res.end); in prepare_elf_headers() 73 ret = crash_exclude_mem_range(cmem, crashk_low_res.start, crashk_low_res.end); in prepare_elf_headers() [all …]
|
| /linux/arch/loongarch/kernel/ |
| H A D | machine_kexec_file.c | 65 struct crash_mem *cmem; in prepare_elf_headers() local 71 cmem = kmalloc_flex(*cmem, ranges, nr_ranges); in prepare_elf_headers() 72 if (!cmem) in prepare_elf_headers() 75 cmem->max_nr_ranges = nr_ranges; in prepare_elf_headers() 76 cmem->nr_ranges = 0; in prepare_elf_headers() 78 cmem->ranges[cmem->nr_ranges].start = start; in prepare_elf_headers() 79 cmem->ranges[cmem->nr_ranges].end = end - 1; in prepare_elf_headers() 80 cmem->nr_ranges++; in prepare_elf_headers() 84 ret = crash_exclude_mem_range(cmem, crashk_res.start, crashk_res.end); in prepare_elf_headers() 89 ret = crash_exclude_mem_range(cmem, crashk_low_res.start, crashk_low_res.end); in prepare_elf_headers() [all …]
|
| /linux/arch/riscv/kernel/ |
| H A D | machine_kexec_file.c | 49 struct crash_mem *cmem = arg; in prepare_elf64_ram_headers_callback() local 51 cmem->ranges[cmem->nr_ranges].start = res->start; in prepare_elf64_ram_headers_callback() 52 cmem->ranges[cmem->nr_ranges].end = res->end; in prepare_elf64_ram_headers_callback() 53 cmem->nr_ranges++; in prepare_elf64_ram_headers_callback() 60 struct crash_mem *cmem; in prepare_elf_headers() local 67 cmem = kmalloc_flex(*cmem, ranges, nr_ranges); in prepare_elf_headers() 68 if (!cmem) in prepare_elf_headers() 71 cmem->max_nr_ranges = nr_ranges; in prepare_elf_headers() 72 cmem->nr_ranges = 0; in prepare_elf_headers() 73 ret = walk_system_ram_res(0, -1, cmem, prepare_elf64_ram_headers_callback); in prepare_elf_headers() [all …]
|
| /linux/drivers/firmware/efi/ |
| H A D | cper.c | 378 struct cper_mem_err_compact *cmem) in cper_mem_err_pack() argument 380 cmem->validation_bits = mem->validation_bits; in cper_mem_err_pack() 381 cmem->node = mem->node; in cper_mem_err_pack() 382 cmem->card = mem->card; in cper_mem_err_pack() 383 cmem->module = mem->module; in cper_mem_err_pack() 384 cmem->bank = mem->bank; in cper_mem_err_pack() 385 cmem->device = mem->device; in cper_mem_err_pack() 386 cmem->row = mem->row; in cper_mem_err_pack() 387 cmem->column = mem->column; in cper_mem_err_pack() 388 cmem->bit_pos = mem->bit_pos; in cper_mem_err_pack() [all …]
|
| /linux/arch/powerpc/kexec/ |
| H A D | crash.c | 431 struct crash_mem *cmem = NULL; in update_crash_elfcorehdr() local 440 ret = get_crash_memory_ranges(&cmem); in update_crash_elfcorehdr() 453 ret = remove_mem_range(&cmem, base_addr, size); in update_crash_elfcorehdr() 460 ret = crash_prepare_elf64_headers(cmem, false, &elfbuf, &elfsz); in update_crash_elfcorehdr() 489 kvfree(cmem); in update_crash_elfcorehdr()
|
| H A D | file_load_64.c | 404 static unsigned int kdump_extra_elfcorehdr_size(struct crash_mem *cmem) in kdump_extra_elfcorehdr_size() argument 411 else if (cmem->nr_ranges >= CONFIG_CRASH_MAX_MEMORY_RANGES) in kdump_extra_elfcorehdr_size() 414 extra_sz = (CONFIG_CRASH_MAX_MEMORY_RANGES - cmem->nr_ranges) * sizeof(Elf64_Phdr); in kdump_extra_elfcorehdr_size() 431 struct crash_mem *cmem = NULL; in load_elfcorehdr_segment() local 436 ret = get_crash_memory_ranges(&cmem); in load_elfcorehdr_segment() 441 ret = crash_prepare_elf64_headers(cmem, false, &headers, &headers_sz); in load_elfcorehdr_segment() 458 kbuf->memsz = headers_sz + kdump_extra_elfcorehdr_size(cmem); in load_elfcorehdr_segment() 478 kfree(cmem); in load_elfcorehdr_segment()
|
| /linux/drivers/edac/ |
| H A D | ghes_edac.c | 274 struct cper_mem_err_compact cmem; in ghes_edac_report_mem_error() local 351 cper_mem_err_pack(mem_err, &cmem); in ghes_edac_report_mem_error() 352 p += cper_mem_err_location(&cmem, p); in ghes_edac_report_mem_error() 357 p += cper_dimm_err_location(&cmem, p); in ghes_edac_report_mem_error()
|