| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
Update all the test files. I removed test.Equals() check to do it for all the files at once.
|
| | |
|
| |
|
|
| |
They are invalid and we're tired of manually marking them as such.
|
| |
|
|
|
|
| |
The original panic: is printed without logging and is often garbled
by concurrent printing by another core. OTOH, `show panic` is printed
exclusively so we prefer to use that.
|
| | |
|
| |
|
|
| |
This routine was recently renamed.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
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].
|
| |
|
|
|
|
|
|
|
| |
The witness output was recently changed in order to aid tracking down
scenarios in which lock ordering data is missing. This is probably a bug
and turning them into unique reports should hopefully help syzkaller
being able to find a reproducer.
The existing inode suppression must be tweaked a bit order to not flag
the relevant reports as suppressed.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
It looks we got a couple of odd crashes where the syz-executor is
probably hanging but the VM is still responsive[1].
Does the hypervisor try to diagnose the VM under such circumstances?
Since the VM is still responsive, the input written to the console is
echoed back which in turns causes a panic to be detected.
If this theory is true, we can avoid detecting such false positives by
making the oops indicator disjoint from the input written to the
console.
[1] https://syzkaller.appspot.com/bug?id=af604b59c590384e9faa00dfc958ef87a922ae71
|
| |
|
|
|
|
|
|
|
|
| |
These reports are not that helpful and are rarely a problem as each
vnode has a unique lock. Reports from witness regarding lock order
reversal between two vnode locks are already suppressed by the kernel,
see RWL_IS_VNODE in the rwlock(9) manual.
While here, update `testdata/openbsd/report/10` as this report was
generated before I prefixed all output from witness.
|
| |
|
|
|
|
| |
Regression introduced in commit cb93dc6a ("pkg/report: flag short
uvm_fault reports as corrupted") causing some valid reports to be
flagged as corrupted.
|
| |
|
|
|
|
|
| |
They don't contain enough context to be useful.
This change makes `testdata/openbsd/report/0` to be treated as
corrupted, which is desirable since it also lacks context.
|
| |
|
|
|
|
|
|
| |
In order to avoid treating the following diagnostic printf as a panic[1]:
vmx_mprotect_ept: uvm_fault returns 14, GPA=0x200000
[1] https://syzkaller.appspot.com/bug?id=25f3ef919bf9f5d8a89e13b1ba5fec8ca56334be
|
| |
|
|
| |
At last!
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
| |
This panic is not to interesting since the intended behavior is to panic and
it requires root due to usage of mknod(2).
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
| |
Some reports[1] does not include a symbol but rather an address in the
"Stopped at" line. There's unfortunately no useful context to add to the
title so make them generic instead.
[1] https://syzkaller.appspot.com/bug?id=3e44d0b128fd8d6826e4d0044baadcfc02ba7125
|
| | |
|
| |
|
|
|
|
|
|
|
| |
Reports from witness regarding returning to userspace with locks held is not
unique enough, causing all lock leaks to be grouped under the same bug.
Instead try to extract the name of syscall where the first held lock was
grabbed.
While here, shorten the title a bit.
|
| | |
|
| |
|
|
| |
Fixes #1059
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
| |
A line length of 79 in the ddb output does not necessarily imply that the
following line is a continuation of the current line. Since there's no way
to distinguish between ordinary and continuation lines, it could end up
corrupting the report by joining two lines that are disjoint[1].
Instead, disable line wrapping in ddb. If we want some kind of wrapping in
the future it's easier done by pkg/report.
[1] https://syzkaller.appspot.com/bug?extid=03f7377a9848d7d008c9
|
| |
|
|
|
|
| |
Possible now since the output is consistently prefixed[1].
[1] https://marc.info/?l=openbsd-cvs&m=154850328128727&w=2
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
| |
Sometimes the reorder_kernel error message is truncated causing the current
ignore pattern to fail. Instead, simply reject all lines containing
`reorder_kernel' in order to reduce noisy crash reports.
|
| |
|
|
|
| |
OpenBSD produces \n\r for new lines and split output at 79 column.
Handle both of these things.
|
|
|
all: add openbsd support
squash of the following commits:
* openbsd: add mandatory bits
* report: add OpenBSD support
* executor: skip building kvm on OpenBSD
* executor: add OpenBSD support
Linking against libutil is necessary due to usage of openpty(3).
* executor: fix typo in fail() message
* fixup! report: add OpenBSD support
* fixup! openbsd: add mandatory bits
* fixup! openbsd: add mandatory bits
* fixup! openbsd: add mandatory bits
* fixup! report: add OpenBSD support
* gometalinter: skip sys/openbsd
|