1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-27 00:37:45 +00:00

LibCoredump: Show frames from Loader.so if the crash occurs in it

Previously we rejected all entries from Loader.so even if the faulting
address was located in it, i.e. the actual issue was with the dynamic
loader. We no longer do that to make debugging Loader crashes easier.
This commit is contained in:
Daniel Bertalan 2021-10-10 08:06:28 +02:00 committed by Linus Groh
parent bb4bb3c2f4
commit 3c3df95958
2 changed files with 8 additions and 2 deletions

View file

@ -105,8 +105,13 @@ void Backtrace::add_entry(const Reader& coredump, FlatPtr ip)
return;
}
auto object_name = ip_region->object_name();
if (object_name == "Loader.so")
return;
// Only skip addresses coming from Loader.so if the faulting instruction is not in Loader.so
if (object_name == "Loader.so") {
if (m_skip_loader_so)
return;
} else {
m_skip_loader_so = true;
}
// We need to find the first region for the object, just in case
// the PT_LOAD header for the .text segment isn't the first one
// in the object file.