summaryrefslogtreecommitdiff
path: root/Kernel/CoreDump.h
AgeCommit message (Collapse)Author
2021-04-22Everything: Move to SPDX license identifiers in all files.Brian Gianforcaro
SPDX License Identifiers are a more compact / standardized way of representing file license information. See: https://spdx.dev/resources/use/#identifiers This was done with the `ambr` search and replace tool. ambr --no-parent-ignore --key-from-file --rep-from-file key.txt rep.txt *
2021-04-18LibC+LibELF: Implement support for the dl_iterate_phdr helperGunnar Beutner
This helper is used by libgcc_s to figure out where the .eh_frame sections are located for all loaded shared objects.
2021-02-28Kernel: Use default con/de-structorsBen Wiederhake
This may seem like a no-op change, however it shrinks down the Kernel by a bit: .text -432 .unmap_after_init -60 .data -480 .debug_info -673 .debug_aranges 8 .debug_ranges -232 .debug_line -558 .debug_str -308 .debug_frame -40 With '= default', the compiler can do more inlining, hence the savings. I intentionally omitted some opportunities for '= default', because they would increase the Kernel size.
2020-12-30Kernel: Embed a Metadata notes entry in coredumpsLinus Groh
2020-12-30Kernel: Embed a ProcessInfo notes entry in coredumpsLinus Groh
2020-12-27Kernel: Lock target process when generating core dumpAndreas Kling
Dumping core can happen at the end of a profiling run, and in that case we have to protect the target process and take the lock while iterating over its region map. Fixes #4509.
2020-12-22Kernel: Abort core dump generation if any substep failsAndreas Kling
And make an effort to propagate errors out from the inner parts. This fixes an issue where the kernel would infinitely loop in coredump generation if the TmpFS filled up.
2020-12-15Kernel: Make CoreDump::m_num_program_headers constAndreas Kling
This makes it an error to assign to it after construction.
2020-12-15Kernel: Don't take LexicalPath as argumentAndreas Kling
LexicalPath is a big and heavy class that's really meant as a helper for extracting parts of a path, not for storage or passing around. Instead, pass paths around as strings and use LexicalPath locally as needed.
2020-12-14Kernel: Pass full path of output coredump file to CoreDumpItamar
2020-12-14LibELF: Refactor coredump notes section structuresItamar
2020-12-14Kernel: Generate a coredump file when a process crashesItamar
When a process crashes, we generate a coredump file and write it in /tmp/coredumps/. The coredump file is an ELF file of type ET_CORE. It contains a segment for every userspace memory region of the process, and an additional PT_NOTE segment that contains the registers state for each thread, and a additional data about memory regions (e.g their name).