Currently it triggers datastore timeouts episodically.
Don't fail build upload if bug commit update fails.
Split the large query into two smaller queries.
We are seeing lots of datastore timeout errors during bug fetch.
It's a bad idea to fetch thousands of bugs in one query,
so fetch them in batches of 1000 bugs.
Hopefully will reduce rate of errors.
Now that syz-ci can upload coverage reports to GCS,
we can show up-to-date coverage for each manager
rather than a single static outdated file per namespace.
Don't show maintainers for crashes if we don't have them (only linux has).
Show short git hashes for kernel/syzkaller, 40 chars looks excessive (full hash is in hint).
Show current build kernel/syzkaller git hash in managers table.
Remove fuzzing time from managers table (does not seem too useful).
Allow a special case of cross-reporting duping:
rom last but one reporting to the last one (which is stable, final destination)
provided that these two reportings have the same access level and type.
The rest of the combinations can lead to surprising states and
information hiding, so we still don't allow them.
Fixes#569
As asked by Peter Zijlstra: "the lack of whitespace between "repro:"
and the URL makes it hard to copy paste".
We keep lines below 78 colons because otherwise some email clients will reflow them.
And also we want it all properly aligned as asked by Ted Ts'o.
So shorten "syzkaller repro" to "syz repro".
To make it possible to provide URLs that jump to a specific BugNamespace,
this adds clickable anchors for each of the BugNamespaces without changing
the current appearance of the h2 tag.
See the issue for the problem description.
Include repro level into reporting priority,
so that we can order by just it during selection
and ignore ReproC/ReproSyz.
Fixes#634
Since dateSort does not take years into account, Time field of long-standing
bugs is not sorted correctly. Also, it will become more useful to
include year of closed date after we operate the dashboard for some years.
Thus, this patch changes the format of formatTime method, and use textSort
for sorting.
Based on patch by Tetsuo Handa.
dashboard/app/api.go:390:28⚠️ do not pass a nil Context, even if a function permits it; pass context.TODO if you are unsure about which Context to use (SA1012) (megacheck)
Under Firefox 60 browser, sort operation does not work and
ReferenceError: event is not defined
error message is printed in the Web Console window.
Let's explicitly pass an object reference to the sortTable function.
Credit goes to Tetsuo Handa.
Currently one needs to switch between config_stub.go and prod
config back and forth on every deployment. This is very
inconvinient. Rework config, so that switching is not necessary.
bug.LastTime is updated on every crash, even if we don't save it.
As the result we did not save recent crashes for popular bugs at all.
Fix this by introducing bug.LastSavedCrash.
Exact details of syzbot communication change over time,
so it's a bad idea to hardcode them in each email.
Full details are also quite lengthy, so we can't express
all of them in each email header. And providing partial
info may be worse than just providing a link to full info.
So remove most details from email footer,
and just give links to documentation.
Also clarify docs re when "syz fix" should/can be used.
Normally instances can test patches on any tree.
However, some (e.g. non-upstreamed KMSAN) can test only on a fixed tree.
RestrictedTestingRepo contains the repo for such instances
and RestrictedTestingReason contains a human readable reason for the restriction.
Fixes#567
This implements 2 features:
1. It's now possible to specify exact commit when testing as:
2. It's possible to test without patch attached
assuming the patch is already committed to the tested tree.
Fixes#558