Running tests without valgrind (was: DTC v1.4.7 released)

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



On 2018-09-10, David Gibson wrote:
> On Thu, Sep 06, 2018 at 03:34:35PM +1000, David Gibson wrote:
>> On Tue, Aug 21, 2018 at 11:02:37AM +0200, Hector Oron wrote:
>> > 2018-08-16 22:30 GMT+02:00 Rob Herring <robh@xxxxxxxxxx>:
>> > > On Thu, Aug 16, 2018 at 1:43 PM Vagrant Cascadian <vagrant@xxxxxxxxxx> wrote:
>> > >> On Jul 2018-07-23:
>> > >> > Hi everyone, I've just tagged and released v1.4.7 of the device tree
>> > >> > compiler.
...
>> > When attempting to run tests on platforms that have no valgrind
>> > available, few test cases are unable to run.
>> > Valgrind has become a dependency of `make check` instead the old `make
>> > checkm`. The offensive commits are:
>> > 
>> >    4b8fcc3 libfdt: Add fdt_check_full() function
>> >    c14223f tests: Use valgrind client requests for better checking
>> >    5b67d2b tests: Better handling of valgrind errors saving blobs
>> >    85bce8b tests: Correction to vg_prepare_blob()
>> > 
>> > Could you consider reverting those or move the affected testcases to
>> > `make checkm` realm, that way devicetree-compiler testsuite would
>> > still be functional on platforms (i.e. ARMv5tel) that have no valgrind
>> > support.
>> 
>> Sorry I've taken so long to reply.
>> 
>> It's not really an issue of removing specific testcases.  make checkm
>> doesn't run different tests - it runs the same tests, all running
>> under valgrind.  We needed the valgrind interface things to prevent
>> some incorrect errors, and catch some other errors which otherwise we
>> wouldn't pick up.
>> 
>> In theory, fixing the problem for systems without valgrind is easy: we
>> can just define the valgrind calls to be no-ops in that case.
>> 
>> The difficulty is that we need to compile the code differently for
>> that case, which means more conditional compilation than we currently
>> have, and is kind of awkward in the Makefiles.
>> 
>> I'm sure it's possible to sort it out, I've just been pretty busy with
>> my day job, so I haven't had a chance to look at it properly.
>
> Ok, I think I've fixed this now in master, and I've set up the Travis
> build to check building without valgrind to stop it breaking again in
> future.

Thanks!

Updated the Debian package with the patch:

  b94c056b137e59deefc62fbfe0cd3a23edfcc07c Make valgrind optional

With that it builds on architectures with valgrind and without valgrind
for all of Debian's release architectures:

  https://buildd.debian.org/device-tree-compiler

A few unrelated build failures remain for some of the more obscure
architectures, if you're curious.


live well,
  vagrant

Attachment: signature.asc
Description: PGP signature


[Index of Archives]     [Device Tree]     [Device Tree Spec]     [Linux Driver Backports]     [Video for Linux]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]

  Powered by Linux