mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-10 03:45:46 +00:00
5e4e0f9184
This is more complicated than I'd like it to be, because we don't have a good way to combine a specific trap function's knowledge that we want to get a crash dump with the SIGSYS handler's copy of the unprocessed signal info (which breakpad wants). The bpf_dsl interface requires a specific trap function type (via the TrapRegistry superclass), so even if we implement our own registry we can't change what's passed to it. Normally we could use thread-local storage to get around that, but it's not async signal safe. As a result there is an imperfect compromise: the trap function returns a failure with ENOSYS, Chromium's SIGSYS handler writes it into the context, our SIGSYS handler reads it back out and uses a copy of the original signal context for the crash dump. Other error codes (and returning ENOSYS via the seccomp-bpf policy itself) are handled normally. |
||
---|---|---|
.. | ||
chromium | ||
chromium-shim | ||
linux | ||
mac | ||
staticruntime | ||
win | ||
modifications-to-chromium-to-reapply-after-upstream-merge.txt | ||
moz-chromium-commit-status.txt | ||
moz.build | ||
objs.mozbuild |