Re: general protection fault in syscall_return_slowpath

From: Andy Lutomirski
Date: Sun Mar 08 2020 - 12:14:51 EST


On Sat, Mar 7, 2020 at 11:45 PM syzbot
<syzbot+cd66e43794b178bb5cd6@xxxxxxxxxxxxxxxxxxxxxxxxx> wrote:
>
> Hello,
>
> syzbot found the following crash on:
>
> HEAD commit: 63623fd4 Merge tag 'for-linus' of git://git.kernel.org/pub..
> git tree: upstream
> console output: https://syzkaller.appspot.com/x/log.txt?x=16cfeac3e00000
> kernel config: https://syzkaller.appspot.com/x/.config?x=5d2e033af114153f
> dashboard link: https://syzkaller.appspot.com/bug?extid=cd66e43794b178bb5cd6
> compiler: clang version 10.0.0 (https://github.com/llvm/llvm-project/ c2443155a0fb245c8f17f2c1c72b6ea391e86e81)
> syz repro: https://syzkaller.appspot.com/x/repro.syz?x=12a42329e00000

I tried to reproduce this and got:

$ make -j4
tools/syz-env/env.go:14:2: cannot find package
"github.com/google/syzkaller/pkg/osutil" in any of:

I'm sure that if I actually understood Go's delightful packaging
system, I could reverse engineer your build system and figure out how
to make it work. But perhaps you could document the build process?
Or maybe make 'make' just work?

For kicks, I tried this:

$ mkdir -p src/github.com/google
$ ln -sr . src/github.com/google/syzkaller
$ GOPATH=`/bin/pwd` make
GOOS=linux GOARCH=amd64 go install ./syz-manager
go install: no install location for directory
/home/luto/apps/syzkaller/syz-manager outside GOPATH

Are there instructions for just building syzkaller? I don't want to
install it, I don't want to fuzz my kernel -- I just want to run your
reproducer.

--Andy