[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-block] [PATCH v2 7/7] iotests: new file to suppress Valgrind e
From: |
Andrey Shinkevich |
Subject: |
Re: [Qemu-block] [PATCH v2 7/7] iotests: new file to suppress Valgrind errors |
Date: |
Mon, 24 Jun 2019 16:55:39 +0000 |
On 17/06/2019 14:45, Kevin Wolf wrote:
> Am 11.06.2019 um 20:02 hat Andrey Shinkevich geschrieben:
>> The Valgrind tool reports about an uninitialised memory usage when the
>> initialization is actually not needed. For example, the buffer 'buf'
>> instantiated on a stack of the function guess_disk_lchs().
>
> I would be careful with calling initialisation "not needed". It means
> that the test case may not behave entirely determinstic because the
> uninitialised memory can vary between runs.\
I am going to amend the comment.
Andrey
>
> In this specific case, I assume that guess_disk_lchs() is called for a
> null block node, for which .bdrv_co_preadv by default returns without
> actually writing to the buffer. Instead of ignoring the valgrind error,
> we could instead pass read-zeroes=on to the null block driver to make
> the test deterministic.
The buffer that the Valgrind complains of is initialized by the
following function call blk_pread_unthrottled() that reads the first
BDRV_SECTOR_SIZE bytes form a disk "to guess the disk logical geometry".
The Valgrind does not recognize that way of initialization. I believe we
do not need to zero the buffer instantiated on the stack just to make
the Valgrind silent there.
Andrey
>
> (Unfortunately, while adding the read-zeroes option, we didn't add it to
> the QAPI schema, so it's not available yet in -blockdev. I'm going to
> send a fix for that, but most of the problematic test cases probably
> don't even use -blockdev.)
>
> Kevin
>
--
With the best regards,
Andrey Shinkevich
- Re: [Qemu-block] [PATCH v2 2/7] iotests: exclude killed processes from running under Valgrind, (continued)
[Qemu-block] [PATCH v2 5/7] iotests: extend sleeping time under Valgrind, Andrey Shinkevich, 2019/06/11
[Qemu-block] [PATCH v2 7/7] iotests: new file to suppress Valgrind errors, Andrey Shinkevich, 2019/06/11
Re: [Qemu-block] [PATCH v2 7/7] iotests: new file to suppress Valgrind errors, Kevin Wolf, 2019/06/17
[Qemu-block] [PATCH v2 3/7] iotests: Valgrind fails to work with nonexistent directory, Andrey Shinkevich, 2019/06/11
[Qemu-block] [PATCH v2 6/7] iotests: amend QEMU NBD process synchronization, Andrey Shinkevich, 2019/06/11
[Qemu-block] [PATCH v2 4/7] iotests: extended timeout under Valgrind, Andrey Shinkevich, 2019/06/11