| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Consider Cc'd mailing lists when selecting the exact base commit.
Among the base commits determined based on blob sha value from the git
patch, first select the ones that match both the trees of the Cc'd
subsystems and their primary branches.
If it gives no exact match, select a base commit that comes from a tree
of a Cc'd subsystem. As fallback, take any subsystem tree.
This should prevent valid, but suprising patch series triage results.
|
| |
|
|
|
| |
Return the commits that represent unique sets of branches.
Sort the list topologically, breaking ties by commit date.
|
| |
|
|
|
| |
Before traversing the list of trees, attempt to determine the base
tree/commit by looking at the SHA hashes from the supplied git diffs.
|
| |
|
|
|
| |
It will accelerate various commit search operations by orders of
magnitude.
|
| |
|
|
|
|
| |
Poll the tree and consider it during patch series triage. Note that the
media lists are not monitored as of now, so the tree will only be used
when we receive media patches through other mailing lists.
|
| | |
|
| |
|
|
|
|
| |
Display a list of other versions of the same series on the series details page.
Fetch all series sharing the same title and render them in a new "Series Versions" table, allowing navigation between
different versions of a patch series.
|
| |
|
|
| |
Adds unit tests for the series and patch name filtering functionality in the database repository.
|
| |
|
|
|
| |
Update SeriesFilter in pkg/db to include PatchName and SeriesName fields, implement the SQL logic to filter by these
fields case-insensitively, and expose these filters in the dashboard UI.
|
| | |
|
| | |
|
| |
|
|
|
|
|
| |
Copy everything into the build context.
Add a .dockerignore file to avoid copying the definitely unnecessary
files and folders.
Check copyrights presence in Dockerfiles.
|
| |
|
|
| |
It's become necessary after #6533.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
There is a bunch of bugs now:
1. The emulator binary is killed when the first test finished,
before subsequent tests start.
2. The child emulator binary (the actual emulator "emulator_main") is leaked.
These subprocesses are never killed and live past tests.
(that's why we get away with the first problem)
3. Errors are not handled well if emulator setup fails.
We leave spannerHost empty and subsequent tests ignore the original error
(since only the first test executes setupSpannerOnce).
4. NewTransientDB duplicates a bunch of work that needs to happen only once
(in particular os.Setenv("SPANNER_EMULATOR_HOST")).
Fix all of that.
Support spanner emulator distributed as part of google-cloud-sdk while we are here,
so that tests can be run locally.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is not necessary, makes things slower, than is not working anyway:
=== RUN TestSeriesRepositoryUpdate
spanner.go:168: failed to drop the test DB: rpc error: code = Canceled desc = context canceled
--- PASS: TestSeriesRepositoryUpdate (0.07s)
=== RUN TestSeriesInsertSession
spanner.go:168: failed to drop the test DB: rpc error: code = Canceled desc = context canceled
--- PASS: TestSeriesInsertSession (0.11s)
=== RUN TestQueryWaitingSessions
spanner.go:168: failed to drop the test DB: rpc error: code = Canceled desc = context canceled
--- PASS: TestQueryWaitingSessions (0.12s)
=== RUN TestSessionTestRepository
spanner.go:168: failed to drop the test DB: rpc error: code = Canceled desc = context canceled
--- PASS: TestSessionTestRepository (0.09s)
=== RUN TestMigrations
spanner.go:168: failed to drop the test DB: rpc error: code = Canceled desc = context canceled
--- PASS: TestMigrations (0.15s)
=== RUN TestStatsSQLs
spanner.go:168: failed to drop the test DB: rpc error: code = Canceled desc = context canceled
|
| |
|
|
| |
Any is the preferred over interface{} now in Go.
|
| |
|
|
| |
Include more details about the system.
|
| |
|
|
|
|
| |
Add some initial #syz invalid support to syz-cluster. For now, mark all
findings as invalid and don't display that such series have findings on
the web dashboard.
|
| | |
|
| |
|
|
|
|
| |
Currently triage logs look a bit confusing since for some commits they
include author date and for other commit date. Use commit date
everywhere.
|
| |
|
|
|
| |
If the previous processing terminated in a non-graceful way, the lock
file remains in place and prevents further polls.
|
| |
|
|
|
|
| |
Since remote branches are already mapped to "tree/name" local branches,
there's no need for the special "tree-HEAD" tag anymore. Simplify the
code.
|
| |
|
|
|
| |
Fetch and do build test of the base kernels 3 times per day instead
of 2.
|
| |
|
|
|
| |
It will help better understand lags between the kernel revision used by
syz-cluster and the latest tree commit.
|
| |
|
|
| |
Collect trace logs and make them accessible via the web UI.
|
| |
|
|
|
|
|
|
| |
Remap remote branches to local ones both when polling remote
repositories and when cloning the distributed repository.
This will ensure that the branches are still accessible via
TreeName/BranchName (it got broken during the latest changes).
|
| |
|
|
|
|
|
|
|
|
| |
Instead of a complicated overlayfs setup, do a lightweight git clone in
a way that the cloned local copy keeps on referencing the git object
storage on the NFS.
It's simpler code-wise and hopefully will be less susceptible to
failures when local git operations coincide with a git fetch on the
shared repository.
|
| |
|
|
|
|
|
|
| |
Add the drm tree to the list of trees considered during patch series
triage.
Currently we sometimes hit false positives becase of not considering
this tree, see e.g. https://ci.syzbot.org/series/1ecba15f-79c3-40ff-99c6-8f3540bddf65
|
| |
|
|
|
| |
This will simplify debugging of mistriaged patch series that ended up
either not applying anywhere or ended up with a build error.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
When a triage or build step coincides with a cron job that polls new
kernel trees, they often fail due to git command noticing that the
repository is being updated.
In this case, the step logs an error and exits with status=1. Argo
workflows offers a functionality to retry such steps up to the specific
number of times and with exponentially increasing backoffs.
Configure the build and triage step templates to retry 3 times with 5
and then 10 minutes distance between the retries.
|
| |
|
|
|
| |
Wrapping the email.Email object will let us add lore-specific fields to
it at a later point.
|
| |
|
|
|
|
| |
A number of mm patches do not apply neither on top of torvalds, nor on
top of linux-next. The mm/mm-new branch seems to be a more reliable
base.
|
| |
|
|
|
|
|
| |
Check a few more URLs.
Add a TODO about the problem around template error handling - if we
stream the output directly to w, we cannot set the 500 status if a
problem happens somewhere mid-template.
|
| |
|
|
|
|
| |
Apart from just the total number of findings (some of which may end up
being non-reported), also display specifically the number of reports
that have found their way to the mailing lists.
|
| | |
|
| |
|
|
| |
Otherwise reproductions sometimes take almost all VMs.
|
| |
|
|
|
|
|
|
| |
Instead of a predefined set of manually written syz-manager configs,
construct it dynamically from different bits.
During triage, select not just one, but all matching fuzzer
configurations and then merge them together.
|
| |
|
|
| |
KMSAN fails to boot when a specific q35 version is specified.
|
| |
|
|
|
|
| |
3G is not enough for kernels with KMSAN.
Slightly decrease the number of used VMs to fit into the available
CPUs/RAM.
|
| |
|
|
| |
There's no reason to do first one and then another.
|
| |
|
|
|
|
|
|
| |
During triage, process each fuzzing campaign separately as they may have
different base kernel revisions (e.g. if the newest revisions of the
kernel no longer build/boot under the specific kernel configuration).
Refactor the representation of the fuzzing targets in api.go.
|
| |
|
|
|
|
| |
If a boot test step failed and we don't report the finding to the
dashboard, print the report/output to the console to facilitate
debugging.
|
| |
|
|
|
| |
Specify a track name for each fuzzing campaign.
It will help distinguish them once there are multiple ones.
|
| |
|
|
|
| |
Instead of just checking whether the bug was observed on the base crash,
accept a regexp of accepted bug titles as well.
|
| |
|
|
|
|
| |
Instead of passing the values individually, save the FuzzConfig object
as JSON and pass it as an artifact. This will simplify adding more new
fields.
|
| |
|
|
|
| |
Adjut the workflow template and the API to run multiple fuzzing
campaigns as a part of single patch series processing.
|
| |
|
|
|
|
|
|
| |
First build and boot test the base kernel, then proceed to the patched
kernel.
It prevents us from reporting build/boot errors not introduced by the
patch.
|
| |
|
|
|
| |
After this change it fits more naturally into the Go's error
functionality.
|
| |
|
|
|
|
| |
The image is to be deprecated.
Closes #6350.
|
| |
|
|
|
| |
If the archive turned out to be too large, just print an error message
and don't return an error from the status update function.
|