Re: [poky] systemd-systemctl-native broken after update to walnascar #poky #yocto

Alexander Kanavin <[email protected]>
Newsgroups org.yoctoproject.lists.poky
Message-ID <CANNYZj83TB35LP=uTQCjW2GkicXzc-_450_eHay6GiL86HUnPg@mail.gmail.com>
On Fri, 4 Apr 2025 at 14:39, Jan Kircher via lists.yoctoproject.org
<[email protected]> wrote:
> when we upgrade poky to walnascar, our builds fail due to systemd-systemctl-native (please find the log attached).
>
> As a workaround we disabled Werror-nonnull with a simple .bbappend:
> BUILD_CFLAGS += "-Wno-error=nonnull"
>
> We managed to narrow down the issue to our use of DEBUG_BUILD=1 in local.conf. Images can be built again when we remove it. However, we struggle to solve this issue on our own. Is it possible for anyone to reproduce this issue? Adding DEBUG_BUILD=1 to local.conf should be enough, then bitbake systemd-systemctl-native should fail.

Works for me :-/ What host compiler and distro are you using?

$ gcc --version
gcc (Debian 12.2.0-14) 12.2.0
Copyright (C) 2022 Free Software Foundation, Inc.
$ cat /etc/os-release
PRETTY_NAME="Debian GNU/Linux 12 (bookworm)"

The actual issue is:

In file included from /usr/include/string.h:548,
                 from ../git/src/systemd/sd-id128.h:22,
                 from ../git/src/shared/creds-util.c:9:
In function ‘memcpy’,
    inlined from ‘encrypt_credential_and_warn’ at
../git/src/shared/creds-util.c:1090:17:
/usr/include/x86_64-linux-gnu/bits/string_fortified.h:29:10: error:
argument 2 null where non-null expected [-Werror=nonnull]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string_fortified.h:29:10: note: in
a call to built-in function ‘__builtin___memcpy_chk’
In function ‘memcpy’,
    inlined from ‘encrypt_credential_and_warn’ at
../git/src/shared/creds-util.c:1091:17:
/usr/include/x86_64-linux-gnu/bits/string_fortified.h:29:10: error:
argument 2 null where non-null expected [-Werror=nonnull]
   29 |   return __builtin___memcpy_chk (__dest, __src, __len,
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   30 |                                  __glibc_objsize0 (__dest));
      |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/x86_64-linux-gnu/bits/string_fortified.h:29:10: note: in
a call to built-in function ‘__builtin___memcpy_chk’

You can probably see how that argument ends up being null, and submit
a patch to systemd upstream?

Alex
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.