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
dashboard/config/openbsd: increase the number of procs #2942
Conversation
Hmm, I deployed it and it began to continuously crash as
I'll set it to 4 for now (this is the |
6a65d65
to
b2c2488
Compare
On Thu, Dec 23, 2021 at 02:50:07AM -0800, Aleksandr Nogikh wrote:
Hmm, I deployed it and it began to continuously crash as
```
executor 5: exit status 67
SYZFAIL: tun_id out of range
tun_id=5 (errno 2: No such file or directory)
loop exited with status 67
```
I'll set it to 4 for now (this is the `MAX_TUN` value). What can go wrong if we increase `MAX_TUN`?
Only 4 tun devices are created by default. Something like this needs to
be added to tools/create-openbsd-vmm-worker.sh:
cd /dev && for i in `jot - 0 10`; do sh MAKEDEV tun$i; done
|
e705de8
to
72b6713
Compare
I've also added a commit than does what you say, thanks! |
afb2c1c
to
3dd2836
Compare
Hmm, no, in its current state it did not create those tun devices at boot time. Though when I execute that command manually, it does what it should do. I'm afraid I won't be able to finish and deploy it now as I'm already running out of time. I'll be back from vacation in mid Jan and then will complete it. |
@@ -52,7 +52,7 @@ cat >etc/installurl <<EOF | |||
https://${MIRROR}/pub/OpenBSD | |||
EOF | |||
|
|||
cat >etc/rc.local <<EOF | |||
cat >etc/rc.local <<'EOF' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Since the heredoc is treated as a literal, the escaped \$
in hostname \$(cat /etc/myname)
must be dropped. Otherwise it's a syntax error and probably why the subsequent MAKEDEV invocation does not run.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, that was exactly the reason. Thanks for noting!
3dd2836
to
0dd2eb5
Compare
Currently only 4 are created by default. This limits the maximum number of simultaneously running syz-executors.
Currently OpenBSD instances are underutilized because of using only 2 syz-executor processes per VM. Change it to 8.
0dd2eb5
to
2453714
Compare
I'm late to this party, but it appears we got the name wrong. The actual devices we use are |
Yes, I noticed that after deployment and have regenerated the image after a local fix. What makes me wonder is that the total number of executed calls per day has not increased. When I log in to the VMs, they still don't seem to be overloaded most of the time - everything just like it was when I recorded traces from them. It's as if there are alternating periods when all procs are mostly sleeping and when they're all super active at the same time and compete hard for the CPU time... |
FTR Hmm, looked at Linux instances - same picture. This all is just a hypothesis, but I think this might have to do with the design of syz-fuzzer. It uses a single work queue and it apparently shifts its targets slowly - especially given that most of the executions are not completely new programs but playing with the old ones (mutating etc). And programs have completely different real vs CPU time ratio - some calls are blocking and syzkaller sleeps until they time out, some calls cause syzkaller to await extra coverage, etc. So there must be long waves of slow programs (when @dvyukov what do you think? Ideally we could start more procs when the system is mostly idle (actually most of the time) and freeze some of them when we face a bottleneck. Or maybe split procs into several work queues, e.g. one queue per 2-4 procs.. |
Currently OpenBSD instances are underutilized because of using only 2
syz-executor processes per VM. Change it to 6 to match the number of
procs on other syzbot instances.