On 03/16/2013 11:08 PM, Eric Blake wrote:
>> So, it appears the this version of gnulib fixes something
>> important but
>> also causes a segfault when ./configure is run with the new
>> gnulib.
>> What I do not know is if this segfault has any meaning.
> The segfault DOES have meaning - it means that glibc is broken, but
> that
> the brokenness of glibc will not impact the rest of libvirtd. Quit
> worrying about it.
>
Since libvirt uses gnulib for some/many/most/all of what it needs
from
libc and gnulib specifically has its own copy/version of regexec.c
which
has exactly the same patch as the one that goes against glibc, you
are
correct in saying that libvirt does not suffer from the problem.
Maybe
something should be done to have configure use gnulib instead of
glibc
for its tests.
You are misunderstanding HOW gnulib works. Gnulib works by injecting
tests into configure time, in order to determine whether to stick
with glibc or gnulib at compile time. You MUST test glibc, at least
once, in order to determine whether glibc is safe to use elsewhere.
Getting a SEGV during configure is SUPPOSED to happen, if glibc is
buggy, and that is gnulib that injected the code into configure that
is forcing the glibc coredump. As for your suggestion of using gnulib
at configure time, it IS gnulib that is doing the probe of glibc; we
can't link against gnulib until it is built, but we don't know what to
build until the gnulib configure-time tests have probed what works and
what needs working around.
There is nothing to fix in libvirt. Gnulib is working, as designed.
One other little thing ... libvirt has a test named "conftest" ...
very
confusing in this case. I just may submit a patch to rename that
particular test.
Yes, a patch to rename the libvirt test would be worthwhile.
--
Eric Blake eblake(a)redhat.com +1-919-301-3266
Libvirt virtualization library
http://libvirt.org