Closed Bug 1715747 Opened 5 years ago Closed 5 years ago

[siglist] Add a bunch of Windows-specific exception handling functions to the irrelevant list

Categories

(Socorro :: Signature, task, P2)

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: gsvelto, Assigned: willkg)

References

Details

Attachments

(1 file)

Windows __fastfail() crashes often start with a bunch of frames from Windows' exception handling code. Those frames are useless and make the crashes confusing, we should ignore them. Here's a list of functions I found:

  • KiRaiseUserExceptionDispatcher
  • KiUserExceptionDispatch
  • KiUserExceptionDispatcher
  • LdrpICallHandler
  • LdrpValidateUserCallTarget
  • RtlDispatchException
  • RtlFailFast2
  • RtlpExecuteHandlerForException
  • RtlpHandleInvalidUserCallTarget
  • seh_filter_exe

Some functions are already in the prefix list so we should remove them from there:

  • KiRaiseUserExceptionDispatcher
  • KiUserExceptionDispatcher

I also think that all the Rtl functions are currently in the prefix list so maybe I should go through all those that are no file and make a list of what we want to ignore and what we want to keep

See Also: → 1713160

Grabbing this to do this week.

Assignee: nobody → willkg
Status: NEW → ASSIGNED
Priority: -- → P2
Summary: Add a bunch of Windows-specific exception handling functions to the irrelevant list → [siglist] Add a bunch of Windows-specific exception handling functions to the irrelevant list

Example crash reports:

crashid current signature
bp-18c190a7-4426-4f3e-a9c5-ed29e0210713 KiRaiseUserExceptionDispatcher | GetHandleInformation
bp-0d5d9b1c-2885-4a5f-85b1-02bb60210713 KiUserExceptionDispatch
bp-b8da1857-f8a7-4bf7-b7d1-c093f0210714 RtlFailFast2 | RtlpHandleInvalidUserCallTarget | RtlDispatchException | KiUserExceptionDispatcher | LdrpValidateUserCallTarget
bp-ce3e50b9-565e-435f-ac4d-bd79f0210714 LdrpICallHandler
bp-4186b4c8-dec6-4f85-be63-e86ba0210714 shutdownhang | LdrpValidateUserCallTargetBitMapCheck
bp-92431161-87ef-4099-b9d9-fe6a00210714 RtlLookupFunctionEntry | truncf | RtlDispatchException | RtlGuardCheckImageBase | <T>
bp-651b0a00-52e8-414c-a836-e6c5c0210714 RtlFailFast2 | RtlpHandleInvalidUserCallTarget | LdrpHandleInvalidUserCallTarget
bp-8f8b1d34-0e3c-4e69-8904-c1ff70210714 dgapi64.dll | RtlpExecuteHandlerForException | RtlDispatchException | KiUserExceptionDispatch
bp-a5f0b266-9a18-4330-8ef8-dd32b0210714 seh_filter_exe

willkg merged PR #5823: "bug 1715747: add Windows fastfail frames to irrelevant list" in ea167af.

Here are example crash reports with new signatures:

app@socorro:/app$ cat crashids.txt | socorro-cmd signature
Crash id: 18c190a7-4426-4f3e-a9c5-ed29e0210713
Original: KiRaiseUserExceptionDispatcher | GetHandleInformation
New:      GetHandleInformation
Same?:    False

Crash id: 0d5d9b1c-2885-4a5f-85b1-02bb60210713
Original: KiUserExceptionDispatch
New:      _TypeMatch
Same?:    False

Crash id: b8da1857-f8a7-4bf7-b7d1-c093f0210714
Original: RtlFailFast2 | RtlpHandleInvalidUserCallTarget | RtlDispatchException | KiUserExceptionDispatcher | LdrpValidateUserCallTarget
New:      mozilla::layout_telemetry::AutoRecord::~AutoRecord
Same?:    False

Crash id: ce3e50b9-565e-435f-ac4d-bd79f0210714
Original: LdrpICallHandler
New:      LdrpDispatchUserCallTarget
Same?:    False

Crash id: 4186b4c8-dec6-4f85-be63-e86ba0210714
Original: shutdownhang | LdrpValidateUserCallTargetBitMapCheck
New:      shutdownhang | ComPtr<T>::Deref
Same?:    False

Crash id: 92431161-87ef-4099-b9d9-fe6a00210714
Original: RtlLookupFunctionEntry | truncf | RtlDispatchException | RtlGuardCheckImageBase | <T>
New:      RtlLookupFunctionEntry | truncf | RtlGuardCheckImageBase | <T>
Same?:    False

Crash id: 651b0a00-52e8-414c-a836-e6c5c0210714
Original: RtlFailFast2 | RtlpHandleInvalidUserCallTarget | LdrpHandleInvalidUserCallTarget
New:      LdrpHandleInvalidUserCallTarget
Same?:    False

Crash id: 8f8b1d34-0e3c-4e69-8904-c1ff70210714
Original: dgapi64.dll | RtlpExecuteHandlerForException | RtlDispatchException | KiUserExceptionDispatch
New:      dgapi64.dll | floor
Same?:    False

Crash id: a5f0b266-9a18-4330-8ef8-dd32b0210714
Original: seh_filter_exe
New:      `thread_start<T>'::`1'::filt$0
Same?:    False

We can do a second pass if we want to add some additional functions.

I deployed this in bug #1721613 just now.

I reprocessed 4186b4c8-dec6-4f85-be63-e86ba0210714 and the signature changed to shutdownhang | ComPtr<T>::Deref.

Marking as FIXED.

Status: ASSIGNED → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED

Thanks for fixing this Will, I'll file a follow-up with some more functions that popped up once signatures started changing.

Blocks: 1723465
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: