/kernel/linux/linux-6.6/fs/ |
H A D | coredump.c | 56 static bool dump_vma_snapshot(struct coredump_params *cprm); 57 static void free_vma_snapshot(struct coredump_params *cprm); 201 static int format_corename(struct core_name *cn, struct coredump_params *cprm, in format_corename() argument 293 __get_dumpable(cprm->mm_flags)); in format_corename() 298 cprm->siginfo->si_signo); in format_corename() 333 err = cn_printf(cn, "%d", cprm->cpu); in format_corename() 535 struct coredump_params cprm = { in do_coredump() local 553 if (!__get_dumpable(cprm.mm_flags)) in do_coredump() 565 if (__get_dumpable(cprm.mm_flags) == SUID_DUMP_ROOT) { in do_coredump() 577 ispipe = format_corename(&cn, &cprm, in do_coredump() 802 __dump_emit(struct coredump_params *cprm, const void *addr, int nr) __dump_emit() argument 823 __dump_skip(struct coredump_params *cprm, size_t nr) __dump_skip() argument 843 dump_emit(struct coredump_params *cprm, const void *addr, int nr) dump_emit() argument 854 dump_skip_to(struct coredump_params *cprm, unsigned long pos) dump_skip_to() argument 860 dump_skip(struct coredump_params *cprm, size_t nr) dump_skip() argument 867 dump_emit_page(struct coredump_params *cprm, struct page *page) dump_emit_page() argument 898 dump_user_range(struct coredump_params *cprm, unsigned long start, unsigned long len) dump_user_range() argument 927 dump_align(struct coredump_params *cprm, int align) dump_align() argument 1127 free_vma_snapshot(struct coredump_params *cprm) free_vma_snapshot() argument 1145 dump_vma_snapshot(struct coredump_params *cprm) dump_vma_snapshot() argument [all...] |
H A D | binfmt_elf.c | 82 static int elf_core_dump(struct coredump_params *cprm); 1478 static int writenote(struct memelfnote *men, struct coredump_params *cprm) in writenote() argument 1485 return dump_emit(cprm, &en, sizeof(en)) && in writenote() 1486 dump_emit(cprm, men->name, en.n_namesz) && dump_align(cprm, 4) && in writenote() 1487 dump_emit(cprm, men->data, men->datasz) && dump_align(cprm, 4); in writenote() 1644 static int fill_files_note(struct memelfnote *note, struct coredump_params *cprm) in fill_files_note() argument 1653 count = cprm->vma_count; in fill_files_note() 1675 for (i = 0; i < cprm in fill_files_note() 1855 fill_note_info(struct elfhdr *elf, int phdrs, struct elf_note_info *info, struct coredump_params *cprm) fill_note_info() argument 1953 write_note_info(struct elf_note_info *info, struct coredump_params *cprm) write_note_info() argument 2026 elf_core_dump(struct coredump_params *cprm) elf_core_dump() argument [all...] |
H A D | binfmt_elf_fdpic.c | 78 static int elf_fdpic_core_dump(struct coredump_params *cprm); 1221 static int writenote(struct memelfnote *men, struct coredump_params *cprm) in writenote() argument 1228 return dump_emit(cprm, &en, sizeof(en)) && in writenote() 1229 dump_emit(cprm, men->name, en.n_namesz) && dump_align(cprm, 4) && in writenote() 1230 dump_emit(cprm, men->data, men->datasz) && dump_align(cprm, 4); in writenote() 1439 static bool elf_fdpic_dump_segments(struct coredump_params *cprm, in elf_fdpic_dump_segments() argument 1448 if (!dump_user_range(cprm, meta->start, meta->dump_size)) in elf_fdpic_dump_segments() 1461 static int elf_fdpic_core_dump(struct coredump_params *cprm) in elf_fdpic_core_dump() argument [all...] |
/kernel/linux/linux-6.6/arch/arm64/kernel/ |
H A D | elfcore.c | 11 #define for_each_mte_vma(cprm, i, m) \ 13 for (i = 0, m = cprm->vma_meta; \ 14 i < cprm->vma_count; \ 15 i++, m = cprm->vma_meta + i) \ 24 static int mte_dump_tag_range(struct coredump_params *cprm, in mte_dump_tag_range() argument 41 dump_skip(cprm, MTE_PAGE_TAG_STORAGE); in mte_dump_tag_range() 51 dump_skip(cprm, MTE_PAGE_TAG_STORAGE); in mte_dump_tag_range() 66 if (!dump_emit(cprm, tags, MTE_PAGE_TAG_STORAGE)) { in mte_dump_tag_range() 78 Elf_Half elf_core_extra_phdrs(struct coredump_params *cprm) in elf_core_extra_phdrs() argument 84 for_each_mte_vma(cprm, in elf_core_extra_phdrs() 90 elf_core_write_extra_phdrs(struct coredump_params *cprm, loff_t offset) elf_core_write_extra_phdrs() argument 115 elf_core_extra_data_size(struct coredump_params *cprm) elf_core_extra_data_size() argument 127 elf_core_write_extra_data(struct coredump_params *cprm) elf_core_write_extra_data() argument [all...] |
/kernel/linux/linux-5.10/fs/ |
H A D | coredump.c | 56 static bool dump_vma_snapshot(struct coredump_params *cprm); 57 static void free_vma_snapshot(struct coredump_params *cprm); 200 static int format_corename(struct core_name *cn, struct coredump_params *cprm, in format_corename() argument 292 __get_dumpable(cprm->mm_flags)); in format_corename() 297 cprm->siginfo->si_signo); in format_corename() 598 struct coredump_params cprm = { in do_coredump() local 616 if (!__get_dumpable(cprm.mm_flags)) in do_coredump() 628 if (__get_dumpable(cprm.mm_flags) == SUID_DUMP_ROOT) { in do_coredump() 640 ispipe = format_corename(&cn, &cprm, &argv, &argc); in do_coredump() 654 if (cprm in do_coredump() 846 dump_emit(struct coredump_params *cprm, const void *addr, int nr) dump_emit() argument 868 dump_skip(struct coredump_params *cprm, size_t nr) dump_skip() argument 890 dump_user_range(struct coredump_params *cprm, unsigned long start, unsigned long len) dump_user_range() argument 923 dump_align(struct coredump_params *cprm, int align) dump_align() argument 937 dump_truncate(struct coredump_params *cprm) dump_truncate() argument 1092 free_vma_snapshot(struct coredump_params *cprm) free_vma_snapshot() argument 1110 dump_vma_snapshot(struct coredump_params *cprm) dump_vma_snapshot() argument [all...] |
H A D | binfmt_elf.c | 81 static int elf_core_dump(struct coredump_params *cprm); 1477 static int writenote(struct memelfnote *men, struct coredump_params *cprm) in writenote() argument 1484 return dump_emit(cprm, &en, sizeof(en)) && in writenote() 1485 dump_emit(cprm, men->name, en.n_namesz) && dump_align(cprm, 4) && in writenote() 1486 dump_emit(cprm, men->data, men->datasz) && dump_align(cprm, 4); in writenote() 1641 static int fill_files_note(struct memelfnote *note, struct coredump_params *cprm) in fill_files_note() argument 1650 count = cprm->vma_count; in fill_files_note() 1672 for (i = 0; i < cprm in fill_files_note() 1823 fill_note_info(struct elfhdr *elf, int phdrs, struct elf_note_info *info, struct coredump_params *cprm) fill_note_info() argument 1927 write_note_info(struct elf_note_info *info, struct coredump_params *cprm) write_note_info() argument 2052 fill_note_info(struct elfhdr *elf, int phdrs, struct elf_note_info *info, struct coredump_params *cprm) fill_note_info() argument 2128 write_note_info(struct elf_note_info *info, struct coredump_params *cprm) write_note_info() argument 2191 elf_core_dump(struct coredump_params *cprm) elf_core_dump() argument [all...] |
H A D | binfmt_elf_fdpic.c | 78 static int elf_fdpic_core_dump(struct coredump_params *cprm); 1240 static int writenote(struct memelfnote *men, struct coredump_params *cprm) in writenote() argument 1247 return dump_emit(cprm, &en, sizeof(en)) && in writenote() 1248 dump_emit(cprm, men->name, en.n_namesz) && dump_align(cprm, 4) && in writenote() 1249 dump_emit(cprm, men->data, men->datasz) && dump_align(cprm, 4); in writenote() 1457 static bool elf_fdpic_dump_segments(struct coredump_params *cprm, in elf_fdpic_dump_segments() argument 1466 if (!dump_user_range(cprm, meta->start, meta->dump_size)) in elf_fdpic_dump_segments() 1479 static int elf_fdpic_core_dump(struct coredump_params *cprm) in elf_fdpic_core_dump() argument [all...] |
/kernel/linux/linux-6.6/include/linux/ |
H A D | elfcore.h | 108 extern Elf_Half elf_core_extra_phdrs(struct coredump_params *cprm); 110 elf_core_write_extra_phdrs(struct coredump_params *cprm, loff_t offset); 112 elf_core_write_extra_data(struct coredump_params *cprm); 113 extern size_t elf_core_extra_data_size(struct coredump_params *cprm); 115 static inline Elf_Half elf_core_extra_phdrs(struct coredump_params *cprm) in elf_core_extra_phdrs() argument 120 static inline int elf_core_write_extra_phdrs(struct coredump_params *cprm, loff_t offset) in elf_core_write_extra_phdrs() argument 125 static inline int elf_core_write_extra_data(struct coredump_params *cprm) in elf_core_write_extra_data() argument 130 static inline size_t elf_core_extra_data_size(struct coredump_params *cprm) in elf_core_extra_data_size() argument
|
H A D | coredump.h | 37 extern void dump_skip_to(struct coredump_params *cprm, unsigned long to); 38 extern void dump_skip(struct coredump_params *cprm, size_t nr); 39 extern int dump_emit(struct coredump_params *cprm, const void *addr, int nr); 40 extern int dump_align(struct coredump_params *cprm, int align); 41 int dump_user_range(struct coredump_params *cprm, unsigned long start,
|
H A D | elf.h | 70 static inline int elf_coredump_extra_notes_write(struct coredump_params *cprm) { return 0; } in elf_coredump_extra_notes_write() argument 73 extern int elf_coredump_extra_notes_write(struct coredump_params *cprm);
|
H A D | binfmts.h | 88 int (*core_dump)(struct coredump_params *cprm);
|
/kernel/linux/linux-5.10/arch/powerpc/platforms/cell/spufs/ |
H A D | coredump.c | 116 struct coredump_params *cprm, int dfd) in spufs_arch_write_note() 128 if (!dump_emit(cprm, &en, sizeof(en))) in spufs_arch_write_note() 130 if (!dump_emit(cprm, fullname, en.n_namesz)) in spufs_arch_write_note() 132 if (!dump_align(cprm, 4)) in spufs_arch_write_note() 136 ret = spufs_coredump_read[i].dump(ctx, cprm); in spufs_arch_write_note() 148 if (!dump_emit(cprm, buf, ret + 1)) in spufs_arch_write_note() 152 if (!dump_skip(cprm, roundup(cprm->pos - ret + sz, 4) - cprm->pos)) in spufs_arch_write_note() 157 int spufs_coredump_extra_notes_write(struct coredump_params *cprm) in spufs_coredump_extra_notes_write() argument 115 spufs_arch_write_note(struct spu_context *ctx, int i, struct coredump_params *cprm, int dfd) spufs_arch_write_note() argument [all...] |
H A D | file.c | 133 static ssize_t spufs_dump_emit(struct coredump_params *cprm, void *buf, in spufs_dump_emit() argument 136 if (!dump_emit(cprm, buf, size)) in spufs_dump_emit() 184 spufs_mem_dump(struct spu_context *ctx, struct coredump_params *cprm) in spufs_mem_dump() argument 186 return spufs_dump_emit(cprm, ctx->ops->get_ls(ctx), LS_SIZE); in spufs_mem_dump() 469 spufs_regs_dump(struct spu_context *ctx, struct coredump_params *cprm) in spufs_regs_dump() argument 471 return spufs_dump_emit(cprm, ctx->csa.lscsa->gprs, in spufs_regs_dump() 526 spufs_fpcr_dump(struct spu_context *ctx, struct coredump_params *cprm) in spufs_fpcr_dump() argument 528 return spufs_dump_emit(cprm, &ctx->csa.lscsa->fpcr, in spufs_fpcr_dump() 962 struct coredump_params *cprm) in spufs_signal1_dump() 966 return spufs_dump_emit(cprm, in spufs_signal1_dump() 961 spufs_signal1_dump(struct spu_context *ctx, struct coredump_params *cprm) spufs_signal1_dump() argument 1096 spufs_signal2_dump(struct spu_context *ctx, struct coredump_params *cprm) spufs_signal2_dump() argument 1951 spufs_mbox_info_dump(struct spu_context *ctx, struct coredump_params *cprm) spufs_mbox_info_dump() argument 1989 spufs_ibox_info_dump(struct spu_context *ctx, struct coredump_params *cprm) spufs_ibox_info_dump() argument 2032 spufs_wbox_info_dump(struct spu_context *ctx, struct coredump_params *cprm) spufs_wbox_info_dump() argument 2086 spufs_dma_info_dump(struct spu_context *ctx, struct coredump_params *cprm) spufs_dma_info_dump() argument 2140 spufs_proxydma_info_dump(struct spu_context *ctx, struct coredump_params *cprm) spufs_proxydma_info_dump() argument [all...] |
/kernel/linux/linux-6.6/arch/powerpc/platforms/cell/spufs/ |
H A D | coredump.c | 116 struct coredump_params *cprm, int dfd) in spufs_arch_write_note() 128 if (!dump_emit(cprm, &en, sizeof(en))) in spufs_arch_write_note() 130 if (!dump_emit(cprm, fullname, en.n_namesz)) in spufs_arch_write_note() 132 if (!dump_align(cprm, 4)) in spufs_arch_write_note() 136 ret = spufs_coredump_read[i].dump(ctx, cprm); in spufs_arch_write_note() 148 if (!dump_emit(cprm, buf, ret + 1)) in spufs_arch_write_note() 152 dump_skip_to(cprm, roundup(cprm->pos - ret + sz, 4)); in spufs_arch_write_note() 156 int spufs_coredump_extra_notes_write(struct coredump_params *cprm) in spufs_coredump_extra_notes_write() argument 168 rc = spufs_arch_write_note(ctx, j, cprm, f in spufs_coredump_extra_notes_write() 115 spufs_arch_write_note(struct spu_context *ctx, int i, struct coredump_params *cprm, int dfd) spufs_arch_write_note() argument [all...] |
H A D | file.c | 133 static ssize_t spufs_dump_emit(struct coredump_params *cprm, void *buf, in spufs_dump_emit() argument 136 if (!dump_emit(cprm, buf, size)) in spufs_dump_emit() 184 spufs_mem_dump(struct spu_context *ctx, struct coredump_params *cprm) in spufs_mem_dump() argument 186 return spufs_dump_emit(cprm, ctx->ops->get_ls(ctx), LS_SIZE); in spufs_mem_dump() 469 spufs_regs_dump(struct spu_context *ctx, struct coredump_params *cprm) in spufs_regs_dump() argument 471 return spufs_dump_emit(cprm, ctx->csa.lscsa->gprs, in spufs_regs_dump() 526 spufs_fpcr_dump(struct spu_context *ctx, struct coredump_params *cprm) in spufs_fpcr_dump() argument 528 return spufs_dump_emit(cprm, &ctx->csa.lscsa->fpcr, in spufs_fpcr_dump() 962 struct coredump_params *cprm) in spufs_signal1_dump() 966 return spufs_dump_emit(cprm, in spufs_signal1_dump() 961 spufs_signal1_dump(struct spu_context *ctx, struct coredump_params *cprm) spufs_signal1_dump() argument 1096 spufs_signal2_dump(struct spu_context *ctx, struct coredump_params *cprm) spufs_signal2_dump() argument 1951 spufs_mbox_info_dump(struct spu_context *ctx, struct coredump_params *cprm) spufs_mbox_info_dump() argument 1989 spufs_ibox_info_dump(struct spu_context *ctx, struct coredump_params *cprm) spufs_ibox_info_dump() argument 2032 spufs_wbox_info_dump(struct spu_context *ctx, struct coredump_params *cprm) spufs_wbox_info_dump() argument 2086 spufs_dma_info_dump(struct spu_context *ctx, struct coredump_params *cprm) spufs_dma_info_dump() argument 2140 spufs_proxydma_info_dump(struct spu_context *ctx, struct coredump_params *cprm) spufs_proxydma_info_dump() argument [all...] |
/kernel/linux/linux-5.10/include/linux/ |
H A D | coredump.h | 23 extern int dump_skip(struct coredump_params *cprm, size_t nr); 24 extern int dump_emit(struct coredump_params *cprm, const void *addr, int nr); 25 extern int dump_align(struct coredump_params *cprm, int align); 26 extern void dump_truncate(struct coredump_params *cprm); 27 int dump_user_range(struct coredump_params *cprm, unsigned long start,
|
H A D | elfcore.h | 118 elf_core_write_extra_phdrs(struct coredump_params *cprm, loff_t offset); 120 elf_core_write_extra_data(struct coredump_params *cprm); 128 static inline int elf_core_write_extra_phdrs(struct coredump_params *cprm, loff_t offset) in elf_core_write_extra_phdrs() argument 133 static inline int elf_core_write_extra_data(struct coredump_params *cprm) in elf_core_write_extra_data() argument
|
H A D | elf.h | 60 static inline int elf_coredump_extra_notes_write(struct coredump_params *cprm) { return 0; } in elf_coredump_extra_notes_write() argument 63 extern int elf_coredump_extra_notes_write(struct coredump_params *cprm);
|
H A D | binfmts.h | 99 int (*core_dump)(struct coredump_params *cprm);
|
/kernel/linux/linux-6.6/arch/ia64/kernel/ |
H A D | elfcore.c | 10 Elf64_Half elf_core_extra_phdrs(struct coredump_params *cprm) in elf_core_extra_phdrs() argument 15 int elf_core_write_extra_phdrs(struct coredump_params *cprm, loff_t offset) in elf_core_write_extra_phdrs() argument 38 if (!dump_emit(cprm, &phdr, sizeof(phdr))) in elf_core_write_extra_phdrs() 44 int elf_core_write_extra_data(struct coredump_params *cprm) in elf_core_write_extra_data() argument 55 if (!dump_emit(cprm, addr, memsz)) in elf_core_write_extra_data() 63 size_t elf_core_extra_data_size(struct coredump_params *cprm) in elf_core_extra_data_size() argument
|
/kernel/linux/linux-6.6/arch/x86/um/ |
H A D | elfcore.c | 10 Elf32_Half elf_core_extra_phdrs(struct coredump_params *cprm) in elf_core_extra_phdrs() argument 15 int elf_core_write_extra_phdrs(struct coredump_params *cprm, loff_t offset) in elf_core_write_extra_phdrs() argument 35 if (!dump_emit(cprm, &phdr, sizeof(phdr))) in elf_core_write_extra_phdrs() 42 int elf_core_write_extra_data(struct coredump_params *cprm) in elf_core_write_extra_data() argument 55 if (!dump_emit(cprm, addr, filesz)) in elf_core_write_extra_data() 63 size_t elf_core_extra_data_size(struct coredump_params *cprm) in elf_core_extra_data_size() argument
|
/kernel/linux/linux-5.10/arch/x86/um/ |
H A D | elfcore.c | 15 int elf_core_write_extra_phdrs(struct coredump_params *cprm, loff_t offset) in elf_core_write_extra_phdrs() argument 35 if (!dump_emit(cprm, &phdr, sizeof(phdr))) in elf_core_write_extra_phdrs() 42 int elf_core_write_extra_data(struct coredump_params *cprm) in elf_core_write_extra_data() argument 55 if (!dump_emit(cprm, addr, filesz)) in elf_core_write_extra_data()
|
/kernel/linux/linux-5.10/arch/ia64/kernel/ |
H A D | elfcore.c | 15 int elf_core_write_extra_phdrs(struct coredump_params *cprm, loff_t offset) in elf_core_write_extra_phdrs() argument 38 if (!dump_emit(cprm, &phdr, sizeof(phdr))) in elf_core_write_extra_phdrs() 44 int elf_core_write_extra_data(struct coredump_params *cprm) in elf_core_write_extra_data() argument 55 if (!dump_emit(cprm, addr, memsz)) in elf_core_write_extra_data()
|
/kernel/linux/linux-5.10/arch/powerpc/platforms/cell/ |
H A D | spu_syscalls.c | 118 int elf_coredump_extra_notes_write(struct coredump_params *cprm) in elf_coredump_extra_notes_write() argument 127 ret = calls->coredump_extra_notes_write(cprm); in elf_coredump_extra_notes_write()
|
/kernel/linux/linux-6.6/arch/powerpc/platforms/cell/ |
H A D | spu_syscalls.c | 118 int elf_coredump_extra_notes_write(struct coredump_params *cprm) in elf_coredump_extra_notes_write() argument 127 ret = calls->coredump_extra_notes_write(cprm); in elf_coredump_extra_notes_write()
|