[systemd-devel] [ANNOUNCE] systemd 200

Zbigniew Jędrzejewski-Szmek zbyszek at in.waw.pl
Fri Apr 5 14:26:49 PDT 2013


On Fri, Apr 05, 2013 at 07:32:53PM +0200, Lennart Poettering wrote:
> On Sat, 30.03.13 18:41, Philip Müller (philm at manjaro.org) wrote:
> 
> > Same issue with make check as reported before:
> > 
> >
> >http://lists.freedesktop.org/archives/systemd-devel/2013-March/009971.html
> 
> Hmm, this looks really weird. I cannot reproduce this here, and valgrind
> shows nothing. I wonder if this has to do something 32bit vs. 64bit (I
> only have the latter here).
> 
> Can anyone reproduce the issue when running test-bus-marshal through
> valgrind on x86-32?
Hi,

I had a go at debugging this... I think that the is the "return of the
va_arg and undefined aps" horror. The result is that in test-bus-marshall.c:133
and test-bus-marshall.c:139 (at least), some of the output arguments are not
initialized at all and segfault happens. Under gdb I see that va_arg(ap, void*)
returns &y twice.

According to va_arg(3), "If ap is passed to a function that uses
va_arg(ap,type) then the value of ap is undefined after the return of
that function." So message_read_ap calling itself recursively is not an
option.

BTW, it should be relatively easy to reproduce under fedora amd64:
./configure PYTHON=: CFLAGS='-O0 -g -m32' --disable-introspection && make
Of course you need the .i686 variants of packages installed, which is a bit
of a pain. I had to install:

libcap-devel-2.22-3.fc18.i686
pam-devel-1.1.6-3.fc18.1.i686
libacl-2.2.51-7.fc18.i686
libacl-devel-2.2.51-7.fc18.i686
libattr-devel-2.4.46-7.fc18.i686
audit-libs-devel-2.2.2-3.fc18.i686
elfutils-libelf-0.155-1.fc18.i686
glib2-devel-2.34.2-2.fc18.i686
libgpg-error-devel-1.10-3.fc18.i686
libselinux-devel-2.1.12-7.3.fc18.i686
xz-devel-5.1.2-2alpha.fc18.i686
libgcrypt-devel-1.5.0-8.fc18.i686
dbus-devel-1.6.8-2.fc18.i686
kmod-libs-12-2.fc18.i686
kmod-devel-12-2.fc18.i686
libblkid-devel-2.22.2-6.fc18.i686
qrencode-libs-3.4.1-1.fc18.i686
qrencode-devel-3.4.1-1.fc18.i686
libmicrohttpd-0.9.22-1.fc18.i686
libmicrohttpd-devel-0.9.22-1.fc18.i686
fipscheck-lib-1.3.1-2.fc18.i686
libsepol-2.1.8-2.fc18.i686
device-mapper-libs-1.02.77-4.fc18.i686
cryptsetup-libs-1.6.0-1.fc18.i686
cryptsetup-devel-1.6.0-1.fc18.i686
valgrind-3.8.1-9.fc18.i686

Zbyszek


More information about the systemd-devel mailing list