microsoft / microsoft/ebpf-for-windows
Add bugchecks for un-recoverable and or fatal errors, non-terminating 'wait for..'
- Dominant language
- C
- Stars
- 3.6k
- Forks
- 311
- Avg merge
- 6d 10h
- Merged PRs (30d)
- 21
Description
### Discussed in https://github.com/microsoft/ebpf-for-windows/discussions/2247
Originally posted by **dv-msft** March 21, 2023
### Describe the bug
We currently have 'asserts' for un-recoverable and/or fatal errors. These asserts are triggered in debug builds but are compiled out in 'release' builds.
This can often lead to silent failures and/or buggy system behavior in release builds. Also, considering that most ebpf consumers would prefer running the retail builds (ebpf program verification times are un-acceptably slow in debug builds), the subsequent inconsistent behavior would only end up confusing the ebpf end customers.
We should bugcheck the system and generate a crash dump to debug and fix issues such as:
- Un-recoverable errors
- Fatal errors
- indeterminate 'waits'
### OS information
_No response_
### Steps taken to reproduce bug
N/A
### Expected behavior
The system should bugcheck and generate a crash dump.
### Actual outcome
The failures are ignored and system behavior becomes indeterminate.
### Additional details
_No response_
Contributor guide
Research direction
Start by reading discussion 2247 and locating the existing asserts and non-terminating “wait for...” paths described in the issue. Determine which unrecoverable and fatal failures require bugchecks, then verify that those release-build paths generate a crash dump instead of allowing indeterminate behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c
- Domain
- operating-systems
- Issue type
- Bug
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100