qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] fuzz: avoid building twice, when running on gitlab


From: Peter Maydell
Subject: Re: [PATCH] fuzz: avoid building twice, when running on gitlab
Date: Mon, 9 Aug 2021 20:36:59 +0100

On Mon, 9 Aug 2021 at 20:30, Alexander Bulekov <alxndr@bu.edu> wrote:
>
> On 210809 1506, Alexander Bulekov wrote:
> > On 210809 1925, Peter Maydell wrote:
> > > On Mon, 9 Aug 2021 at 12:18, Alexander Bulekov <alxndr@bu.edu> wrote:
> > > >
> > > > On oss-fuzz, we build twice, to put together a build that is portable to
> > > > the runner containers. On gitlab ci, this is wasteful and contributes to
> > > > timeouts on the build-oss-fuzz job. Avoid building twice on gitlab, at
> > > > the remote cost of potentially missing some cases that break oss-fuzz
> > > > builds.
> > > >
> > > > Signed-off-by: Alexander Bulekov <alxndr@bu.edu>
> > > > ---
> > > >
> > > > From a couple test runs it looks like this can shave off 15-20 minutes.
> > > >
> > > >  scripts/oss-fuzz/build.sh | 24 +++++++++++++-----------
> > > >  1 file changed, 13 insertions(+), 11 deletions(-)
> > >
> > > I tried a test run with this, but it still hit the 1 hour timeout:
> > >
> > > https://gitlab.com/qemu-project/qemu/-/pipelines/350387482
> >
> > It also timed out for me with a 120 minute timeout:
> > https://gitlab.com/a1xndr/qemu/-/jobs/1488160601
> >
> > The log has almost exactly the same number of lines as yours, so I'm
> > guessing one of the qtests is timing out with --enable-sanitizers .

>
> Building locally:
> $ CC=clang-11 CXX=clang++-11 ../configure --enable-fuzzing \
>     --enable-debug --enable-sanitizers
> $ make check-qtest-i386 check-unit
>
> Same as on gitlab, this times out shortly after outputting
> "sh: 1: exec: ./storage-daemon/qemu-storage-daemon: not found"
>
> Manually running qos-test, the same way check-qtest-i386 invokes it:
>
> $ QTEST_QEMU_BINARY=./qemu-system-i386 
> QTEST_QEMU_STORAGE_DAEMON_BINARY=./storage-daemon/qemu-storage-daemon 
> tests/qtest/qos-test --tap -k -m quick < /dev/null
>
> # starting vhost-user backend: exec ./storage-daemon/qemu-storage-daemon 
> --blockdev driver=file,node-name=disk0,filename=qtest.XRAzzu --export 
> type=vhost-user-blk,id=disk0,addr.type=unix,addr.path=/tmp/qtest-94561-sock.NdKWpt,node-name=disk0,writable=on,num-queues=1
> sh: 1: exec: ./storage-daemon/qemu-storage-daemon: not found
> # starting QEMU: exec ./qemu-system-i386 -qtest unix:/tmp/qtest-94561.sock 
> -qtest-log /dev/null -chardev socket,path=/tmp/qtest-94561.qmp,id=char0 -mon 
> chardev=char0,mode=control -display none -M pc  -device 
> vhost-user-blk-pci,id=drv0,chardev=char1,addr=4.0 -object 
> memory-backend-memfd,id=mem,size=256M,share=on  -M memory-backend=mem -m 256M 
> -chardev socket id=char1,path=/tmp/qtest-94561-sock.NdKWpt  -accel qtest
>
> *timeout*

vhost-user timing out in realize I suspect. I see that as
an intermittent hang in non-sanitizer configs.

vhost-user folk: Can we either look at fixing this or else disable
the test ? (Stack backtraces available in the other email thread.)

thanks
-- PMM



reply via email to

[Prev in Thread] Current Thread [Next in Thread]