Closed
Bug 1319298
Opened 8 years ago
Closed 8 years ago
Unhelpful crash signatures involving __rust_start_panic on Mac and Linux
Categories
(Socorro :: Backend, task)
Socorro
Backend
Tracking
(Not tracked)
RESOLVED
FIXED
People
(Reporter: n.nethercote, Assigned: n.nethercote)
References
Details
Attachments
(1 file)
We have some rust-url crashes that currently crash on Windows with the following signatures:
> [@ xul.dll@0x5eff6 | xul.dll@0x61eea | mozilla::net::RustURL::GetFilePath ]
> [@ xul.dll@0x613fd | xul.dll@0x64a3c | xul.dll@0x649d3 | xul.dll@0x6a4eb | xul.dll@0x6a367 | rust_url_capi::rusturl_get_path ]
> [@ xul.dll@0x613fd | xul.dll@0x649dc | xul.dll@0x64973 | xul.dll@0x6a4db | xul.dll@0x6a357 | rust_url_capi::rusturl_get_path ]
These aren't great signatures (xul.dll, bleh) but they're not terrible.
In contrast, on Mac and Linux we get this hopelessly generic signature:
> [@ mozalloc_abort | abort | __rust_start_panic ]
Ironically enough, this is because on Mac and Linux the stack trace is better...
> 0 firefox mozalloc_abort memory/mozalloc/mozalloc_abort.cpp:33
> 1 firefox abort memory/mozalloc/mozalloc_abort.cpp:80
> 2 libxul.so __rust_start_panic
> 3 libxul.so std::panicking::rust_panic_with_hook::hc303199e04562edf
> 4 libxul.so std::panicking::begin_panic::h6ed03353807cf54d
> 5 libxul.so std::panicking::begin_panic_fmt::hc321cece241bb2f5
> 6 libxul.so core::panicking::panic_fmt::h27224b181f9f037f
> 7 libxul.so core::panicking::panic_bounds_check::h19e9bbc59320a57e
> 8 libxul.so rust_url_capi::rusturl_get_path third_party/rust/url/src/lib.rs:1190
> 9 libxul.so mozilla::net::nsStandardURL::GetPath netwerk/base/nsStandardURL.cpp:1392
... so Socorro's signature generation stops at __rust_start_panic.
I guess the simple thing here is to just change Socorro's crash signature
generation to skip over the following regexes:
- __rust_start_panic
- std::panicking::*
Or if the second entry is too broad, we could skip the specific functions, e.g.
std::panicking::begin_panic, etc.
Assignee | ||
Comment 1•8 years ago
|
||
Attachment #8812999 -
Flags: review?(ted)
Comment 2•8 years ago
|
||
Commit pushed to master at https://github.com/mozilla/socorro
https://github.com/mozilla/socorro/commit/7a0329ba25ee2c306f783cf4484fbaa7d2a3387f
Fixes bug 1319298 - Handle some rust functions in signature generation.
For a crash stack trace like this:
> mozalloc_abort
> abort
> __rust_start_panic
> std::panicking::rust_panic_with_hook::hc303199e04562edf
> std::panicking::begin_panic::h6ed03353807cf54d
> std::panicking::begin_panic_fmt::hc321cece241bb2f5
> core::panicking::panic_fmt::h27224b181f9f037f
> core::panicking::panic_bounds_check::h19e9bbc59320a57e
> rust_url_capi::rusturl_get_path
> mozilla::net::nsStandardURL::GetPath
this commit will change the crash signature from this:
> [@ mozalloc_abort | abort | __rust_start_panic ]
to this:
> [@ mozalloc_abort | abort | __rust_start_panic | rust_url_capi::rusturl_get_path ]]
Updated•8 years ago
|
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → FIXED
Updated•8 years ago
|
Attachment #8812999 -
Flags: review?(ted) → review+
Updated•8 years ago
|
Assignee: nobody → n.nethercote
You need to log in
before you can comment on or make changes to this bug.
Description
•