Commit Graph

38 Commits

Author SHA1 Message Date
Dmitry Vyukov
13427bd9a9 pkg/vcs: disable CONFIG_SECURITY_TOMOYO_OMIT_USERSPACE_LOADER before v5.2
See https://groups.google.com/d/msg/syzkaller/mODXmnauUZM/HLZiO2UDBAAJ for context.
2019-05-21 16:50:29 +02:00
Dmitry Vyukov
8f92118cb6 pkg/vcs: disable CONFIG_CAN for bisection before v4.13
Update #501
2019-03-22 12:00:50 +01:00
Marco Vanotti
2cc9698b58 pkg/vcs: fix fuchsia's git repo directory.
This commit changes the fuchsia git repo to make it point to the main
repo instead of just "zircon".

Previously, zircon had its own git repo, so syzkaller had a wrapper that
would issue jiri commands for the whole fuchsia repo, but would just
report commits in the zircon repo.

Recently, fuchsia merged most of its repositories in just one big git
repo. So now, zircon is part of the fuchsia git repo. I think the code
continued working because the old zircon repo is still part of a git
repository, so git commands worked there.

The new code now doesn't have any special casing for Zircon, and now
(almost) everything is part of the fuchsia repo. The other repos are now
git submodules.
2019-03-21 09:10:48 +01:00
Dmitry Vyukov
a469d047d1 pkg/vcs: fix git tag --points-at invocation
Turns out older versions of git don't imply --list for --points-at and fail.
So add --list explicitly.

Update #501
2019-03-20 13:55:48 +01:00
Dmitry Vyukov
5f5191b43f pkg/vcs: wrap git invocations in a helper method
There is a bunch of repetition to invoke git.
Wrap it into a helper method.
2019-03-20 11:01:00 +01:00
Dmitry Vyukov
d4aacfdb59 pkg/vcs: remove unused functions
Bisect is not needed after introduction of Bisecter interface.
2019-03-20 10:34:16 +01:00
Marco Vanotti
14799fb2ef docs, pkg/vcs, sys/fuchsia: update fuchsia urls
Recently the fuchsia team decided to merge all their subrepos into one
big git repo. This meant that the "zircon" repo doesn't exist anymore.
Instead almost everything is under the fuchsia repo.

This change updates all the reference I could find in the code that
point to the zircon and docs repo to make them point to the new fuchsia
repo.
2019-03-20 07:50:58 +01:00
Dmitry Vyukov
f875704448 pkg/vcs: fix too long line
Also restructure because we point to this file from syzbot docs.
2019-03-17 18:57:38 +01:00
Dmitry Vyukov
1f6fc9f188 pkg/vcs: reset repo more
If we cherry-pick some fixes during bisection
we need to "git reset" repo before "git bisect reset".
Otherwise it will fail. Reset repo in more points.

Update #501
2019-03-17 18:06:44 +01:00
Dmitry Vyukov
8bfa7f8698 pkg/vcs: try to work around massive linux kernel build/boot breakages
Linux kernel is frequently build/boot broken. Even on release tags.
Everything past 4.15 is broken with our config for multiple reasons.
This makes bisection process almost infeasible.
Try to work around some breakages by disabling configs are we go back in time.

Update #501
2019-03-17 18:06:44 +01:00
Dmitry Vyukov
5ed211ca96 pkg/vcs: refactor bisection support
In preparation for syz-ci bisection:
- move bisection function into a separate interface
  they look out of place in vcs.Repo because most OSes
  don't implement it and most users don't case
- extract author name and more CC emails for commits
- move linux-specific PreviousReleaseTags into linux.go
- fix inconclusive bisection (more than 1 potential commits)
- add tests fr bisection
- add maintainers returned from get_maintainers.pl for commits
  that don't have enough emails (e.g. only author email)

