From f8885dc4ce82fa10a22671a0b33dc1ee34cde388 Mon Sep 17 00:00:00 2001 From: Jouni Hogander Date: Sun, 12 Apr 2020 11:24:12 +0300 Subject: pkg/bisect: Implement config bisection Implement Linux kernel configuration bisection. Use bisected minimalistic configuration in commit bisection. Utilizes config_bisect.pl script from Linux kernel tree in bisection. Modify syz-bisect to read in kernel.baseline_config. This is used as a "good" configuration when bisection is run. --- tools/syz-bisect/bisect.go | 2 ++ 1 file changed, 2 insertions(+) (limited to 'tools') diff --git a/tools/syz-bisect/bisect.go b/tools/syz-bisect/bisect.go index b3a307887..c09d000a0 100644 --- a/tools/syz-bisect/bisect.go +++ b/tools/syz-bisect/bisect.go @@ -102,9 +102,11 @@ func main() { loadString("syzkaller.commit", &cfg.Syzkaller.Commit) loadString("kernel.commit", &cfg.Kernel.Commit) loadFile("kernel.config", &cfg.Kernel.Config, true) + loadFile("kernel.baseline_config", &cfg.Kernel.BaselineConfig, false) loadFile("repro.syz", &cfg.Repro.Syz, false) loadFile("repro.c", &cfg.Repro.C, false) loadFile("repro.opts", &cfg.Repro.Opts, true) + if _, err := bisect.Run(cfg); err != nil { fmt.Fprintf(os.Stderr, "bisection failed: %v\n", err) os.Exit(1) -- cgit mrf-deployment