Closed
Bug 1407075
Opened 7 years ago
Closed 2 years ago
Add an alternative signal stack in our codebase that does not depend on breakpad
Categories
(Toolkit :: Crash Reporting, enhancement)
Toolkit
Crash Reporting
Tracking
()
RESOLVED
WONTFIX
People
(Reporter: decoder, Unassigned)
References
Details
Currently, breakpad is calling sigaltstack() to make sure we have an alternative signal stack for processing signals. With the changes in bug 1403668, all of our SIGSEGV handlers will use the alternative signal stack to ensure that they are working even in the case of a stack overflow. However, in build types that both have the crash reporter disabled and AddressSanitizer (which also sets up an alternative signal stack) not enabled, this will not work and fallback to the old default stack behavior. As proposed by Ted and Nathan, we should probably factor out the sigaltstack code from breakpad and include it directly in our codebase unconditionally (or in non-asan builds in case that it interferes with ASan).
Comment 1•7 years ago
|
||
Ted -- what kind of priority should we put on this? And who should do this work?
Flags: needinfo?(ted)
Comment 2•7 years ago
|
||
This is low-priority cleanup. decoder's patch in bug 1403668 fixed the pressing issue where we weren't handling stack overflows properly. The proposed change here would fix build configurations that we don't ship, and could consolidate some duplicated code.
Flags: needinfo?(ted)
Updated•7 years ago
|
Component: General → Crash Reporting
Product: Core → Toolkit
Comment 3•6 years ago
|
||
https://wiki.mozilla.org/Bug_Triage/Projects/Bug_Handling/Bug_Husbandry#Update_affecteds
status-firefox59:
--- → ?
Comment 4•2 years ago
|
||
I've implemented something like this in bug 1678152. It covers all thread except for the main one (because Breakpad handles that) but it should be easy to both factor this code out and put it in a separate library that can be included even when the crash reporter is disabled. Given this bug is 5 years old is this something we should prioritize?
Flags: needinfo?(choller)
Reporter | ||
Comment 5•2 years ago
|
||
From a fuzzing perspective, we are no longer using any builds that do not have a sanitizer component of some sort enabled (at minimum, they have the UBSan runtime), so from a fuzzing perspective we can wontfix this.
Flags: needinfo?(choller)
You need to log in
before you can comment on or make changes to this bug.
Description
•