Update #501
2019-03-17 18:06:44 +01:00
Dmitry Vyukov
d23e90a7b4 all: switch to Go 1.12
Differences in code formatting between Go versions cause constant
problems for us (https://github.com/golang/go/issues/25161).
Currently we support 1.9 and 1.10. Switch to newer 1.11 and 1.12.

Fixes #1013
2019-03-14 14:55:59 +01:00
Mark Johnston
2806a9214b pkg/vcs: add freebsd
This is currently identical to support for OpenBSD and NetBSD.  A
FreeBSD git repo is available at github.com/freebsd/freebsd.
2019-03-12 14:30:21 +01:00
Julia Hansbrough
09aeeba49f fuchsia: Update Syzkaller to pull from Fuchsia monorepo (#1021)
Fuchsia and its repos now live in a new spot!
2019-02-27 21:44:58 -08:00
Dmitry Vyukov
3636a62c11 pkg/vcs: implement few missing methods for akaros
CheckoutBranch is now needed for commit polling.
2019-02-17 15:20:01 +01:00
Dmitry Vyukov
3e98cc3080 dashboard/app: poll commits info
This implements 2 features:
 - syz-ci polls a set of additional repos to discover fixing commits sooner
   (e.g. it can now discover a fixing commit in netfilter tree before
   it reaches any of the tested trees).
 - syz-ci uploads info about commits to dashboard.
   For example, a user marks a bug as fixed by commit "foo: bar".
   syz-ci will find this commit in the main namespace repo
   and upload commmit hash/date/author to dashboard. This in turn
   allows to show links to fixing commits.

Fixes #691
Fixes #610
2019-02-17 15:08:45 +01:00
Dmitry Vyukov
a39e52b1cd all: reformat with Go 1.10 2019-02-11 18:13:34 +01:00
Dan Robertson
13f1d0047a sys/linux: add NDISC packet formats to vnet.txt
Add the basic NDISC (RFC 4861) packet formats to sys/linux/vnet.txt.
2019-02-11 18:10:35 +01:00
Siddharth M
44e061b86c Added vcs support for netbsd 2019-01-24 16:41:05 +01:00
Dmitry Vyukov
da53282acc pkg/vcs: relax check on git hash length
We've seen 15 and 17 char hashes already.
And 14 wasn't initially in the list, but somebody used it.
Relax the check to 8..40 chars.
2019-01-10 14:35:45 +01:00
Dmitry Vyukov
53be0a378f pkg/vcs: treat 14-char git hash as hash too
See https://groups.google.com/d/msg/syzkaller-bugs/1inR5v8ftvo/UJWXDtjCFgAJ
2019-01-04 17:44:45 +01:00
Dmitry Vyukov
0127e3baa7 pkg/vcs: fetch git tags when checking out particular commit
Fetch of a named remote does not seem to fetch all tags.
This is a problem for linux-next as it contains lots of tags
that are not on the main branch because of periodic rebases.
2019-01-04 15:00:58 +01:00
Dmitry Vyukov
4edaba9329 pkg/vcs: disable sandboxing in tests
syz-ci disabling does not work across syz-ci updates.
2018-12-18 12:48:59 +01:00
Dmitry Vyukov
a9cc88c19f pkg/osutil: provide better Rename
os.Rename fails for cross-device renaming (e.g. to/from tmpfs).
This is quite unpleasant. Provide own version that falls back to copying.
2018-12-17 19:09:10 +01:00
Dmitry Vyukov
61adbb167e pkg/vcs: don't use --no-tags when fetching git
pkg/bisect uses Poll and then relies on tags for compiler detection.
Don't use --no-tags when fetching.

Update #501
2018-12-17 19:08:52 +01:00
Dmitry Vyukov
ce6744512e pkg/vcs: fix fetching of commits on non master branch
Fixes #728
2018-12-16 16:18:06 +01:00
Dmitry Vyukov
9aca6b5240 pkg/vcs: also recognize Tested-by: git commit tags
For context see:
https://groups.google.com/d/msg/syzkaller-bugs/xiSF9GdiikU/uBoyYyf3AQAJ
2018-11-20 14:20:38 +01:00
Dmitry Vyukov
c3772ff106 pkg/email, pkg/vcs: test that OpenBSD-style commits are handled
OpenBSD does not use "first line is title" convention,
so test that this is parsed properly.
Also test that multi-line fix/dup commands are properly parsed.
2018-10-11 19:47:32 +02:00
Dmitry Vyukov
472947468d pkg/vcs: add openbsd support
This just says that we want to use git to checkout OpenBSD
without any special/complex features.

Update #712
2018-09-11 14:47:38 +02:00
Dmitry Vyukov
48613af61c pkg/vcs: use garnet instead of topaz layer for fuchsia
Topaz contains end user applications that are not interesting for us
and only increase build time. The applications also consume lots of memory,
so switching to garnet should leave more memory for the fuzzer
(maybe eliminate some OOMs).
2018-08-18 13:55:01 -07:00
Dmitry Vyukov
f5d67fbd9c .gometalinter.json: enable gofmt
The part that we want from gofmt is simplify (-s).
Fix all code that needs fixing.

Update #538
2018-07-31 12:16:54 +02:00
Dmitry Vyukov
af255b09a7 pkg/vcs: poll fixing commits on akaros and fuchsia 2018-07-20 20:26:59 +02:00
Dmitry Vyukov
8ebdf5923d pkg/vcs: add akaros support 2018-07-05 13:02:56 +02:00
Dmitry Vyukov
5c7ca877eb pkg/vcs: fix fuchsia sandboxing 2018-06-29 12:11:46 +02:00
Dmitry Vyukov
68ce63c468 pkg/build: support fuchsia builds 2018-06-28 13:42:07 +02:00
Dmitry Vyukov
919e77001d pkg/vcs: add fuchsia support
For now only checking out and polling.
2018-06-27 14:56:46 +02:00
Dmitry Vyukov
58e8587f64 pkg/vcs: pave way for multi-vcs support
Wrap current git interface in abstract interface.
Provide constructor that create repo interface for the given os/vm.
2018-06-27 13:57:21 +02:00
Dmitry Vyukov
43da5e3a1b pkg/vcs: move from pkg/git
Rename pkg/git to pkg/vcs because we need to support not only git.
2018-06-27 13:07:03 +02:00