aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2020-09-26 12:31:43 +0200
committerDmitry Vyukov <dvyukov@google.com>2020-09-26 12:58:18 +0200
commit2d5ea0cb6edb828803beea8af38dbc04dc80f028 (patch)
tree0b64a9be252ea4d1f1acc98bc195bc28a248eb2b
parent4a006f636cdc7ecce6c16385b5aee54ddb717c2a (diff)
syz-ci: disable CONFIG_DEBUG_INFO_BTF during patch testing
This is a hack as noted in the comment. A proper support would require touching lots of files, and we only need this temporary until #2096 is resolved. One recent example of failed patch testing: https://groups.google.com/g/syzkaller-bugs/c/O8CkScAt9ck/m/E3CYKSGSAgAJ
-rw-r--r--syz-ci/jobs.go11
1 files changed, 11 insertions, 0 deletions
diff --git a/syz-ci/jobs.go b/syz-ci/jobs.go
index 3322609dd..cb6f2fe58 100644
--- a/syz-ci/jobs.go
+++ b/syz-ci/jobs.go
@@ -527,6 +527,17 @@ func (jp *JobProcessor) testPatch(job *Job, mgrcfg *mgrconfig.Config) error {
}
}
+ // Disable CONFIG_DEBUG_INFO_BTF in the config.
+ // DEBUG_INFO_BTF requires a very new pahole binary, which we don't have on syzbot instances.
+ // Currently we don't enable DEBUG_INFO_BTF, but we have some old bugs with DEBUG_INFO_BTF enabled
+ // (at the time requirements for pahole binary were lower, or maybe the config silently disabled itself).
+ // Testing of patches for these bugs fail now because of the config, so we disable it as a work-around.
+ // Ideally we have a new pahole and then we can remove this hack. That's issue #2096.
+ // pkg/vcs/linux.go also disables it for the bisection process.
+ req.KernelConfig = bytes.Replace(req.KernelConfig,
+ []byte("CONFIG_DEBUG_INFO_BTF=y"),
+ []byte("# CONFIG_DEBUG_INFO_BTF is not set"), -1)
+
log.Logf(0, "job: building kernel...")
kernelConfig, _, err := env.BuildKernel(mgr.mgrcfg.Compiler, mgr.mgrcfg.Ccache, mgr.mgrcfg.Userspace,
mgr.mgrcfg.KernelCmdline, mgr.mgrcfg.KernelSysctl, req.KernelConfig)