Re: [RFC][PATCH 00/12] various perf fixes

From: Dmitry Vyukov
Date: Mon Feb 15 2016 - 11:29:58 EST


On Mon, Feb 15, 2016 at 5:17 PM, Peter Zijlstra <peterz@xxxxxxxxxxxxx> wrote:
> On Thu, Jan 14, 2016 at 11:05:50AM +0100, Dmitry Vyukov wrote:
>> On Thu, Jan 14, 2016 at 10:35 AM, Peter Zijlstra <peterz@xxxxxxxxxxxxx> wrote:
>> > On Tue, Jan 12, 2016 at 12:26:27PM +0100, Dmitry Vyukov wrote:
>> >> What do you think if we work on making syzkaller work for you locally?
>> >
>> > There's no easy way to do this right? I had a look at that project on
>> > github and it looks like the most complex test setup possible :-(
>> >
>> > I don't generally do VMs so I'm not much good at setting those up nor do
>> > I speak Go (although I did play the game a lot of years ago).
>> >
>> > Isn't there an easy way to just run syz-fuzzer on a machine without all
>> > the bells and whistles on?
>>
>>
>> There is a way to run it without coverage on a local machine.
>>
>> First, you need to setup Go toolchain: download latest Go distribution
>> from https://golang.org/dl:
>> https://storage.googleapis.com/golang/go1.5.3.linux-amd64.tar.gz
>> Unpack it to $HOME/go1.5.
>
> I used: apt-get -t testing install golang, which gets me that same 1.5.3
> version of Go (and I still think its a board game!).
>
>> $ export GOROOT=$HOME/go1.5
>> $ export GOPATH=$HOME/gopath
>
> Fully expecting not to need nonsense like that.
>
>> Download syzkaller sources:
>>
>> $ go get github.com/google/syzkaller
>
> But that yields:
>
> ~# go get github.com/google/syzkaller
> package github.com/google/syzkaller: cannot download, $GOPATH not set. For more details see: go help gopath
>
> Clearly this stuff isn't meant to be used :/ Why doesn't it set a system
> GOPATH in profile.d or whatnot. Why do I, as a user, need to be bothered
> with crap like this.

If you get Go via apt-get, then you don't need to set GOROOT, but you
still need to set GOPATH to some path. That's the path where 'go get'
will download syzkaller and dependent packages.