| 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.
|
| |
|
|
|
|
| |
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.
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| |
|
|
|
|
| |
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.
|
| |
|
|
|
|
| |
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.
|
| |
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
| |
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.
|
| |
|
|
|
|
| |
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.
|
| |
|
|
| |
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.
|
| |
|
|
|
| |
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.
|
| |
|
|
|
|
|
|
| |
There are a number of patch series that don't apply to torvalds, but do
apply to linux-next.
Since we don't fetch all maintainer trees, use linux-next as the last
resort.
|
| |
|
|
|
| |
Some series don't apply to torvalds, see e.g.
https://ci.syzbot.org/series/f429573e-7862-4f1e-97dd-3215a235b1d3
|
| | |
|
| |
|
|
|
| |
When fuzzing fs-related series, enable fs syscalls and use the fs
corpus.
|
| |
|
|
| |
This is a better choice than context.Background().
|
| |
|
|
| |
Track base crashes for (commit hash, config, arch) tuples.
|
| |
|
|
| |
It is the session steps with the "error" status that must be counted.
|
| | |
|
| |
|
|
|
|
| |
Add some leading whitespaces to the suggested Tested-By tag,
otherwise it must be misinterpreted by other kernel tools, see:
https://lore.kernel.org/all/20250819175842.7edaf8a5@kernel.org/
|
| |
|
|
| |
Display the share of sessions that have failed and skipped tests.
|
| |
|
|
|
|
|
|
| |
If all symbol hashes between the base and the pathed kernel match,
there's no reason to spend time fuzzing the series.
Add a 'skipped' status to the enum of possible session test results and
set it from the fuzz-step.
|
| |
|
|
|
|
|
| |
We could not generate the stats page when there were findings for a not
yet finished session.
Fix it and adjust the tests.
|
| |
|
|
|
|
|
| |
Add a web dashboard page with the main statistics concerning patch
series fuzzing.
Improve the navigation bar on top of the page.
|
| | |
|
| |
|
|
|
|
|
|
| |
There are cases when we do not need the "if the patched code is not
reached within 30 minutes, abort fuzzing" check.
This is e.g. the case of mm/ code that is not fully instrumented by
KCOV.
|
| |
|
|
|
|
|
|
| |
Keep the fuzz-step parameters in a separate structure to minimize the
field duplication.
It will also facilitate the reuse of the same syzkaller config in
several fuzzing configurations.
|
| |
|
|
|
| |
It simplifies the dependency tree and fixes a build error for the
send-test-email container.
|
| |
|
|
|
|
|
| |
During smoke builds, we may have a tree name/branch name pair instead of
just a commit hash, which is the case for normal kernel build requests.
Support both types of requests.
|
| | |
|
| |
|
|
| |
Use a custom set of enabled syscalls.
|
| |
|
|
|
| |
Add a config to fuzz kvm patches.
Listen on the kvm mailing list.
|
| |
|
|
|
|
|
|
| |
Not always are fuzzing targets well represented by their own kernel
trees, so let's select a kernel tree and a fuzzing config separately.
Drop explicit priorities and instead just sort the lists of trees and
configs.
|
| |
|
|
|
| |
Extract the common "Query - ReadOne - close iterator" pattern into a
separate method.
|