aboutsummaryrefslogtreecommitdiffstats
path: root/dashboard/app/main.html
Commit message (Collapse)AuthorAgeFilesLines
* dashboard/app: move templates to dirTaras Madan2024-07-051-25/+0
|
* dashboard: display managers if we filter by managersAleksandr Nogikh2023-02-171-1/+1
| | | | Don't hide the managers list in this case.
* dashboard: display the list of applied filtersAleksandr Nogikh2023-02-141-1/+4
| | | | | | | Currently it's non obvious whether and what filters are applied to a bug list. Display the list to the user and enable them to drop individual filters.
* dashboard/app: add navigation buttonsDmitry Vyukov2020-07-091-3/+0
| | | | | | Currently we have only "fixed" link at the top of the page. "invalid" is missing and this is not scalable. Add natigation buttons (tabs) for main pages.
* dashboard/app: introduce notion of "decommissioned" namespacesDmitry Vyukov2020-04-291-1/+1
| | | | | | Decommissioned namespaces are not actively tested, no notifications are sent, etc. UI is somewhat different, we don't want about broken builds, etc. They are kept mostly read-only for historical reference.
* dashboard/app: split dashboard per-namespaceDmitry Vyukov2019-04-081-11/+6
| | | | | | | We now have too many namespaces and bugs. Main page takes infinity to load. Also almost nobody is interested in more than 1 namespace. So split main page per-namespaces.
* dashboard/app: add admin pageDmitry Vyukov2019-04-051-67/+0
| | | | | | Add /admin page and move logs, jobs, manager onto it. The main page is too overloaded and takes too long to load. We need to start splitting it. This is a first step.
* dashboard/app, syz-ci: bisection supportDmitry Vyukov2019-03-171-25/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This adds bulk of support for bisection to dashboard/app and syz-ci: - APIs to send bisection jobs and accept results - syz-ci logic to execute bisection jobs - formatting of emails with results - showing of results on dashboard Some difficulties we have to overcome: - since linux is frequently build/boot broken, lots of bisections are inconclusive, need to present such results too - git bisect is poorly suitable for automation, have to resort to output parsing (is output stable?) - git bisect turns out to fail (exit with non-0 status) when bisection is inconclusive (multiple potential cause commits) - older syzkaller revisions can't be built with newer (broken) kernel header, e.g.: ebtables.h:197:19: error: invalid conversion from ‘void*’ to ‘ebt_entry_target*’ - newer compilers produce more warnings and break old syzkaller builds, e.g.: kvm.S.h:6:12: error: ‘kvm_asm64_vm86’ defined but not used [-Werror=unused-const-variable=] - figuring relevant emails to CC from a commit is non-trivial: besides commit author, there can be some emails in commit tags, or not, which tags to use is an interesting question (some may include irrelevant emails) we can also run get_maintainers.pl on the commit, but this can produce too wide list if commit touches lots of files, it can also produce too small list, and then we need to resort to blame - for inconclusive bisection we probably don't need to include emails referenced in the commits (there can be too many of these commits) - need to be careful to exclude own syzbot email from commit CC list, now syzbot emails are referenced in some commits (Reported-by/Tested-by/etc) (can cause some kind of infinite recursion) - lots of commits reference stable mailing list, we should not include it in CC because it's referenced for backports rather then bug reports - since we add new Bug entity fields which we use in queries, whole datastore need to be upgrades to add the new field to index - we must not discard the crash that was used for bisection (treat it as a reported crash) - bisection results need 2 forms of reports: one when we add bisection results to already reported bug another when we report a bug first time with bisection results - when reporting a bug with bisection results we need to use the crash that was used for bisection - some fraction of bisections will probably fail with various errors and we will need some mechanism to retry bisection after the root cause is resolved this is not implemented yet - linux-next is problematic for 2 reasons: fix bisection can't possibly run on linux-next as commits are not reachable from HEAD lots of commits are missing in linux-next (even in linux-next-history) e.g. we have some c63e9e91a254a52 which is now missing in linux-next/linux-next-history - older kernels can't be build with fresh gcc/binutils/perl/make/glibc for now we have to stop at v3.9 (this only requires switching gcc several times along the way) - kernels past v4.11 do not build with gcc 7 and 8 (undefined reference to `____ilog2_NaN') - v4.1 and back have only compiler-gcc5.h - v3.17 and back have only compiler-gcc4.h - v3.6 and back do not have make olddefconfig - compat socket calls can't be bisected past "x86/entry/syscalls: Wire up 32-bit direct socket calls" (v4.10) because of https://syzkaller.appspot.com/bug?id=b5b150e322d5f48c869bcf1528cdbee08d1421cb - v2.6.28 and below does not work with modern make: *** mixed implicit and normal rules: deprecated syntax - v3.8 build fails: Can't use 'defined(@array)' (Maybe you should just omit the defined()?) at kernel/timeconst.pl line 373. kernel/Makefile:134: recipe for target 'kernel/timeconst.h' failed - make 3.81 works for v2.6.28. 3.81 almost works with current HEAD, you need to run make twice because first run spuriously fails with: - v2.6.28 with gcc-4.9.4 broken with: include/linux/kvm.h:240:9: error: duplicate member ‘padding’ - but even defconfig fails: VDSO arch/x86/vdso/vdso.so.dbg gcc: error: elf_x86_64: No such file or directory gcc: error: unrecognized command line option ‘-m’ It seems that we also need old binutils. - for v3.8 and below we need perl-5.14.4. Unfortunately this or any manually built perl doesn't work for later kernels: Can't locate strict.pm in @INC - kernels starting from 4.14 and older are boot broken: https://lkml.org/lkml/2018/9/7/648 - kernels older than 4.12 are broken during netdev setup (fixed by commit 675c8da049fd6556eb2d6cdd745fe812752f07a8) Update #501
* dashboard/app: show managers per namespacesDmitry Vyukov2018-11-221-53/+2
| | | | | End users are interested for managers only for a single namespace. So show them per-namespace.
* dashboard/app: show kernel commit timeDmitry Vyukov2018-11-211-1/+2
| | | | | | Show kernel commit time (author) in a hint for all kernel commit hashes. Update #473
* dashboard/app: show coverage report per-managerDmitry Vyukov2018-09-201-4/+9
| | | | | | 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.
* dashboard/app: tidy up UIDmitry Vyukov2018-09-201-7/+11
| | | | | | | 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).
* dashboard/app: show managers according to access levelDmitry Vyukov2018-09-081-1/+5
| | | | | It is useful to show some info about managers, in particular failed builds.
* dashboard/app: add fragment links for jobs/managers and bug sectionsDmitry Vyukov2018-08-241-5/+5
|
* dashboard/app: Add anchor links for BugNamespacesKees Cook2018-08-241-1/+1
| | | | | | 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.
* dashboard/app: fix anchors for namespacesDmitry Vyukov2018-04-111-1/+1
| | | | | | The human readable caption is a bad value for anchor, also potentially changing over time. Restore the namespace name as anchor as it should be.
* dashboard/app: add support for Google AnalyticsDmitry Vyukov2018-03-211-2/+1
|
* dashboard/app: allow showing source coverage reportDmitry Vyukov2018-02-171-1/+4
|
* dashboard/app: allow sorting bug tablesDmitry Vyukov2018-02-171-0/+1
| | | | Fixes #523
* dashboard/app: finer-grained access controlDmitry Vyukov2018-02-141-3/+11
| | | | | | | | This is the bulk of work for opening dashboard. Implement finer-grained access control (admin/user/public). Show only info designated to the current user access level. Rework UIs for more clarity re bug statuses. Show fixed bug.
* dashboard/app: show jobs/managers/logs only for adminDmitry Vyukov2018-02-011-2/+8
| | | | That's not very interesting for anybody other than admins.
* dashboard/app: tidy up UIsDmitry Vyukov2018-02-011-24/+20
| | | | | Show short kernel repo/branch aliases, also slightly reshuffle and tidy up tables.
* dashboard/app: allow fragment links to namespacesDmitry Vyukov2017-12-121-2/+2
| | | | Now "#foo" link will point to namespace "foo".
* dashboard/app: show manager addressesDmitry Vyukov2017-12-041-1/+1
|
* dashboard/app: show info about duplicates and similar bugsDmitry Vyukov2017-12-041-22/+8
| | | | | Show info about duplicates and similar bugs in other kernels on the bug page.
* dashboard/app: cosmetic changes to manager statsDmitry Vyukov2017-12-011-46/+35
|
* dashboard/app: fix misspelled field in templateDmitry Vyukov2017-12-011-1/+1
| | | | | | | Also change code to catch such bugs in tests in future. The problem was that template.Execute already wrote something into w before returning error, so though the function returned an error we served 200 instead of 500.
* dashboard/app: add manager monitoringDmitry Vyukov2017-12-011-3/+46
| | | | | | | | Make it possible to monitor health and operation of all managers from dashboard. 1. Notify dashboard about internal syz-ci errors (currently we don't know when/if they happen). 2. Send statistics from managers to dashboard.
* dashboard/app: remember job linksDmitry Vyukov2017-11-191-1/+1
| | | | | Remember link for jobs. Check that mailing list is in CC when we accept commands.
* dashboard/app: test fix patches by requestDmitry Vyukov2017-11-161-0/+50
| | | | | | | Add initial support for testing fix patches. A user on mailing list can request patch testing with: and attach a patch.
* dashboard/app: show fixing commit title as hintDmitry Vyukov2017-11-071-1/+1
|
* dashboard/app: show when bugs are fixed and whereDmitry Vyukov2017-11-061-0/+2
|
* dashboard/app: new dashboard appDmitry Vyukov2017-08-021-0/+44
The new app is based on our experience with syz-dash and is meant to supersede it. This app aims at full automation of bug lifecycle: reporting, tracking updates, closing fixed bugs. The main differences are: - this app has support for reporting bugs either by email or using an arbitrary external reporting system - this app tracks status of bugs - this app captures more info about kernel builds