Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Running through suspend/resume results in child timeout #293

Open
mpictor opened this issue Jul 2, 2020 · 1 comment
Open

Running through suspend/resume results in child timeout #293

mpictor opened this issue Jul 2, 2020 · 1 comment

Comments

@mpictor
Copy link

mpictor commented Jul 2, 2020

2020/07/01 01:47:16 workers: 16, corpus: 571 (8m47s ago), crashers: 0, restarts: 1/9966, execs: 64115646 (50405/sec), cover: 1118, uptime: 21m12s
2020/07/01 01:47:19 workers: 16, corpus: 571 (8m50s ago), crashers: 0, restarts: 1/9965, execs: 64269547 (50407/sec), cover: 1118, uptime: 21m15s
2020/07/01 18:26:06 workers: 16, corpus: 571 (8m54s ago), crashers: 0, restarts: 1/9967, execs: 64427609 (50359/sec), cover: 1118, uptime: 21m19s
2020/07/01 18:26:07 workers: 16, corpus: 571 (8m56s ago), crashers: 1, restarts: 1/9967, execs: 64589095 (50420/sec), cover: 1118, uptime: 21m21s
2020/07/01 18:26:10 workers: 16, corpus: 571 (8m59s ago), crashers: 1, restarts: 1/9965, execs: 64613976 (50322/sec), cover: 1118, uptime: 21m24s
2020/07/01 18:26:13 workers: 16, corpus: 571 (9m2s ago), crashers: 1, restarts: 1/9960, execs: 64760906 (50319/sec), cover: 1118, uptime: 21m27s

Note the time jump in the 3rd entry (when the machine was asleep) and the crasher reported in the 4th.

$ cat fuzz/crashers/1f5181fc9f7d217a15d78c5d439500aa64a5447f.output 
program hanged (timeout 10 seconds)

signal: killed

I renamed fuzz/crashers, copied the crasher input to the corpus, and restarted. This input does not cause crashes after the restart. I suspect there's a timer somewhere that doesn't compensate for lost time such as when the computer is asleep.

command used:

$ go-fuzz-build -func FuzzParseFilePathList github.com/u-root/u-root/pkg/uefivars/boot
$ go-fuzz -bin=./boot-fuzz.zip -workdir=fuzz

go-fuzz appears to be the latest version:

$ ls -l `which go-fuzz`
-rwxr-xr-x 1 mark mark 14M Apr 14 10:48 /home/mark/go/bin/go-fuzz
$ cd ~/go/src/github.com/dvyukov/go-fuzz
$ git log -n1 | cat
commit be3528f3a81351d8a438aed216130e1e7da39f7c
Author: Dmitry Vyukov <[email protected]>
Date:   Wed Mar 18 10:02:43 2020 +0100

    .travis.yml: fix osx setup
    
    There seems to be some change in osx machine setup on travis.
$ git pull
Already up to date.
@degeri
Copy link

degeri commented Sep 29, 2021

Just confirming I am seeing the same. Suspend seems to throw the timeout calculation out of whack.

Tip: You can do this in a VM, replication will be easier.

example.mp4

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants