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

Re: [libvirt] [PATCH] qemuxml2argvtest: uncoditionally mock NUMA routines



  Ján Tomko wrote:

> On Thu, May 12, 2016 at 10:47:04AM +0300, Roman Bogorodskiy wrote:
> > Currently, qemuxml2argvmock.c only mocks virNumaNodeIsAvailable(), and
> > only if libvirt was built with NUMA support. This causes some test
> > failures where NUMA is involved.
> > 
> 
> This is misleading, you are probably compiling with clang, which
> inlines virNumaGetMaxNode, so the mocked version of it is never called.
> 
> With no NUMA support, even libvirtd uses the implementation of
> virNumaNodeIsAvailable based on virNumaGetMaxNode.
> And the mocked virNumaNodesetIsAvailable is functionally identical to
> the implementation in virnuma.c.
> 
> There were two attempts to get around it:
> __attribute__((__noinline__))
> https://www.redhat.com/archives/libvir-list/2015-March/msg00203.html
> and mocking virNumaNodesetIsAvailable by its identical copy:
> https://www.redhat.com/archives/libvir-list/2016-March/msg00515.html
> (mocking virNumaNodeIsAvailable should not be needed).
> 
> All they need is a decision.

It's strange, but neither of these two patches fixes the issue for me.
That's with 3.8.0. It starts working only when I pull in both
virNumaNodeIsAvailable() and virNumaNodesetIsAvailable() into
qemuxml2argvmock.c without the #if WITH_NUMACTL conditional.

Roman Bogorodskiy

Attachment: signature.asc
Description: PGP signature


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