Annotate crashes when the code in memory around the crashing instruction differs from the code in the shipped binary
Categories
(Socorro :: General, task, P3)
Tracking
(Not tracked)
People
(Reporter: dbaron, Unassigned)
References
(Blocks 1 open bug)
Details
Reporter | ||
Comment 1•9 years ago
|
||
Comment 2•9 years ago
|
||
Comment 3•8 years ago
|
||
Reporter | ||
Comment 4•8 years ago
|
||
Comment 6•8 years ago
|
||
Comment 7•8 years ago
|
||
Updated•8 years ago
|
Comment 8•8 years ago
|
||
Comment 9•8 years ago
|
||
Comment 10•8 years ago
|
||
Comment 11•8 years ago
|
||
Comment 12•8 years ago
|
||
Comment 13•6 years ago
|
||
Comment 14•6 years ago
|
||
Comment 15•6 years ago
|
||
Comment 16•6 years ago
|
||
Comment 17•6 years ago
|
||
Comment 18•6 years ago
|
||
Comment 19•6 years ago
|
||
Reporter | ||
Comment 20•6 years ago
|
||
Comment 22•6 years ago
|
||
Comment 23•6 years ago
|
||
Comment 24•6 years ago
|
||
Comment 25•6 years ago
|
||
Comment 26•6 years ago
|
||
Comment 27•6 years ago
|
||
Comment 28•6 years ago
|
||
Comment 29•6 years ago
|
||
Comment 30•6 years ago
|
||
This is interesting work, but needs more people interested in working on it to move it forward. For now, I'm going to bump it down to P3.
Comment 31•6 years ago
|
||
Hey Cam! Will had a few questions in comment 28: https://bugzilla.mozilla.org/show_bug.cgi?id=1274628#c28
Do you have any insights?
Comment 32•4 years ago
|
||
Sorry that I overlooked this needinfo. In case it's still relevant:
First, I sort of understand what this utility is doing, but not enough to verify correctness over a larger set of crashes. It doesn't look like there are tests. How do we verify that this is working correctly?
Tests would need to be written.
Second, PE stands for Portable Executable and I sort of understand what that is, but beyond that I don't know what a PE failure might be here.
That's printing out the error that came from the pe
crate I'm using:
https://docs.rs/pe/0.1.1/pe/enum.Error.html#variant.ResolveMapError
Perhaps it means that my code is trying to read out of range bytes from the DLL for some reason.
Third, 32 out of the 100 crash reports I looked at have mismatches--does that seem plausible to you? Assuming chkimg is working correctly, does that suggest that 1/3 of the crashes I looked at are from computers with bad memory?
That seems like too many! It's possible there are some kinds of relocations I wasn't handling correctly. To verify my code is doing the right thing, I would compare to running .chkimg
in WinDbg.
Description
•