-
Notifications
You must be signed in to change notification settings - Fork 10
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[crashtracker] Names for SI_CODEs #875
Conversation
BenchmarksComparisonBenchmark execution time: 2025-02-14 20:39:12 Comparing candidate commit 2455871 in PR branch Found 0 performance improvements and 2 performance regressions! Performance is the same for 50 metrics, 2 unstable metrics. scenario:normalization/normalize_service/normalize_service/Data🐨dog🐶 繋がっ⛰てて
CandidateCandidate benchmark detailsGroup 1
Group 2
Group 3
Group 4
Group 5
Group 6
Group 7
Group 8
Group 9
Group 10
Group 11
Group 12
Group 13
BaselineOmitted due to size. |
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #875 +/- ##
==========================================
- Coverage 71.67% 71.64% -0.03%
==========================================
Files 324 324
Lines 48248 48262 +14
==========================================
- Hits 34583 34579 -4
- Misses 13665 13683 +18
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Wonderful! Just to reaffirm, the numerical relationship between si_code concepts and values is underdefined at the POSIX level, but needs to be a part of the stable API provided by a platform.
Usually (Linux, at least), if there are changes to this type of thing, it tends to be additive, so the risk factor is missing the naming of an si_code
if our build-time kernel version is less than the runtime kernel version. In practice, si_code
is not frequently changed.
What does this PR do?
Adds best effort code to support translating numeric
si_code
into human readable names.Motivation
Every different platform has different mappings of numeric codes to meanings. This saves time on the user to figure out what the code actually was.
Additional Notes
This is a best effort code: It currently doesn't handle signals we don't expect to receive. In that case, it soundly says "UNKNOWN".
OSX POSIX support is the worst: https://vorner.github.io/2021/01/03/dark-side-of-posix-apis.html
How to test the change?
Existing additional tests.