OpenBSD CVS

CVS log for src/share/man/man4/kcov.4


[BACK] Up to [local] / src / share / man / man4

Request diff between arbitrary revisions


Default branch: MAIN


Revision 1.10 / (download) - annotate - [select for diffs], Thu Dec 30 06:55:37 2021 UTC (2 years, 5 months ago) by anton
Branch: MAIN
CVS Tags: OPENBSD_7_5_BASE, OPENBSD_7_5, OPENBSD_7_4_BASE, OPENBSD_7_4, OPENBSD_7_3_BASE, OPENBSD_7_3, OPENBSD_7_2_BASE, OPENBSD_7_2, OPENBSD_7_1_BASE, OPENBSD_7_1, HEAD
Changes since 1.9: +3 -3 lines
Diff to previous 1.9 (colored)

minor tweak

Revision 1.9 / (download) - annotate - [select for diffs], Tue Dec 8 20:17:10 2020 UTC (3 years, 5 months ago) by anton
Branch: MAIN
CVS Tags: OPENBSD_7_0_BASE, OPENBSD_7_0, OPENBSD_6_9_BASE, OPENBSD_6_9
Changes since 1.8: +3 -3 lines
Diff to previous 1.8 (colored)

correct pseudo-device in synopsis

Revision 1.8 / (download) - annotate - [select for diffs], Sat Aug 1 08:40:20 2020 UTC (3 years, 10 months ago) by anton
Branch: MAIN
CVS Tags: OPENBSD_6_8_BASE, OPENBSD_6_8
Changes since 1.7: +36 -4 lines
Diff to previous 1.7 (colored)

Add support for remote coverage to kcov. Remote coverage is collected
from threads other than the one currently having kcov enabled. A thread
with kcov enabled occasionally delegates work to another thread,
collecting coverage from such threads improves the ability of syzkaller
to correlate side effects in the kernel caused by issuing a syscall.

Remote coverage is divided into subsystems. The only supported subsystem
right now collects coverage from scheduled tasks and timeouts on behalf
of a kcov enabled thread. In order to make this work `struct task' and
`struct timeout' must be extended with a new field keeping track of the
process that scheduled the task/timeout. Both aforementioned structures
have therefore increased with the size of a pointer on all
architectures.

The kernel API is documented in a new kcov_remote_register(9) manual.

Remote coverage is also supported by kcov on NetBSD and Linux.

ok mpi@

Revision 1.7 / (download) - annotate - [select for diffs], Sun Jan 20 09:57:23 2019 UTC (5 years, 4 months ago) by anton
Branch: MAIN
CVS Tags: OPENBSD_6_7_BASE, OPENBSD_6_7, OPENBSD_6_6_BASE, OPENBSD_6_6, OPENBSD_6_5_BASE, OPENBSD_6_5
Changes since 1.6: +29 -3 lines
Diff to previous 1.6 (colored)

Add support for a new kcov trace mode called KCOV_MODE_TRACE_CMP where
comparison instructions and switch statements are being traced. This mode will
be used during fuzzing to generate even more coverage. The same mode is also
supported by FreeBSD and Linux.

Thanks to jmc@ for improving the manual bits.

ok bluhm@ visa@

Revision 1.6 / (download) - annotate - [select for diffs], Thu Dec 27 19:33:08 2018 UTC (5 years, 5 months ago) by anton
Branch: MAIN
Changes since 1.5: +13 -5 lines
Diff to previous 1.5 (colored)

Make KIOENABLE accept a mode argument, currently limited to KCOV_MODE_TRACE_PC.

Thanks to jmc@ for improving the manual bits.

ok deraadt@ mpi@

Revision 1.5 / (download) - annotate - [select for diffs], Sun Sep 30 09:14:43 2018 UTC (5 years, 8 months ago) by anton
Branch: MAIN
CVS Tags: OPENBSD_6_4_BASE, OPENBSD_6_4
Changes since 1.4: +6 -3 lines
Diff to previous 1.4 (colored)

use a more common wording the authors section

Revision 1.4 / (download) - annotate - [select for diffs], Sat Aug 25 15:41:05 2018 UTC (5 years, 9 months ago) by anton
Branch: MAIN
Changes since 1.3: +6 -6 lines
Diff to previous 1.3 (colored)

process -> thread

Revision 1.3 / (download) - annotate - [select for diffs], Tue Aug 21 18:09:34 2018 UTC (5 years, 9 months ago) by anton
Branch: MAIN
Changes since 1.2: +8 -8 lines
Diff to previous 1.2 (colored)

cope with latest config changes; ok jmc@

Revision 1.2 / (download) - annotate - [select for diffs], Sun Aug 19 17:17:44 2018 UTC (5 years, 9 months ago) by jmc
Branch: MAIN
Changes since 1.1: +5 -5 lines
Diff to previous 1.1 (colored)

tweak previous;

Revision 1.1 / (download) - annotate - [select for diffs], Sun Aug 19 11:42:33 2018 UTC (5 years, 9 months ago) by anton
Branch: MAIN

Add kcov(4), a kernel code coverage tracing driver. It's used in conjunction
with the syzkaller kernel fuzzer. So far, 8 distinct panics have been found and
fixed. This effort will continue.

kcov is limited to architectures using Clang as their default compiler and is
not enabled by default.

With help from mpi@, thanks!

ok kettenis@ mpi@ visa@

This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.