aboutsummaryrefslogtreecommitdiffstats
path: root/pkg/report/testdata
Commit message (Collapse)AuthorAgeFilesLines
...
* pkg/report: parse linux undead task reportsDmitry Vyukov2020-07-202-1/+41
|
* pkg/report: tune synchronize_srcu name for older kernelsDmitry Vyukov2020-07-081-0/+19
|
* pkg/report: make smp_call_function anchor instead of on_each_cpuDmitry Vyukov2020-07-0712-11/+127
| | | | | | | | | Right after committing the on_each_cpu change, another report come in where smp_call_function is not called from on_each_cpu. And there are actually more such callers in code, and also as existing tests show. smp_call_function seems to be the better root cause indication.
* pkg/report: consider on_each_cpu as stall anchor functionDmitry Vyukov2020-07-078-4/+523
| | | | | | Kernel frequently hangs in on_each_cpu, it seems to be more indicative of the root cause than subsequent frames.
* pkg/report: use rtnetlink_rcv_msg as stall anchor frameDmitry Vyukov2020-07-063-2/+66
| | | | | | | | It also hash high branching factor and a bug is more likely in the callback. For the added test we used to say: INFO: rcu detected stall in __sys_sendmsg now we say more useful: INFO: rcu detected stall in tc_modify_qdisc
* pkg/report: stop using questionable framesAndrey Konovalov2020-06-177-6/+57
| | | | | | | | | | Most likely reports without proper stack traces were caused by a bug in the unwinder and are now fixed in 187b96db5ca7 "x86/unwind/orc: Fix unwind_get_return_address_ptr() for inactive tasks". Disable trying to use questionable frames for now. Fixes #1834
* pkg/report: ingore another android debug output that looks like kernel crashDmitry Vyukov2020-06-121-0/+19
|
* pkg/report: improve "using smp_processor_id() in preemptible code" parsingDmitry Vyukov2020-06-041-0/+51
|
* pkg/report: update "using X in preemptible code" bugDmitry Vyukov2020-06-032-0/+96
|
* pkg/report: add tests for rcu stalls in kmem_cache_allocDmitry Vyukov2020-06-029-0/+1454
| | | | | | | | I though maybe we need special handling for them: stop at kmem_cache_alloc function. But now I am not sure. This can also be an infinite loop which calls kmalloc/kfree. Let's not change code for now, just fix things with tests (this is a good representative set).
* pkg/report: improve report titlesAndrey Konovalov2020-06-021-0/+66
|
* pkg/report: avoid producing no guilty fileDmitry Vyukov2020-05-291-0/+48
| | | | | | If we produce no guilty file at all, the report is mailed only to LKML, which is mostly equivalent to mailing to nobody. If we skip all files, return the first one.
* pkg/report: fix kUBSan reporting on NetBSDm00nbsd2020-05-241-0/+1415
|
* pkg/report: skip "rwsem" frames in task hung reportsDmitry Vyukov2020-05-112-0/+176
|
* pkg/report: match a common pf panicMark Johnston2020-04-301-0/+23
|
* pkg/report: add compat ioctl stall anchor framesDmitry Vyukov2020-04-193-2/+54
| | | | | | | | Add new __ia32_compat_sys_ioctl anchor frame (something seems to have been changed in compat ioctl's). Also skip all compat_ioctl frames, it's pretty common naming convention and it may help to avoid some dups across compat/non-compat paths.
* pkg/report: make uvm_fault parsing more strict on OpenBSDAnton Lindqvist2020-04-121-0/+2
| | | | | | | | 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
* pkg/report: fix detection of questionable framesDmitry Vyukov2020-03-271-1/+20
| | | | | | The previous commit "pkg/report: handle cases when whole stack is questionable" mishandles frames that start with [PC] prefix before " ? ". Restore that part.
* pkg/report: handle cases when whole stack is questionableDmitry Vyukov2020-03-214-0/+390
| | | | | | | | | If the report is identified as corrupted because there are no frames at all, try to re-extract using questionable frames. This is a bit risky and may produce lots of one-off corrupted reports at random locations. But we won't know until we deploy this... Fixes #1216
* pkg/report: improve report titlesAndrey Konovalov2020-03-216-0/+632
|
* pkg/report: improve report titlesAndrey Konovalov2020-03-182-0/+212
|
* pkg/report: improve report titlesAndrey Konovalov2020-03-131-0/+102
|
* pkg/report: improve report titlesAndrey Konovalov2020-03-091-0/+167
|
* pkg/report: normalize soreceive report on OpenBSDAnton Lindqvist2020-02-272-0/+491
| | | | At last!
* pkg/report: update parsing of rcu stalls in ioctlsDmitry Vyukov2020-02-021-0/+52
| | | | vfs_ioctl is now inlined somethimes...
* pkg/report: don't attribute deadlocks to workqueue functionsDmitry Vyukov2020-01-314-2/+200
| | | | | In all cases we seen deadlocks in workqueue functions are related to the subsystem that submits work items.
* pkg/report: treat nfnetlink_rcv_msg as anchor frameDmitry Vyukov2020-01-204-0/+223
| | | | | | There is tremendous branching after that frame to all existing netlink callbacks which are effectively completely different syscalls.
* pkg/report: add pattern for Linux #SS faultsJann Horn2020-01-151-0/+38
| | | | | | | | | | | | | | | | | | | | On X86-64, dereferencing a non-canonical address normally causes a #GP, for which syzkaller already has a pattern. However, if the base register of the non-canonical address is RBP (which can happen in builds that use RBP as a general-purpose register because they don't use frame pointer unwinding), #SS is thrown instead, for which syzkaller did not yet have a pattern. To see this kind of fault, you can insert the following code in kernel_init() after the call to rcu_end_inkernel_boot(): asm volatile( "movabs $0x8000000000000000, %rbp\n\t" "movq (%rbp), %rax\n\t" "ud2\n\t" ); Linux prints a different error message for #SS, so add that error message to syzkaller's list of patterns.
* pkg/report: Add the calling function to sx reportsAndrew Turner2020-01-141-0/+21
| | | | | These can fail in many functions, include the calling function in the report
* pkg/report: add more ignored framesAndrey Konovalov2020-01-071-0/+129
|
* pkg/report: normalize kqueue_check report on OpenBSDAnton Lindqvist2020-01-062-0/+285
|
* pkg/report: normalize unhandled af report on OpenBSDAnton Lindqvist2020-01-031-0/+214
|
* pkg/report: normalize yet another free list modified report on OpenBSDAnton Lindqvist2019-12-091-0/+246
|
* pkg/report: fix guilty file extraction in presence of rcu stallsDmitry Vyukov2019-12-051-0/+165
| | | | | | | | | | | | | | The the added test for exception from exception corner case. "BUG: spinlock lockup" fails to respect panic_on_warn and panic after printing report (though, it's a BUG already, so it should have been paniced even without panic_on_warn). As the result we got "spinlock lockup" followed by "rcu stall" report. And we have that special exception for rcu stalls b/c for them the most of the report is irrelevant up to apic_timer_interrupt frame. The code did not expect this weird double-report case and skipped everything up to apic_timer_interrupt, though it's actually a lockup in netfilter code.
* pkg/report: improve reports titlesAndrey Konovalov2019-12-051-0/+86
| | | | Ignore kobject_put in stack frames.
* pkg/report: improve report titlesAndrey Konovalov2019-11-291-0/+68
|
* pkg/report: add few more UBSAN reportsDmitry Vyukov2019-11-293-0/+102
| | | | Update #1523
* pkg/report: update UBSAN report parsingDmitry Vyukov2019-11-285-3/+53
| | | | Update #1523
* pkg/report: generalize general protection fault patternJann Horn2019-11-192-0/+107
| | | | | | | | | | | | An upcoming patch for Linux will change the error reporting pattern for general protection faults such that the colon doesn't necessarily come immediately after the string "general protection fault" (see https://lore.kernel.org/lkml/20191118142144.GC6363@zn.tnic/). Change the pattern in syzkaller before that happens. Note that this is not necessarily the final format; in particular, the ordering of the KASAN note and the "general protection fault" line might swap.
* sys/fuchsia: remove deprecated exception APIsDavid Pursell2019-11-141-65/+0
| | | | | | The port-based exception APIs have been deprecated on Fuchsia and will be removed shortly. Delete them from the syscall definitions and modify the Fuchsia executor to use the new channel-based APIs instead.
* Correct parsing of Kernel ASan reportsKamil Rytarowski2019-11-141-0/+1583
| | | | Handle __asan strings in backtraces.
* pkg/report: ignore boot warning that always happensDmitry Vyukov2019-11-081-0/+316
| | | | | | | Happens on every boot and prevents detection of other bugs. The warning was already reported upstream: https://groups.google.com/forum/#!msg/syzkaller-bugs/8HZdIbi8sdE/Niu4qijeAAAJ https://syzkaller.appspot.com/bug?extid=4d497898effeb1936245
* pkg/report: trim panic_on_warn set few lines earlierDmitry Vyukov2019-11-081-0/+81
| | | | | The KCSAN reports can be quite short. Now with task contexts we can hopefully reduce the threshold a bit.
* pkg/report: fix up panic handlingDmitry Vyukov2019-11-061-0/+72
| | | | Obviously there is an exception to every exception in kernel output parsing...
* pkg/report: detect syzkaller panics in lost connection bugsDmitry Vyukov2019-11-065-0/+105
| | | | | | | | | Some syzkaller panics happen due to memory corruptions, but it still would be useful at least to get some visibility into these crashes. On some OSes we actualy already detect them as they have "panic:" oops pattern, but not e.g. on linux. Fixes #318
* pkg/report: suppress fifo_badop reports on OpenBSDAnton Lindqvist2019-10-261-0/+316
| | | | | This panic is not to interesting since the intended behavior is to panic and it requires root due to usage of mknod(2).
* pkg/report: better diffirentiate task hung reportsDmitry Vyukov2019-10-232-0/+385
| | | | A number of hangs happen when trying to cancel tasks in different subsystems.
* pkg/report: normalize pool cpu free list modified reports on OpenBSD (#1474)Anton Lindqvist2019-10-221-0/+256
|
* syz-fuzzer, executor: Add support for blacklisting data race framesMarco Elver2019-10-222-2/+6
| | | | | This adds support to add frames that have already been in data races, to the KCSAN report blacklist.
* pkg/report: improve parsing of task hung reportsDmitry Vyukov2019-10-2216-2/+3099
| | | | | | | | | The problem with task hung reports is that they manifest at random victim stacks, rather at the root cause stack. E.g. if there is something wrong with RCU subsystem, we are getting hangs all over the kernel on all synchronize_* calls. So before resotring to the common logic of skipping some common frames, we look for 2 common buckets: hangs on synchronize_rcu and hangs on rtnl_lock and group these together.