Skip to content

Commit e44a0a4

Browse files
Add the option to force the detection of OOMS and hangs, ignoring the redzone (google#4711)
the redzone prevents the detection of centipede timeouts, resulting in a lot of wrongly classified testcases https://crbug.com/396148611. I wasn't able to find the reasons of the redzone limitation, so I went for a third value forcing. Alternatively we might want to split ooms and hangs if only one is limited due to redzones?
1 parent 8e07445 commit e44a0a4

File tree

2 files changed

+4
-2
lines changed

2 files changed

+4
-2
lines changed

src/clusterfuzz/_internal/crash_analysis/stack_parsing/stack_analyzer.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -93,8 +93,9 @@ def get_crash_data(crash_data,
9393
fuzz_target = fuzz_target or environment.get_value('FUZZ_TARGET')
9494
redzone_size = environment.get_value('REDZONE')
9595
if detect_ooms_and_hangs is None:
96+
report_value = environment.get_value('REPORT_OOMS_AND_HANGS')
9697
detect_ooms_and_hangs = (
97-
environment.get_value('REPORT_OOMS_AND_HANGS') and
98+
report_value == 'FORCE' or report_value and
9899
(not redzone_size or
99100
redzone_size <= MAX_REDZONE_SIZE_FOR_OOMS_AND_HANGS))
100101

src/clusterfuzz/_internal/tests/core/crash_analysis/stack_parsing/stack_analyzer_test.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2606,8 +2606,9 @@ def test_centipede_timeout_with_abrt(self):
26062606
26072607
See https://crbug.com/396148611.
26082608
"""
2609-
os.environ['REPORT_OOMS_AND_HANGS'] = 'True'
2609+
os.environ['REPORT_OOMS_AND_HANGS'] = 'FORCE'
26102610
os.environ['FUZZ_TARGET'] = 'foo'
2611+
os.environ['REDZONE'] = '256'
26112612

26122613
data = self._read_test_data('centipede_timeout_abrt.txt')
26132614
expected_type = 'Timeout'

0 commit comments

Comments
 (0)