Commit Graph

23 Commits

Author SHA1 Message Date
Dmitry Vyukov
80b6c954f8 manager: add ability to ignore bugs
Add new config parameter "ignores" which contains list of regexp expressions.
If one of the expressions is matched against oops line,
crash report is not saved and VM is not restarted.
2016-12-19 17:39:03 +01:00
Dmitry Vyukov
c0edd52ce1 report: whitelist WARNING printed by sshd 2016-12-16 15:48:14 +01:00
Dmitry Vyukov
739d40c1b8 report: support new stack trace format without PC values 2016-12-16 15:40:53 +01:00
Dmitry Vyukov
6f9e42e9ba report: support "spinlock recursion" oops 2016-12-07 16:43:48 +01:00
Dmitry Vyukov
5c8b703fa2 report: don't print size in KASAN reports
I see a bunch of reports of the form:
KASAN: use-after-free Read of size 4059 in copy_from_iter
but size is different in all reports.
This hampers deduplication.
Don't print size.
2016-11-25 20:12:16 +01:00
Dmitry Vyukov
df98287f93 report: fix "suspicious RCU usage" oops extraction 2016-11-12 11:59:02 -08:00
Dmitry Vyukov
2569b613c4 report: add ability to ignore some kernel INFO messages
RCU prints a severe bugs like stalls with "INFO: ",
but then it prints a purely informative messages
like "INFO: lockdep is turned off" also with "INFO: ".
Add ability to ignore some kernel messages that look like oopses.
Ignore informative rcu messages.
2016-10-16 08:39:23 +02:00
Dmitry Vyukov
ae7eda212f report: add another report format for hung tasks 2016-10-16 08:15:24 +02:00
Dmitry Vyukov
8de62fb58d report: add more report formats for rcu stalls 2016-10-16 08:15:24 +02:00
Dmitry Vyukov
b3f098b002 report: use non-greedy new line matching
The intention in these regexp's is to find the first line containing e.g. func name.
Currently we use greedy new line matching and find the _last_ line with func name.
E.g. if we have 2 KASAN reports we will match header from the first report,
but then access info from the second report.

Use non-greedy new line matching to fix it.
2016-10-13 13:16:23 +02:00
Dmitry Vyukov
016bad281d report: support more error messages 2016-10-10 18:08:07 +02:00
Dmitry Vyukov
2cb8950047 report: infer correct strip prefix from known symbol location 2016-10-06 16:45:42 +02:00
Dmitry Vyukov
4318f395fc report: extract "INFO: suspicious RCU usage" oops 2016-09-29 13:46:21 +02:00
Dmitry Vyukov
db32fed8a1 report: always extract the first oops as description
If there are several oops messages, we need to extract and use the first one.
2016-09-28 17:37:42 +02:00
Dmitry Vyukov
4fc28739fa report: support few more formats of error messages 2016-09-28 17:22:56 +02:00
Dmitry Vyukov
62a086d4e6 report: fix process leak 2016-09-05 12:49:47 +02:00
Dmitry Vyukov
4625417460 report: strip non-deterministic part from "spinlock lockup" reports 2016-09-05 12:49:47 +02:00
Dmitry Vyukov
2e94e89c78 report: fix parsing of WARNING messages
Paths can contain '-'.
2016-09-05 12:49:47 +02:00
Dmitry Vyukov
44fd4c24cb report: strip non-deterministic info from rcu stall messages 2016-09-05 12:49:47 +02:00
Dmitry Vyukov
b06a63128a manager: improve how crashes are saved
Now crashes dir contains 1 subdirectory per unique crash type.
Each subdirectory contains 'description' file with a unique string identifying
the crash type (e.g. "KASAN: slab-out-of-bounds Read of size 2 in bit_putcs"),
and up to 100 logN and reportN files with raw crash log (as before) and
post processed kernel oops message.
2016-09-01 17:08:22 +02:00
Dmitry Vyukov
9ec6b54fae report: add a function that symbolizes reports 2016-09-01 15:09:39 +02:00
Dmitry Vyukov
bb1e3bfda5 report: extract better, unique identifiers of oopses 2016-08-31 13:20:57 +02:00
Dmitry Vyukov
14dfa4f109 report: add a new package for report parsing and processing
Move vm.FindCrash to the new package.
2016-08-30 15:19:28 +02:00