aboutsummaryrefslogtreecommitdiffstats
path: root/executor/common_linux.h
diff options
context:
space:
mode:
authorMarco Elver <elver@google.com>2019-10-04 13:43:02 +0200
committerDmitry Vyukov <dvyukov@google.com>2019-10-04 13:44:09 +0200
commitb2f369e56e13dc135d57c53210ea7ab38b239e94 (patch)
treef740d97da76dbe3c9b1e2de6409e4e6f94c1e375 /executor/common_linux.h
parentfc17ba4941e5e2cae9663b84e13627981c29d381 (diff)
executor, host, csource: Add support to enable KCSAN
By default, the current KCSAN .config does not enable KCSAN during boot, since we encounter races during boot which would prevent syzkaller from ever executing. This adds support to detect if KCSAN is available, and enables it on the fuzzer host.
Diffstat (limited to 'executor/common_linux.h')
-rw-r--r--executor/common_linux.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/executor/common_linux.h b/executor/common_linux.h
index 2d36b998e..13bc71011 100644
--- a/executor/common_linux.h
+++ b/executor/common_linux.h
@@ -2778,3 +2778,11 @@ static void setup_binfmt_misc()
write_file("/proc/sys/fs/binfmt_misc/register", ":syz1:M:1:\x02::./file0:POC");
}
#endif
+
+#if SYZ_EXECUTOR || SYZ_ENABLE_KCSAN
+static void setup_kcsan()
+{
+ if (!write_file("/proc/kcsaninfo", "on"))
+ fail("failed to enable KCSAN");
+}
+#endif