Dmitry Vyukov
554f8f39c5
pkg/ast: print full file name in errors
...
Print full names so that github annotations work.
I.e. sys/linux/sys.txt instead of just sys.txt.
2020-05-18 11:34:42 +02:00
Dmitry Vyukov
2d4efabd02
Makefile: print errors in standard format
...
Use the standard "file:line:col: error message" format.
Update #1699
2020-05-18 11:34:42 +02:00
Dmitry Vyukov
fc28aeb6b9
tools/check_links.py: print errors in standard format
...
Use the standard "file:line:col: error message" format.
Update #1699
2020-05-18 11:34:42 +02:00
Dmitry Vyukov
51c18193d3
tools/check-copyright.sh: print errors in standard format
...
Use the standard "file:line:col: error message" format.
Update #1699
2020-05-18 11:34:42 +02:00
Dmitry Vyukov
bb26bde008
tools/check-copyright.sh: check py and yml files
...
Update #1699
2020-05-18 11:34:42 +02:00
Dmitry Vyukov
58d6f672b9
sys/targets: check that <dirent.h> works in compilation test
...
Without linux-libc-dev:i386 installed the test passes,
but executor compilation fails because <dirent.h> is broken.
2020-05-18 11:34:42 +02:00
Dmitry Vyukov
1eaedf0fea
pkg/osutil: don't sandbox on CI
...
CI does not have syzkaller user, but may run under root.
Update #1699
2020-05-18 11:34:42 +02:00
Ayushi Sharma
37bccd4ed9
sys/netbsd: increase syscall support
2020-05-15 13:43:55 -07:00
Andrey Konovalov
8a9f1e7dbd
executor, sys/linux: syz_usb_ep_read/write accept endpoint address
...
This patch changes syz_usb_ep_read/write pseudo-syscalls to accept endpoint
address as specified in its endpoint descriptor, instead of endpoint index.
2020-05-15 16:30:32 +02:00
Andrey Konovalov
55efafca37
executor: stall unknown usb requests
...
Also don't fail(), leave that to USB_DEBUG and analyze_control_request().
2020-05-15 16:30:32 +02:00
Alexander Potapenko
d7f9fffab3
targets: syz-extract: add Clang support for Linux builds
...
Allow targets.go use Clang instead of the default Linux compiler by
setting the SYZ_CLANG=1 env var. Doing so changes the compiler to
"clang" and the linker to "ld.ldd", assuming they are in $PATH, and adds
the --target and -ferror-limit CFLAGS.
Target also exports KernelCompiler and KernelLinker fields now, which allows
overriding the compiler and linker in the kernel make invocation.
Signed-off-by: Alexander Potapenko <glider@google.com>
2020-05-15 14:08:01 +02:00
Alexander Potapenko
4da021feb0
targets.go: append flags in a more readable way
...
As suggested by Dmitry Vyukov
Signed-off-by: Alexander Potapenko <glider@google.com>
2020-05-15 14:08:01 +02:00
Alexander Potapenko
e2993cfc13
targets: replace target.CCompilerPrefix with target.Triple
...
This field will soon be used in Clang builds. Also, we'd better
encapsulate compiler name generation in targets.go
Signed-off-by: Alexander Potapenko <glider@google.com>
2020-05-15 14:08:01 +02:00
Michael Tuexen
2d572622ca
sys/targets: fix typo
2020-05-14 11:06:41 +02:00
Michael Tuexen
4dcd09e8cb
sys/targets: add -lc++ when building for test os on FreeBSD
...
This unbreaks gmake presubmit on FreeBSD.
2020-05-14 11:06:41 +02:00
Michael Tuexen
e36b2ae53d
sys/targets: fix tests when building on FreeBSD
...
gmake test is failing on FreeBSD since switching to clang.
To address this:
* use g++ as the C preprocessor for now.
* use a C compiler for compiling C sources and add -lc++ when
compiling executor.cc. Without this, clang warns about
using a C++ compiler for compiling C code.
* some test configs add -no-pie, which is not used by clang.
Add -Wno-unused-command-line-argument to silence a warning
2020-05-14 11:06:41 +02:00
Michael Tuexen
a885920d00
executor: don't build gen.go on FreeBSD
2020-05-13 21:50:15 +02:00
Michael Tuexen
d9fecf2516
executor: don't build gen.go on OpenBSD or NetBSD
...
Use (NOT openbsd) AND (NOT netbsd) instead of (NOT openbsd) OR (NOT netbsd).
2020-05-13 21:50:15 +02:00
Dmitry Vyukov
50749f54cd
pkg/report: add ParseAll
...
ParseAll returns all reports in output.
Use it in syz-symbolize.
2020-05-13 20:49:07 +02:00
Dmitry Vyukov
1e61c8bc14
Makefile: add target for syz-symbolize
2020-05-13 20:48:47 +02:00
Dmitry Vyukov
3d789641a3
pkg/report: add Report.SkipPos
...
SkipPos is what pkg/instance needs,
but also will be needed for ParseAll.
2020-05-13 20:37:26 +02:00
Michael Tüxen
b3fe7470a4
executor: fix typo ( #1737 )
2020-05-13 17:50:20 +02:00
Michael Tuexen
c7875f08e1
executor: fix #ifdef condition for remove_dir()
2020-05-13 15:56:14 +02:00
Dmitry Vyukov
08381b1a9a
docs: add articles by Collabora
2020-05-13 13:12:07 +02:00
Alexander Potapenko
a99fd8b014
targets: introduce osCommon.cflags, make -static a common flag on Linux
...
Signed-off-by: Alexander Potapenko <glider@google.com>
2020-05-13 13:05:41 +02:00
Alexander Potapenko
88a97d1a7a
Get rid of "Cross" in variable names
...
Renamed Target.BrokenCrossCompiler to Target.BrokenCompiler and
Target.CrossCFlags to Target.CFlags
"Everything in Target is about Cross now."
Signed-off-by: Alexander Potapenko <glider@google.com>
2020-05-13 13:05:41 +02:00
Alexander Potapenko
ad606d93b2
targets: delete CFlags
...
According to
https://github.com/google/syzkaller/pull/1732#issuecomment-627809865 ,
they have been unused since 3aa3800
.
Signed-off-by: Alexander Potapenko <glider@google.com>
2020-05-13 13:05:41 +02:00
Dmitry Vyukov
9a6d42fb40
Makefile: fix check_links
...
1. Disable pager.
2. Actually fail.
2020-05-13 11:42:59 +02:00
Dmitry Vyukov
a44eb8f7ea
syz-manager: more consistently check disabled syscalls
...
We have program "validity" check duplicated 4 times
(initially it was just "does it deserialize?").
Then we added program length and disabled syscall.
But some of the sites have only a subset of checks.
Factor out program checking procedure into a separate function
and use it at all sites.
2020-05-12 15:26:07 +02:00
Dmitry Vyukov
9cea41ad33
sys/syz-sysgen: fix up linux/arm/kvm hack
...
We have some private files that need to be excluded as well... oh, hacks.
2020-05-12 11:58:00 +02:00
Michael Tuexen
64d61b4117
vm/vmimpl: Don't show ktr, but uma on FreeBSD
...
Right now, kernels are not build with KTR support, so don't
run show ktr. Add showing information about zones like vmstat -z
would show.
2020-05-12 11:25:51 +02:00
Dmitry Vyukov
160c769827
pkg/mgrconfig: fix errors reported by linter
...
pkg/mgrconfig/load.go:78:1: cyclomatic complexity 26 of func `Complete` is high (> 24)
sys/targets/targets.go:217: File is not `gofmt`-ed with `-s`
2020-05-12 09:15:58 +02:00
Michael Tuexen
a497a5b4b9
sys/targets: don't remove CrossCFlags
2020-05-12 08:46:41 +02:00
Michael Tuexen
1670262071
sys/targets: use clang on FreeBSD
2020-05-12 08:46:41 +02:00
Ayushi Sharma
44aa83104c
sys/netbsd: add access(2)
2020-05-11 23:18:48 -07:00
Dmitry Vyukov
9eb09c4009
pkg/mgrconfig: convert all paths to absolute
...
Qemu can use ssh key after chdir to workdir.
Consistently apply Abs to all paths.
2020-05-11 17:03:56 +02:00
Dmitry Vyukov
b026d481be
pkg/report: skip "rwsem" frames in task hung reports
2020-05-11 16:54:55 +02:00
Dmitry Vyukov
f4bf31dc3c
sys/syz-extract: use -nostdinc on linux
...
This makes the build completely hermetic.
2020-05-11 16:54:44 +02:00
Dmitry Vyukov
b17a8c4474
sys/linux: extract consts on next-20200511
2020-05-11 16:54:44 +02:00
Dmitry Vyukov
7711af6356
sys/syz-extract: don't warn about unsupported consts for 1 arch
...
Only warn about unsupported consts when generating consts for all arches.
2020-05-11 16:54:44 +02:00
Dmitry Vyukov
d44f7473de
sys/syz-extract: add another compiler message about missing const
...
New message from clang.
2020-05-11 16:54:44 +02:00
Ayushi Sharma
3b3a2b78da
sys/netbsd: add __getcwd(2) ( #1725 )
2020-05-11 00:03:33 -07:00
Andrey Konovalov
f8f57555cd
docs/contributing.md: updates
2020-05-11 08:29:31 +02:00
Dmitry Vyukov
8742a2b9db
sys/syz-extract: run mrproper for all linux arches
...
We only run for the current arch, but it's not enough
to clean a build for another arch.
Run mrproper for all non-clean arches.
2020-05-09 16:08:22 +02:00
Dmitry Vyukov
88cb3e92ba
dashboard/app: add notion of per-repo build maintainers
...
For context see:
https://groups.google.com/d/msg/syzkaller/9HxkC_hRP4M/MzFl4laADgAJ
Now if, say, linux-next, is build/boot-broken we can CC maintainers of the tree.
Fixes #1667
2020-05-09 15:40:30 +02:00
Dmitry Vyukov
65a44e22ba
pkg/build: find maintainers for build errors
...
Extract build error source file and obtain maintainers
so that we can mail the report to the right people.
Update #1667
2020-05-09 09:57:51 +02:00
Dmitry Vyukov
e8d62d0c21
pkg/build: parallelize a test
...
Significanlty reduces execution time as it
runs lots of subprocesses.
2020-05-09 08:42:01 +02:00
Dmitry Vyukov
e97b06d3ce
dashboard/app: show patch testing requests on bug page
...
Fixes #1547
2020-05-08 15:48:07 +02:00
Dmitry Vyukov
a788005625
dashboard/app: collect BB coverage stats from managers
...
Fixes #1698
2020-05-08 14:09:35 +02:00
Dmitry Vyukov
f40567d255
all: reformat code
2020-05-08 14:02:16 +02:00