aboutsummaryrefslogtreecommitdiffstats
path: root/pkg
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2019-03-17 18:56:13 +0100
committerDmitry Vyukov <dvyukov@google.com>2019-03-17 18:57:38 +0100
commitf87570444886cede1ec59563acce28033ed43dfa (patch)
tree00cef7f51e0db12b5ce36040c4a20c7a36b518e6 /pkg
parentbcbe71c80aa9e09eddddf0c883ad470304bc8883 (diff)
pkg/vcs: fix too long line
Also restructure because we point to this file from syzbot docs.
Diffstat (limited to 'pkg')
-rw-r--r--pkg/vcs/linux.go84
1 files changed, 43 insertions, 41 deletions
diff --git a/pkg/vcs/linux.go b/pkg/vcs/linux.go
index ccfba0ab1..e4684f3e6 100644
--- a/pkg/vcs/linux.go
+++ b/pkg/vcs/linux.go
@@ -30,46 +30,6 @@ func newLinux(dir string) *linux {
}
}
-func (ctx *linux) Bisect(bad, good string, trace io.Writer, pred func() (BisectResult, error)) ([]*Commit, error) {
- commits, err := ctx.git.Bisect(bad, good, trace, pred)
- if len(commits) == 1 {
- ctx.addMaintainers(commits[0])
- }
- return commits, err
-}
-
-func (ctx *linux) addMaintainers(com *Commit) {
- if len(com.CC) > 3 {
- return
- }
- list := ctx.getMaintainers(com.Hash, false)
- if len(list) < 3 {
- list = ctx.getMaintainers(com.Hash, true)
- }
- com.CC = email.MergeEmailLists(com.CC, list)
-}
-
-func (ctx *linux) getMaintainers(hash string, blame bool) []string {
- args := "git show " + hash + " | " +
- filepath.FromSlash("scripts/get_maintainer.pl") + " --no-n --no-rolestats"
- if blame {
- args += " --git-blame"
- }
- output, err := osutil.RunCmd(time.Minute, ctx.git.dir, "bash", "-c", args)
- if err != nil {
- return nil
- }
- var list []string
- for _, line := range strings.Split(string(output), "\n") {
- addr, err := mail.ParseAddress(line)
- if err != nil {
- continue
- }
- list = append(list, strings.ToLower(addr.Address))
- }
- return list
-}
-
func (ctx *linux) PreviousReleaseTags(commit string) ([]string, error) {
return ctx.previousReleaseTags(commit, false)
}
@@ -163,7 +123,9 @@ func (ctx *linux) EnvForCommit(commit string, kernelConfig []byte) (*BisectEnv,
}
// v4.0 doesn't boot with our config nor with defconfig, it halts on an interrupt in x86_64_start_kernel.
if !tags["v4.1"] {
- if _, err := runSandboxed(ctx.dir, "git", "cherry-pick", "--no-commit", "99124e4db5b7b70daeaaf1d88a6a8078a0004c6e"); err != nil {
+ _, err := runSandboxed(ctx.dir, "git", "cherry-pick",
+ "--no-commit", "99124e4db5b7b70daeaaf1d88a6a8078a0004c6e")
+ if err != nil {
return nil, err
}
}
@@ -212,3 +174,43 @@ func linuxDisableConfigs(config []byte, tags map[string]bool) []byte {
}
return config
}
+
+func (ctx *linux) Bisect(bad, good string, trace io.Writer, pred func() (BisectResult, error)) ([]*Commit, error) {
+ commits, err := ctx.git.Bisect(bad, good, trace, pred)
+ if len(commits) == 1 {
+ ctx.addMaintainers(commits[0])
+ }
+ return commits, err
+}
+
+func (ctx *linux) addMaintainers(com *Commit) {
+ if len(com.CC) > 3 {
+ return
+ }
+ list := ctx.getMaintainers(com.Hash, false)
+ if len(list) < 3 {
+ list = ctx.getMaintainers(com.Hash, true)
+ }
+ com.CC = email.MergeEmailLists(com.CC, list)
+}
+
+func (ctx *linux) getMaintainers(hash string, blame bool) []string {
+ args := "git show " + hash + " | " +
+ filepath.FromSlash("scripts/get_maintainer.pl") + " --no-n --no-rolestats"
+ if blame {
+ args += " --git-blame"
+ }
+ output, err := osutil.RunCmd(time.Minute, ctx.git.dir, "bash", "-c", args)
+ if err != nil {
+ return nil
+ }
+ var list []string
+ for _, line := range strings.Split(string(output), "\n") {
+ addr, err := mail.ParseAddress(line)
+ if err != nil {
+ continue
+ }
+ list = append(list, strings.ToLower(addr.Address))
+ }
+ return list
+}