Re: [yocto-autobuilder-helper][scarthgap][PATCH] config.json: Use buildtools on RHEL9 derivatives

"Yoann Congal" <[email protected]> Sun, 28 Jun 2026 22:36:50 +0200
Newsgroups org.yoctoproject.lists.yocto-patches
Message-ID <[email protected]>
On Sun Jun 28, 2026 at 10:08 AM CEST, Richard Purdie wrote:
> On Wed, 2026-06-24 at 16:24 +0200, Yoann Congal wrote:
>> From: Paul Barker <[email protected]>
>> 
>> tar 1.34 (and possibly earlier versions) is unable to extract tarballs
>> containing read-only files with xattrs. This was fixed upstream, but
>> it's unlikely at this point that the fix will be backported to RHEL9
>> related distros (CentOS Stream 9, AlmaLinux 9, Rocky Linux 9). The issue
>> affects these distros specifically because they have selinux enabled by
>> default and this uses xattrs.
>> 
>> The specific failure we've seen is with the /usr/lib/udev/hwdb.bin file
>> installed by the systemd recipe - this file is chmod 0444. This leads to
>> the following error, typically during do_image_wic (shortened and split
>> to make it readable):
>> 
>>     subprocess.CalledProcessError: Command
>>     'tar --xattrs --xattrs-include='*' -cf - -S -C .../tmp/work/qemux86_64-poky-linux/core-image-minimal/1.0/rootfs -p . |
>>     tar --xattrs --xattrs-include='*' -xf - -C .../tmp/work/qemux86_64-poky-linux/core-image-minimal/1.0/tmp-wic/rootfs2'
>>     returned non-zero exit status 2.
>> 
>> To work around this, we will need to use the buildtools tarball on
>> affected systems.
>> 
>> Fixes [YOCTO #16143].
>
> I'm a little worried we missed a side effect of this change.
>
> https://git.openembedded.org/openembedded-core/commit/?id=bb7c445004f0706a96192d97bba1c8776595814b
>
> means we do detect and warn users of the issue.
>
> Unfortunately, buildtools has a lot more in than just tar and we're
> effectively reducing the value of testing on those older systems by
> using a full buildtools to work around an issue in a single one of
> them.
>
> I'm wondering if we should create a simpler "tar" buildtools tarball,
> to ensure other issues don't creep in on RHEL9 derivatives?
>
> Sadly, we're stuck with RHEL9 for a while yet, we still can't drop
> RHEL8 :/
>
> There is precedent for a single tool buildtools before when we had make
> issues with ./meta/recipes-core/meta/buildtools-make-tarball.bb
> (these days I'd class extend it!).

In this case, I do not request the backport for tar but to upgrade python3
above the fix for https://github.com/python/cpython/issues/91351. See my
remark between the cherry-pick and my SoB line.
> [YC: Also, by upgrading python3, this patch fixes:
> | ERROR: Unable to parse /srv/pokybuild/yocto-worker/oe-selftest-fedora/build/meta/lib/oe/data.py
> | Traceback (most recent call last):
> |   File "/srv/pokybuild/yocto-worker/oe-selftest-fedora/build/meta/lib/oe/data.py", line 8, in <module>
> |     import oe.maketype
> |   File "<frozen importlib._bootstrap>", line 1004, in _find_and_load
> |   File "<frozen importlib._bootstrap>", line 158, in __enter__
> |   File "<frozen importlib._bootstrap>", line 110, in acquire
> | KeyError: 140127001167424
> From https://autobuilder.yoctoproject.org/valkyrie/?#/builders/40/builds/3981
> See upstream issue: https://github.com/python/cpython/issues/91351]

That said, your worry about reducing tests and the need for more
fine-grained buildtools still stands. In that case, what I needed was a
python3 buildtools.

I've created #16335 – Create more fine-grained buildtools
https://bugzilla.yoctoproject.org/show_bug.cgi?id=16335
... to track this.

>
> Cheers,
>
> Richard


-- 
Yoann Congal
Smile ECS