aboutsummaryrefslogtreecommitdiffstats
path: root/pkg/report/testdata/linux
Commit message (Collapse)AuthorAgeFilesLines
* pkg/report: ignore print_report functionDmitry Vyukov2022-04-011-0/+140
| | | | It popped up in a new KASAN report after recent KASAN changes.
* pkg/report: better parse "scheduling while atomic" reportsDmitry Vyukov2022-03-287-10/+247
|
* pkg/report: ignore ref_tracker framesDmitry Vyukov2022-01-114-0/+188
| | | | | ref_tracker is a generic debugging facility, the actual bug is (almost always) in the caller.
* pkg/report: ignore atomic_dec_and_lock framesDmitry Vyukov2022-01-101-0/+151
| | | | That's some mutex internals.
* pkg/report: use KMSAN origin to dedup reportsDmitry Vyukov2022-01-048-3/+11
| | | | | | | | Support extracting multiple frames from a single report (one per parseStackTrace marker). Extract KMSAN origin frame and use it as an additional ALT title for deduplication. Fixes #2927
* pkg/report: stop parsing old KMSAN reportsDmitry Vyukov2022-01-0415-1011/+0
| | | | | | Keeping backwards compatibility will complicate future changes. Since KMSAN is not upstream yet and is always rebased, we don't really need to keep parsing old reports.
* pkg/report: repair parsing of KMSAN kernel-usb-infoleakDmitry Vyukov2022-01-041-2/+1
|
* pkg/report: add more KMSAN testsDmitry Vyukov2022-01-046-0/+348
|
* pkg/report: skip __read_once_word_nocheck framesDmitry Vyukov2021-12-061-0/+48
| | | | These are not the root cause of bugs and should be skipped.
* pkg/report: repair parsing of "stack guard page was hit" crashesDmitry Vyukov2021-12-062-0/+432
|
* pkg/report: skip __might_resched framesAleksandr Nogikh2021-11-161-0/+59
| | | | | | | Not skipping this frame leads to "BUG: sleeping function called from invalid context at" pointing to the wrong function. Fix that and add a report parse test.
* pkg/report: skip crc* framesAleksandr Nogikh2021-11-161-0/+143
| | | | | | | | | Memory access errors inside the crc-calculating functions typically indicate an error in the calling function, rather than a bug in the CRC implementation. Skip them during stack frame parsing. Add a new report test that validates the new behavior.
* pkg/report: parse new-style KMSAN reportsAleksandr Nogikh2021-11-161-0/+58
| | | | | | | | | Currently KMSAN does not include the "Call Trace" line into its reports. As syzkaller still expects it, most of those reports end up being classified as corruped and do not get published by syzbot (see #2733). Adjust the parsing rules to support these new reports. Add a test to validate the new behavior.
* pkg/report: merge "BUG: Dentry still in use" bugsDmitry Vyukov2021-10-293-1/+93
| | | | | | This bug message includes filesystem type and block device name. Both can lead to excessive duplicates. Merge all such bugs together.
* pkg/report: fix parsing of syscall entry pointsDmitry Vyukov2021-10-252-0/+66
| | | | | | | gcc and clang somehow print different frames around syscall entry. sys_-prefixed names is what currently produced for gcc (more common) and we have lots of existing reports with sys_ prefix. So make the clang frames parsed the same way as gcc frames are currently parsed.
* pkg/report: suppress reports with detected stack smashingAleksandr Nogikh2021-08-311-0/+85
| | | | | | | Logs containing "*** stack smashing detected ***: terminated" are not of particular interest, as this indicates syz-executor corruption. Suppress bug reports in this case.
* pkg/report: ignore "WARNING: Unsupported flag value(s) of 0x%x in DT_FLAGS_1"Aleksandr Nogikh2021-08-311-0/+0
| | | | | | | This error originates in glibc and is occasionally printed by corrupted syz-executor instances. Do not recognize it as a kernel crash.
* pkg/report: ignore "WARNING: The mand mount option has been deprecated"Marco Elver2021-08-271-0/+9
| | | | | | | | In Linux 5.15 the mand mount option will be deprecated, and the warning text will change accordingly: https://lkml.kernel.org/r/20210820163919.435135-3-jlayton@kernel.org/ Update regex to also ignore this case.
* pkg/report: ignore "WARNING: the mand mount option is being deprecated"Marco Elver2021-08-271-0/+9
| | | | | | | Ignore this new warning, as it is intentionally added to warn users and does not indicate a kernel bug: https://lkml.kernel.org/r/CAHk-=wgD-SNxB=2iCurEoP=RjrciRgLtXZ7R_DejK+mXF2etfg@mail.gmail.com
* pkg/report: make opcode decompilation more intelligentAleksandr Nogikh2021-08-199-28/+233
| | | | | | | | | | | Skip Code: lines that refer to user-space. Skip code listings where the trapping instruction is an intentionally invalid one (this happens in WARNINGs and most of BUG reports). Decompilation of such code fragments provides no value to the user. Add new tests and update the existing ones. Closes #2709 and #2710.
* pkg/report: return more information from opcode decompilerAleksandr Nogikh2021-08-192-4/+4
| | | | | | | | Let decompiler also parse the exact command name. Perform right trim on the full output line, as it may contain tabs and spaces at the end. Introduce an "-update" flag to facilitate mass updating of opcode decompilation tests after changes to this functionality.
* pkg/report: do more agressive NUM-replacementAleksandr Nogikh2021-08-138-7/+32
| | | | | | | | | | | | Replace not just long sequences of digits in report titles, but every sequence of '0'-'9' that is not surrounded by word characters. As such matches will overlap and Go does not (currently?) support regexp lookarounds, do the replacement multiple times until there is nothing more to do. This should not slow down syzkaller, since this code is only invoked during crash processing. Restrict LINE replacement only to fragments that have a preceeding file name. This prevents replacements like [1:2] -> [NUM:LINE].
* pkg/report: decompile opcodes from reportsAleksandr Nogikh2021-08-1212-0/+922
| | | | | | | | | | | Improve Linux reports quality by decompiling "Code: " descriptions. As that line of opcodes is not guaranteed to begin at the boundary of an instruction, try to find the right boundary. Handle the cases of multiple "Code: ..." lines by only decompiling the first one. In most cases the last such line shows user-space bytes, which is usually not of great importance.
* pkg/report: ignore el1h_64_sync frameDmitry Vyukov2021-07-271-0/+107
| | | | | We ignored some el1_* arm64 frames, but not a new el1h_64_sync frame appeared in HWASAN reports. Ignore it as well.
* pkg/report: parse "stack guard page was hit" betterDmitry Vyukov2021-07-123-1/+1481
| | | | | | | Now that we increased CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT to 16 we started getting full parsable "stack guard page was hit" crashes. Extract the anchor frame as we do for stalls. This makes reports deterministic rather than point to a random top frame.
* pkg/report: fix kmalloc size warningDmitry Vyukov2021-06-071-0/+91
| | | | Some kernel code seems to have been changed again...
* pkg/report: don't consider handle_mm_fault as anchor frameDmitry Vyukov2021-05-123-0/+320
| | | | | | | | | | | | | | | | | | | | | We are getting some duplicate reports where the stall actually happens in some syscall, but the syscall triggers a page fault repeatedly. As the result we can attribute some of the stalls to the next frame after handle_mm_fault. So don't consider handle_mm_fault as an anchor frame. We need to be careful to not skip entry into page fault from user space, because that's a completly different case. In that case the stall is indeed in the page fault handler. It's also unclear if this is the right thing to do. If the stall actually happens in the fault handler and the root cause in the fault handler, then after this change we will produce duplicate stalls for every place in the kernel that can trigger a page fault (we will be skipping the handler itself and attribute it to the innocent caller). But so far we don't have such examples.
* pkg/report: add format for new 0-size vmalloc warningsDmitry Vyukov2021-05-071-0/+51
| | | | | Suggested-by: Vegard Nossum Link: https://groups.google.com/g/syzkaller/c/aHHCG_ZHOZA/m/M6aiIuzkAQAJ
* pkg/report: skip kmem_cache_* in reportsDmitry Vyukov2021-05-042-2/+35
|
* pkg/report: ignore some common arm64 framesDmitry Vyukov2021-05-031-0/+144
|
* pkg/report: parse riscv "access to user memory"Dmitry Vyukov2021-03-101-0/+28
|
* pkg/report: ignore warn_bogus_irq_restore frameDmitry Vyukov2021-03-051-0/+43
|
* pkg/report: added extra ignore cases for androidDarby Sauter2021-02-261-0/+11
| | | | | Ignore cases that match "INFO:" that were not important. These occured on Pixel3XL running Android 11.
* pkg/report: add another arm64 reportDmitry Vyukov2021-02-251-0/+63
| | | | | Extracted from: https://groups.google.com/g/syzkaller/c/cXw5z215P5E/m/jBvwJ3IsAQAJ
* pkg/report: ignore another android panic in logDmitry Vyukov2021-02-251-0/+4
|
* pkg/report: ignore kcsan_setup_watchpoint in reportsMarco Elver2021-02-221-0/+96
| | | | | | | | kcsan_setup_watchpoint() reads the value before and after the delay to check for value changes. If the memory location is inaccessible, do not report the bug in kcsan_setup_watchpoint() but instead in the caller. This also allows properly deduplicating related reports from non-KCSAN configs.
* pkg/report: detect executor failuresDmitry Vyukov2021-02-211-0/+26
| | | | | | | | | | | | Currently all executor fail errors go into "lost connection" bucket. This is not very useful. First, there are different executor failures. Second, it's not possible to understand what failures happen how frequently. Third, there are not authentic lost connection. Create separate SYZFAIL: bugs for them. Update #573 Update #502 Update #318
* pkg/report: fix NUM replacementDmitry Vyukov2021-02-121-0/+45
|
* pkg/report: ignore krealloc in KFENCE reportsDmitry Vyukov2021-02-041-0/+26
|
* pkg/report: support parsing KFENCE reportsDmitry Vyukov2021-02-0211-0/+389
|
* pkg/report: ignore __seqprop_assertDmitry Vyukov2021-01-271-0/+93
|
* pkg/report: merge task hung and task can't die reportsDmitry Vyukov2021-01-2745-0/+45
| | | | | | | Both these passive hangs sometimes happen due to the same underlying issue. Merge them together. Update #1575
* pkg/report: merge rcu stalls and soft lockupsDmitry Vyukov2021-01-2787-4/+87
| | | | | | | Both these active stalls sometimes happen due to the same underlying issue. Merge them together. Update #1575
* pkg/report: merge KMSAN bugs into KASAN bugsDmitry Vyukov2021-01-2712-0/+12
| | | | Update #1575
* pkg/report: ignore kthread more precisely in stall reportsDmitry Vyukov2021-01-221-0/+50
|
* pkg/report: merge KASAN/GPF/etc crashes togetherDmitry Vyukov2021-01-22140-1/+140
| | | | | | | These cause lots of duplicates. See existing syzbot bugs and the issue. Update #1575
* pkg/report: add alt title for "kernel BUG" oopsDmitry Vyukov2021-01-1718-23/+36
| | | | Update #1575
* pkg/report: add more "kernel BUG at" oops samplesDmitry Vyukov2021-01-1712-0/+629
| | | | Update #1575
* pkg/report: skip all kmalloc/kcalloc framesDmitry Vyukov2021-01-173-2/+79
| | | | | | | | | Initially I tried to skip kmalloc frames more carefully to report proper test names in KASAN tests (338, 340). But as the result we badly parsed a real report, while nobody cares much about how we parse KASAN tests that happen to contain "kmalloc" in test function name. Skip all kmalloc frames now.
* pkg/report: ignore mem/strdup functionsDmitry Vyukov2021-01-141-0/+77
|