From 85b1f93f8dbbc767c564e494a6353aa3517d5d49 Mon Sep 17 00:00:00 2001 From: Dmitry Vyukov Date: Mon, 16 Oct 2017 12:18:50 +0200 Subject: executor, pkg/ipc: unify ipc protocol between linux and other OSes We currently use more complex and functional protocol on linux, and a simple ad-hoc protocol on other OSes. This leads to code duplication in both ipc and executor. Linux supports coverage, shared memory communication and fork server, which would also be useful for most other OSes. Unify communication protocol and parametrize it by (1) use of shmem or only pipes, (2) use of fork server. This reduces duplication in ipc and executor and will allow to support the useful features for other OSes easily. Finally, this fixes akaros support as it currently uses syz-stress running on host (linux) and executor running on akaros. --- docs/akaros.md | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) (limited to 'docs') diff --git a/docs/akaros.md b/docs/akaros.md index 1202d81eb..05ea6fdbc 100644 --- a/docs/akaros.md +++ b/docs/akaros.md @@ -2,9 +2,17 @@ [Akaros](http://akaros.cs.berkeley.edu/) support is *incomplete*. +See [Akaros getting started](https://github.com/brho/akaros/blob/master/GETTING_STARTED.md) +re kernel building/running. + Akaros does not support Go at the moment (except for a broken [1.3 port](https://github.com/akaros/go-akaros)). Full Go support is planned -for Akaros. Until that happens running on Akaros is challening. +for Akaros. Until that happens running on Akaros is challening. However, +`syz-stress` can be run as follows: -See [Akaros getting started](https://github.com/brho/akaros/blob/master/GETTING_STARTED.md) -re kernel building/running. +``` +make TARGETOS=linux syz-stress +make TARGETOS=akaros SOURCEDIR=/akaros/checkout executor +scp -P 5555 -i akaros_id_rsa -o IdentitiesOnly=yes bin/akaros_amd64/syz-executor root@localhost:/ +bin/linux_amd64/syz-stress -os=akaros -ipc=pipe -executor "/usr/bin/ssh -p 5555 -i akaros_id_rsa -o IdentitiesOnly=yes root@localhost /syz-executor" +``` -- cgit mrf-deployment