qemu-devel
[Top][All Lists]
Advanced

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

Re: QEMU policy for real file tests


From: Daniel P . Berrangé
Subject: Re: QEMU policy for real file tests
Date: Thu, 17 Sep 2020 13:24:45 +0100
User-agent: Mutt/1.14.6 (2020-07-11)

On Thu, Sep 17, 2020 at 02:06:33PM +0200, Christian Schoenebeck wrote:
> On Donnerstag, 17. September 2020 11:55:00 CEST Thomas Huth wrote:
> > On 17/09/2020 11.37, Daniel P. Berrangé wrote:
> > > On Thu, Sep 17, 2020 at 10:26:36AM +0100, Alex Bennée wrote:
> > >> Christian Schoenebeck <qemu_oss@crudebyte.com> writes:
> > >>> Hi,
> > >>> 
> > >>> is there a QEMU policy for test cases that create/write/read/delete real
> > >>> files and directories? E.g. should they be situated at a certain
> > >>> location and is any measure of sandboxing required?
> > >> 
> > >> I don't think we have a hard and fast policy. It also depends on what
> > >> you are doing the test in - but ideally you should use a secure mktempd
> > >> (that can't clash) and clean-up after you are finished. This is a bit
> > >> easier in python than shell I think.
> > > 
> > > mktempd will end up on /tmp usually which can be tmpfs and size limited,
> > > so be mindful of the size of files you create. Don't assume you can
> > > create multi-GB sized files !  Creating a temp dir underneath the build
> > > dir (effectively CWD of the test) is a reasonable alternative.
> > 
> > Another thing to consider: If you want to create Unix sockets in your
> > tests, make sure that the file name does not get too long, since there
> > are limits on certain systems - i.e. socket files should be created in a
> > /tmp subdirectory, indeed.
> > 
> >  Thomas
> 
> These answers already cover everything I need right now. Thanks!
> 
> Final question: if at some later point one large file needs to be created for 
> some test case, is there some approximate size limit to stay below for not 
> causing issues with free CI cloud services?

A GIT source tree checkout of QEMU is approx 1 GB in size right now.
A build with just one target enable takes another 1 GB.
So if creating files in the source tree, or a build tree then, I'd
suggest a rule of thumb is to stay below that level as a rough
order of magnitude.

If creating in /tmp then stay below 100 MB, as it can be surprisingly
space constrained in some cases.


Regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|




reply via email to

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