[ovirt-devel] [VDSM] All tests using directio fail on CI

Nir Soffer nsoffer at redhat.com
Thu Sep 29 08:49:20 UTC 2016


On Thu, Sep 29, 2016 at 11:21 AM, Barak Korren <bkorren at redhat.com> wrote:
> On 29 September 2016 at 11:08, Yaniv Kaul <ykaul at redhat.com> wrote:
>> zram does not support direct IO (tested, indeed fails).
>> What I do is host the VMs there, though - this is working - but I'm using
>> Lago (and not oVirt). does oVirt need direct IO for the temp disks? I
>> thought we are doing them on the libvirt level?
>
> Its not oVirt that needs those, its some specific VDSM unit tests.

oVirt needs use directio when accessing shared storage.

In the tests we have small integration tests that create storage
domains and volume metadata using directio, or test code that
used to work with directio (e.g. vdsm.storage.directio.py).

Same for ovirt-imageio tests, most tests uses directio.

And there are also some ioprocess tests using directio.

We can use a loop device for these tests:

$ truncate -s 10G /tmp/backing-file

$ sudo losetup -f /tmp/backing-file --show
/dev/loop0

$ sudo time dd if=/dev/zero of=/dev/loop0 bs=1M count=1024 oflag=direct
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB, 1.0 GiB) copied, 0.408083 s, 2.6 GB/s
0.00user 0.10system 0:00.40elapsed 25%CPU (0avgtext+0avgdata 3128maxresident)k
0inputs+2097152outputs (0major+333minor)pagefaults 0swaps

Maybe we can mount a loop device at /var/tmp in the test environment?

Nir



More information about the Infra mailing list