diff options
| author | Dmitry Vyukov <dvyukov@google.com> | 2018-04-19 11:58:25 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2018-04-19 11:58:25 +0200 |
| commit | 0a81695ed15a8e71634694e3439043abad5fd949 (patch) | |
| tree | 41c5fa387d6decc7f7ee8f57323fb2d2e65e1573 /docs/linux/kernel_configs.md | |
| parent | 4f18337d8908c99d82387e72286130cad9109240 (diff) | |
Update kernel_configs.md
Diffstat (limited to 'docs/linux/kernel_configs.md')
| -rw-r--r-- | docs/linux/kernel_configs.md | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/docs/linux/kernel_configs.md b/docs/linux/kernel_configs.md index 8c54ccbf1..d0d001988 100644 --- a/docs/linux/kernel_configs.md +++ b/docs/linux/kernel_configs.md @@ -8,8 +8,14 @@ To enable coverage collection, which is extremely important for effective fuzzin ``` CONFIG_KCOV=y CONFIG_KCOV_INSTRUMENT_ALL=y +CONFIG_KCOV_ENABLE_COMPARISONS=y CONFIG_DEBUG_FS=y ``` +Note that `CONFIG_KCOV_ENABLE_COMPARISONS` feature also requires `gcc8+` and the following commits if you are testing an old kernel: +``` + kcov: support comparison operands collection + kcov: fix comparison callback signature +``` To show code coverage in web interface: ``` @@ -46,6 +52,23 @@ CONFIG_KASAN=y CONFIG_KASAN_INLINE=y ``` +For testing with fault injection enable the following configs (syzkaller will pick it up automatically): +``` +CONFIG_FAULT_INJECTION=y +CONFIG_FAULT_INJECTION_DEBUG_FS=y +CONFIG_FAILSLAB=y +CONFIG_FAIL_PAGE_ALLOC=y +CONFIG_FAIL_MAKE_REQUEST=y +CONFIG_FAIL_IO_TIMEOUT=y +CONFIG_FAIL_FUTEX=y +``` +Note: you also need the following commits if you are testing an old kernel: +``` + fault-inject: support systematic fault injection + fault-inject: simplify access check for fail-nth + fault-inject: fix wrong should_fail() decision in task context +``` + Any other debugging configs, the more the better, here are some that proved to be especially useful: ``` CONFIG_LOCKDEP=y |
