Commit Graph

77197 Commits

Author SHA1 Message Date
Bruce Ashfield
b8e369ef61 linux-yocto/6.12: update to v6.12.12
Updating linux-yocto/6.12 to the latest korg -stable release that comprises
the following commits:

    d914acc16b59 Linux 6.12.12
    01a7e3a43ee2 drm/v3d: Assign job pointer to NULL before signaling the fence
    efd96fbe23fa io_uring/rsrc: require cloned buffers to share accounting contexts
    5d114fa2b650 Input: xpad - add support for wooting two he (arm)
    41359d0d2e1b Input: xpad - add support for Nacon Evol-X Xbox One Controller
    ccc95d7e2765 Input: xpad - improve name of 8BitDo controller 2dc8:3106
    27ae0bdcb073 Input: xpad - add QH Electronics VID/PID
    a183a11cd688 Input: xpad - add unofficial Xbox 360 wireless receiver clone
    fae6f9589de3 Input: atkbd - map F23 key to support default copilot shortcut
    5c92458f72e3 Input: xpad - add support for Nacon Pro Compact
    5f5e6cbc4f5e HID: wacom: Initialize brightness of LED trigger
    5e1bde45daba wifi: rtl8xxxu: add more missing rtl8192cu USB IDs
    fad7b5641068 ALSA: usb-audio: Add delay quirk for USB Audio Device
    bb50dc2aa49d Revert "usb: gadget: u_serial: Disable ep before setting port to null to fix the crash caused by port being null"
    f371471708c7 USB: serial: quatech2: fix null-ptr-deref in qt2_process_read_urb()
    01d1ebdab9cc scsi: storvsc: Ratelimit warning logs to prevent VM denial of service
    a20fcaa230f7 vfio/platform: check the bounds of read/write syscalls
    780ab8329672 cachestat: fix page cache statistics permission checking
    276df5deb88c Revert "HID: multitouch: Add support for lenovo Y9000P Touchpad"
    997f6ec4208b net: sched: fix ets qdisc OOB Indexing
    efe8db3ecaa4 smb: client: handle lack of EA support in smb2_query_path_info()
    639b40424d17 libfs: Use d_children list to iterate simple_offset directories
    e73e46c96b9b libfs: Replace simple_offset end-of-directory detection
    9e9e710f68ba Revert "libfs: fix infinite directory reads for offset dir"
    bfb98a55cf5e Revert "libfs: Add simple_offset_empty()"
    1c3cf02db810 libfs: Return ENOSPC when the directory offset range is exhausted
    4516febe3253 gfs2: Truncate address space when flipping GFS2_DIF_JDATA flag
    556ee8e94410 mm: zswap: move allocations during CPU init outside the lock
    8d29ff5d5030 mm: zswap: properly synchronize freeing resources during CPU hotunplug
    f5712784c988 ASoC: samsung: Add missing depends on I2C
    d15dfc4e57cf hwmon: (drivetemp) Set scsi command timeout to 10s
    418bd70d1aca irqchip/sunxi-nmi: Add missing SKIP_WAKE flag
    0485a718f3df drm/connector: hdmi: Validate supported_formats matches ycbcr_420_allowed
    d756b869bf47 ALSA: hda/realtek: Fix volume adjustment issue on Lenovo ThinkBook 16P Gen5
    52502780b235 of/unittest: Add test that of_address_to_resource() fails on non-translatable address
    c9d6afb4f9c3 drm/amd/display: Initialize denominator defaults to 1
    4b46fc30b37e drm/amd/display: Use HW lock mgr for PSR1
    a743dc255b9f scsi: iscsi: Fix redundant response for ISCSI_UEVENT_GET_HOST_STATS request
    91e698058e91 ASoC: cs42l43: Add codec force suspend/resume ops
    81aa72e17cca seccomp: Stub for !CONFIG_SECCOMP
    678c6e80babb ASoC: samsung: Add missing selects for MFD_WM8994
    5da8a2c5f369 ASoC: codecs: es8316: Fix HW rate calculation for 48Mhz MCLK
    153ac259c27f ASoC: wm8994: Add depends on MFD core
    807165b1ec1c tools/power/x86/intel-speed-select: Prefix header search path with sysroot
    e97df805b938 drm/tilcdc: Set preferred depth
    7160a4379dcc arch/arm64/configs: remove CONFIG_SM_DISPCC_8650
    6d8ac5ebe6e8 aufs6: core
    587abc1b64c4 aufs6: standalone
    1af41d30ef42 aufs6: mmap
    6ee2464d2e9d aufs6: base
    103b676505f7 aufs6: kbuild
    67281562943f qemux86: add configuration symbol to select values
    73f315ca0823 sched/isolation: really align nohz_full with rcu_nocbs
    1e4e7f8ab622 clear_warn_once: add a clear_warn_once= boot parameter
    918e7a825e8b clear_warn_once: bind a timer to written reset value
    f533f87c3758 clear_warn_once: expand debugfs to include read support
    f149ca27cba9 tools: Remove some options from CLANG_CROSS_FLAGS
    e633abe9c44e libbpf: Fix build warning on ref_ctr_off
    ec0916a4cfc1 perf: perf can not parser the backtrace of app in the 32bit system and 64bit kernel.
    03721ceb5626 perf: x86-32: explicitly include <errno.h>
    4c36c5295bb0 perf: mips64: Convert __u64 to unsigned long long
    b0200449610d perf: fix bench numa compilation
    aff0940b2212 perf: add SLANG_INC for slang.h
    ef912018d28c perf: add sgidefs.h to for mips builds
    d8860f858b87 perf: change --root to --prefix for python install
    dc38a0eee6e5 perf: add 'libperl not found' warning
    6ed51f8786da perf: force include of <stdbool.h>
    c538d4c4ac65 fat: Replace prandom_u32() with get_random_u32()
    63d94846f0c5 fat: don't use obsolete random32 call in namei_vfat
    7816667451ef FAT: Added FAT_NO_83NAME
    f81dbd60f0d5 FAT: Add CONFIG_VFAT_NO_CREATE_WITH_LONGNAMES option
    771cdefba44b FAT: Add CONFIG_VFAT_FS_NO_DUALNAMES option
    a24784fd8f88 yaffs2: update to v6.12 folio changes
    d0a48fd46db8 yaffs2: adapt to v6.10 i_time changes
    d097e4d4115a yaffs: fix mtime/itime field access
    4411e0d49fe3 yaffs2: update VFS ctime operations to 6.6+
    1b6619086e8b yaffs2: v6.5 fixups
    25b261ee3c54 yaffs2: Fix miscalculation of devname buffer length
    5c07936a5d1c yaffs2: convert user_namespace to mnt_idmap
    55986a1284b3 yaffs2: replace bdevname call with sprintf
    6f5508f8db8f yaffs2: convert read_page -> readfolio
    fd179a5df5d5 yaffs: replace IS_ERR with IS_ERR_OR_NULL to check both ERR and NULL
    c9a620dacdd1 yaffs: fix -Wstringop-overread compile warning in yaffs_fix_null_name
    78588208ed17 yaffs2: v5.12+ build fixups (not runtime tested)
    8d2dddba272c yaffs: include blkdev.h
    8c1ca9ef9712 yaffs: Fix build failure by handling inode i_version with proper atomic API
    27005cbac2ed yaffs2: v5.6 build fixups
    668211c9f9b7 yaffs2: fix memory leak when /proc/yaffs is read
    285f911dcc1c yaffs: add strict check when call yaffs_internal_read_super
    ffc2ed489ccf yaffs: repair yaffs_get_mtd_device
    6dce4b70a5e3 yaffs: Fix build failure by handling inode i_version with proper atomic API
    19f283abc5d1 yaffs2: fix memory leak in mount/umount
    04e84672b571 yaffs: Avoid setting any ACL releated xattr
    4f221d6a32e2 Yaffs:check oob size before auto selecting Yaffs1
    81f36004e56b fs: yaffs2: replace CURRENT_TIME by other appropriate apis
    26d7a3dd0054 yaffs2: adjust to proper location of MS_RDONLY
    a7016eac4540 yaffs2: import git revision b4ce1bb (jan, 2020)
    feb240bbb91e initramfs: allow an optional wrapper script around initramfs generation
    874746eaa341 drivers: gpu: drm: msm: registers: improve reproducibility
    1d42508faee8 tools: use basename to identify file in gen-mach-types
    4b055eca593d iwlwifi: select MAC80211_LEDS conditionally
    97e20e275ac0 net/dccp: make it depend on CONFIG_BROKEN (CVE-2020-16119)
    6dec58319165 defconfigs: drop obselete options
    a416ccb5b6c9 linux-yocto: Handle /bin/awk issues
    7efe8a1e5158 uvesafb: provide option to specify timeout for task completion
    78d10ae07eca uvesafb: print error message when task timeout occurs
    80473b7eb8ca compiler.h: Undef before redefining __attribute_const__
    ddeff2f1a9a7 vmware: include jiffies.h
    3dcdda8912b4 Resolve jiffies wrapping about arp
    3b1507db6735 nfs: Allow default io size to be configured.
    c2fedad05f77 check console device file on fs when booting
    208d6fbada3f mount_root: clarify error messages for when no rootfs found
    dbe9454c8ea0 mconf: fix output of cflags and libraries
    7c7b224f5cce menuconfig,mconf-cfg: Allow specification of ncurses location
    b6c189c81397 modpost: mask trivial warnings
    a5cc21325ba9 kbuild: exclude meta directory from distclean processing
    361ec143c23f powerpc: serialize image targets
    605e6ccb304c arm: serialize build targets
    e94b04fcb7d2 mtd_blkdevs: add mtd_table_mutex lock back to blktrans_{open, release} to avoid race condition
    44cc7f69a0a0 cpu/amd: inhibit SMP check for qemux86
    a08cb65331e6 x86_64_defconfig: Fix warnings
    8ad332ef777b mips: make current_cpu_data preempt safe
    754f05ddce3f mips: vdso: fix 'jalr $t9' crash in vdso code
    325ff78ff44d mips: Kconfig: add QEMUMIPS64 option
    99ae0eadcf11 4kc cache tlb hazard: tlbp cache coherency
    c6894c66a534 malta uhci quirks: make allowance for slow 4k(e)c
    8b52c01f3294 arm64: defconfig: remove CONFIG_IPQ_APSS_5018
    16c7629f035e drm/fb-helper: move zeroing code to drm_fb_helper_fill_var
    6b60c874cbb0 arm64: defconfig: cleanup config options
    8e44673ecd89 vexpress: Pass LOADADDR to Makefile
    f34e6805aad5 arm: ARM EABI socketcall
    94dec9b88de4 ARM: LPAE: Invalidate the TLB for module addresses during translation fault

(From OE-Core rev: 769f450ad451f101ec571014cd123b01c9fd53ad)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-11 11:44:19 +00:00
Bruce Ashfield
c8983084b3 kernel: remove unused 6.10 CVE exclusion file
When 6.10 was removed, this file was missed.

(From OE-Core rev: 4b7f4f4423d060feb713825830caaf4cb55ba6a3)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-11 11:44:19 +00:00
Bruce Ashfield
5346f1fecb kernel: drop 6.6 reference kernels
Dropping the 6.6 reference kernel as the upcoming LTS will use
6.12 as the main reference with 6.13+ as the -dev kernel.

6.6 will not be supported upstream for the duration of the
LTS release, so droping it now to avoid uncessary mid-release
churn.

(From OE-Core rev: 6c445a6995f810e48a25cc0c13f37271836cba00)

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-11 11:44:19 +00:00
Peter Marko
7013a9ed06 python3: upgrade 3.13.1 -> 3.13.2
Release notes:
https://docs.python.org/release/3.13.2/whatsnew/changelog.html#python-3-13-2

Solves CVE-2025-0938, CVE-2024-12254 and 3 other vulnerabilities without
CVE number assigment.

Remove patch which is included in new release.

(From OE-Core rev: 4b91478d47db319af847a45b7d57bb7223da55f8)

Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-11 11:44:19 +00:00
Khem Raj
0bf496f24b python3-cffi: Fix failing ptests with clang
Clang finds additional warnings with cffi generated code

_CFFI_test_verify_anonymous_struct_with_star_typedef.cpp:587:10: error: non-constant-expression cannot be narrowed from type 'long' to 'size_t' (ak│a 'unsigned long') in initializer list [-Wc++11-narrowing]

(From OE-Core rev: 470edc62b1821bcbb679bd3822acd98e9996c9e7)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-11 11:44:19 +00:00
Quentin Schulz
31a537d124 b4-wrapper-poky.py: send changes to .b4-config to the poky mailing list
Both OE-Core and poky git repos have a .b4-config, both at the same
location and both different.

Therefore, changes made to .b4-config for OE-Core need to be sent to the
OE-Core mailing list and changes made to .b4-config for poky sent to the
poky mailing list.

Changes made to OE-Core's .b4-config can only be made from a vanilla
OE-Core git repo, not from poky git repo. With the current content of
OE-Core's .b4-config, b4-wrapper-poky.py script is NOT called to figure
out where to send patches, b4 gets it from the hardcoded value in
send-series-to.

Thus, we can say that if b4-wrapper-poky.py detects changes for
.b4-config, those changes are for poky since this script wouldn't be run
by b4 outside of poky git repo.

(From OE-Core rev: 1006712027812326fdeade2ab539b42bdf5b10e6)

Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-10 13:03:58 +00:00
Yi Zhao
a886f0a8cd liburcu: add missing header file in uatomic/generic.h
We encountered the following error when building multipath-tools on
qemuppc64 platform:

| In file included from /build/tmp/work/ppc64p9le-wrs-linux/multipath-tools/0.10.0/recipe-sysroot/usr/include/urcu/uatomic/ppc.h:228,
|                  from /build/tmp/work/ppc64p9le-wrs-linux/multipath-tools/0.10.0/recipe-sysroot/usr/include/urcu/uatomic.h:73,
|                  from lock.h:5,
|                  from lock.c:1:
| /build/tmp/work/ppc64p9le-wrs-linux/multipath-tools/0.10.0/recipe-sysroot/usr/include/urcu/uatomic/generic.h: In function '_uatomic_and':
| /build/tmp/work/ppc64p9le-wrs-linux/multipath-tools/0.10.0/recipe-sysroot/usr/include/urcu/uatomic/generic.h:422:24: error: implicit declaration of function 'abort' [-Wimplicit-function-declaration]
|   422 |                 oldt = uatomic_read((uint32_t *) addr);
|       |                        ^~~~~~~~~~~~
| /build/tmp/work/ppc64p9le-wrs-linux/multipath-tools/0.10.0/recipe-sysroot/usr/include/urcu/uatomic/generic.h:1:1: note: include '<stdlib.h>' or provide a declaration of 'abort'
|   +++ |+#include <stdlib.h>
|     1 | // SPDX-FileCopyrightText: 1991-1994 by Xerox Corporation.  All rights reserved.
| make[1]: *** [../Makefile.inc:155: lock.o] Error 1
| make[1]: Leaving directory '/build/tmp/work/ppc64p9le-wrs-linux/multipath-tools/0.10.0/git/libmultipath'

Add stdlib.h header file for abort() in uatomic/generic.h.

(From OE-Core rev: 6dd6da04485152971346ee3fc09402c72aacbf22)

Signed-off-by: Yi Zhao <yi.zhao@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-10 13:03:58 +00:00
Trevor Gamblin
fe5eb41c4c python3-typogrify: upgrade 2.0.7 -> 2.1.0
License-Update: Update copyright year, attribution bounds

The project has changed to using a pyproject.toml with hatchling as the
build backend, so change the recipe to match.

Changelog (https://github.com/justinmayer/typogrify/releases/tag/2.1.0):

- Add ability to select which filters are applied (#1 by davidlesieur & barrysteyn)
- jinja_filters: Update import for Jinja 3.1 (by jyelloz)
- Ensure all available tests are run (by mcepl)
- Package via pyproject instead of Setuptools (by justinmayer)
- Improve testing, linting, and CI tooling
- Drop support for Python < 3.9

(From OE-Core rev: 037f04b08c76caee6bda176e18c1e0b824f3bcf6)

Signed-off-by: Trevor Gamblin <tgamblin@baylibre.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-10 13:03:58 +00:00
Peter Marko
f7174e591f curl: upgrade 8.11.1 -> 8.12.0
Solves CVE-2025-0167, CVE-2025-0665 and CVE-2025-0725.

Initialize WATT_ROOT variable to avoid looking in host dirs
when autotools are checking available features.

License-Update: copyright year refreshed

(From OE-Core rev: dd642c786e9c9eee06a90562e69e70cb37e704df)

Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-10 13:03:58 +00:00
Igor Opaniuk
10870db533 wic: bootimg-efi: Support + symbol in filenames
Allow the '+' symbol as a valid character in filenames listed in the
IMAGE_EFI_BOOT_FILES variable.

The '+' symbol might be used to support boot counting for boot entries,
as described in the UAPI Boot Loader Specification [1]:

The boot counting data is stored in the name of the boot loader entry.
A boot loader entry file name may contain a plus (+) followed by a
number. This may optionally be followed by a minus (-)
followed by a second number. The dot (.) and file name suffix
(conf or efi) must immediately follow.
Boot counting is enabled for entries which match this pattern.

Example:
IMAGE_EFI_BOOT_FILES:append = " entry.conf;loader/entries/entry+3.conf"

[1] https://uapi-group.org/specifications/specs/boot_loader_specification/#boot-counting
(From OE-Core rev: 3f25822281eb9423ff86105eaebb0bed48663648)

Signed-off-by: Igor Opaniuk <igor.opaniuk@foundries.io>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-10 13:03:58 +00:00
Peter Marko
2f816f756b cmake: apply parallel build settings to ptest tasks
ptest compile and install tasks do not have parallel build settings for
cmake. On powerful build machines this can cause overload situations
and oomkills.
Observed when building qtgrpc with ptest generally enabled in distro.

Having this in ptest class is suboptimal, but creating ptest-cmake class
just for these two variables is probably overkill.

(From OE-Core rev: 3c311fbf0c2090268e9b83123d762b05b61b4074)

Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-10 13:03:58 +00:00
Khem Raj
73b287b434 mpfr: Fix build with glibc 2.41
(From OE-Core rev: 7c4aa234e9c159f381ccccae0ea906f38790afba)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-10 13:03:58 +00:00
Ross Burton
78d0ba12ef dbus: explictly set the path to systemctl
The dbus.socket user unit file calls systemctl, and the meson.build uses
find_program() to find the path, falling back to a hardcoded value if it
cannot be found.

On the initial build the sysroot doesn't contain systemctl (as it is not
in the target systemd sysroot), however after the do_package_write_*
tasks have completed there is a systemd-systemctl-native recipe in the
sysroot which will be found and result in host paths being in the target
packages, specifically in /usr/lib/systemd/user/dbus.socket:

  ExecStartPost=-/work/ross/build/tmp/work/core2-64-poky-linux/dbus/1.16.0/recipe-sysroot-native/usr/bin/systemctl

This can be replicated by forcing a rebuild after a forced packaging:

$ bitbake dbus -C do_package_write_ipk
$ bitbake dbus -C configure
ERROR: dbus-1.16.0-r0 do_package_qa: QA Issue: File
/usr/lib/systemd/user/dbus.socket in package dbus-common contains
reference to TMPDIR [buildpaths]

We could do the unit mask manually instead of using systemctl (as it's
just a symlink) but the hardcoded path is still wrong, so write a small
Meson cross file to specify where the binary is.

(From OE-Core rev: 2ebfe3d8df809f6cf057ac7b56cdbc265f05b37a)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-10 13:03:58 +00:00
Koen Kooi
f555c53c1e uki.bbclass: remove duplicate d.getVar('DEPLOY_DIR_IMAGE')
This class calls d.getVar('DEPLOY_DIR_IMAGE') twice within the same
method, but DEPLOY_DIR_IMAGE variable won't change during the run of
this class, so only retrieve it once.

(From OE-Core rev: 6866da9f3a273ed7217e9edfca299fc2e68b2f75)

Signed-off-by: Koen Kooi <koen.kooi@oss.qualcomm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-10 13:03:58 +00:00
Mikko Rapeli
3582905ff9 systemd-boot-native: fix kernel signature for secureboot
systemd update from 256 to 257 broke kernel secureboot signatures
inside signed UKI files with u-boot based UEFI firmware, e.g.
meta-arm and qemuarm64-secureboot machine config and secureboot:

$ cd meta-arm
$ kas build ci/poky.yml:ci/qemuarm64-secureboot.yml:ci/uefi-secureboot.yml:ci/testimage.yml

systemd-boot itself is secureboot signed and verified by firmware.
Same for the UKI file which combines kernel, initramfs etc.
Then kernel from UKI is additionally executed using UEFI firmware calls
which check signatures so the kernel binary inside signed UKI
needs to be signed with same keys too. PE file padding added
to systemd ukify in 257 release broke kernel signature validation
for u-boot and sbsign/sbverify tools. EDK2 based firmware like
OVMF may not be affected because systemd-boot is able to disable
signature checking after a signed UKI has been loaded. This feature
is not supported by u-boot.

Upstream systemd bug report:

https://github.com/systemd/systemd/issues/35851

Backport of:

38801c9129

Cc: Jon Mason <jdmason@kudzu.us>
Cc: meta-arm@lists.yoctoproject.org
(From OE-Core rev: 979d8b16a5238ea368b2ee39d436b6e13d94b076)

Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-10 13:03:58 +00:00
Mikko Rapeli
a47637f7c0 uki.bbclass: capture ukify command stdout and stderr
ukify tool can show important warnings and even errors
if it fails so capture the logs.

(From OE-Core rev: 6ac326a4f9d19fa154c9ce172a264f55ebe5b1ef)

Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-10 13:03:58 +00:00
Mikko Rapeli
29bccf5ae1 systemd-boot-native: move do_install() to after do_patch()
The tasks were deleted and do_patch() was run after do_install()
which means that patches applied in SRC_URI were not in the
ukify.py binary installed. Moving do_install() to after do_patch()
fixes this.

(From OE-Core rev: 0218a7a7dbf12ef817608881a3a17d9670c0778a)

Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-10 13:03:58 +00:00
Tom Hochstein
371ecef318 uboot-config: Fix devtool modify
Fix a problem with `devtool modify` as suggested by Marcus Flyckt on
the mailing list:
```
    I encountered an issue with `do_config` when using `devtool modify`
    on `u-boot-imx`.

    ```
    [...]
    | cp: cannot stat '[...]/u-boot-imx/2024.04/build/imx8mp_wl400s_defconfig/.config': No such file or directory
    | WARNING: exit code 1 from a shell command.
    ERROR: Task ([...]/sources/poky/../meta-freescale/recipes-bsp/u-boot/u-boot-imx_2024.04.bb:do_configure) failed with exit code '1'
    NOTE: Tasks Summary: Attempted 963 tasks of which 962 didn't need to be rerun and 1 failed.
    Summary: 1 task failed:
      [...]/sources/poky/../meta-freescale/recipes-bsp/u-boot/u-boot-imx_2024.04.bb:do_configure
    Summary: There was 1 ERROR message, returning a non-zero exit code
    ```

    The issue seems to originate from the following lines in
    `workspace/appends/u-boot-imx_2024.04.bbappend`:

    ```
    do_configure:append() {
        if [ ${@oe.types.boolean(d.getVar("KCONFIG_CONFIG_ENABLE_MENUCONFIG"))} = True ]; then
            cp ${KCONFIG_CONFIG_ROOTDIR}/.config ${S}/.config.baseline
            ln -sfT ${KCONFIG_CONFIG_ROOTDIR}/.config ${S}/.config.new
        fi
    }
    ```

    For some reason `KCONFIG_CONFIG_ROOTDIR` does not point to the
    correct directory. It gets its value in `uboot-config.bbclass`:

    ```
    if len(ubootconfig) == 1:
                    d.setVar('KCONFIG_CONFIG_ROOTDIR', os.path.join(d.getVar("B"), d.getVar("UBOOT_MACHINE").strip()))
    ```

    So the main issue is that B gets expanded in this expression, and
    then later B gets changed by `externalsrc.bbclass`.
    `d.getVar("B", False)` does not solve the issue, however the
    proposed change does.
```
- https://lists.yoctoproject.org/g/yocto/topic/109254298#msg64152]

Fixes [YOCTO #15603]

Suggested-by: Marcus Flyckt <marcus.flyckt@gmail.com>
(From OE-Core rev: 57b21065a25100c31515b32fd7c77bde3355d684)

Signed-off-by: Tom Hochstein <tom.hochstein@oss.nxp.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-10 13:03:58 +00:00
Weisser, Pascal.ext
5a2a263929 documentation.conf: Add description for IMAGE_ROOTFS_MAXSIZE variable
(From OE-Core rev: 8c4281b66ad87f8f951314252eb6ab8fc711212b)

Signed-off-by: Weisser, Pascal <pascal.weisser.ext@karlstorz.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-10 13:03:57 +00:00
Peter Marko
39cbbd1a87 classes: switch p7zip to 7zip
meta-oe has switched from p7zip to 7zip.
p7zip recipe does not exist anymore and p7zip is provided and rprovided
by 7zip recipe.
Use real provider instead of replaced one.

(From OE-Core rev: 5aa516bfa295d5be919459dfe45f452cdec45e81)

Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-10 13:03:57 +00:00
Daniel McGregor
f82bac5b5a rpm: add PACKAGECONFIG dependencies
The cap and acl configs were missing dependency specifications. They
could get satisfied transitively if archive was also used, but alone
get missed.

(From OE-Core rev: 7e89209fd52b1b1652c65013eb3bcc40cb24cda5)

Signed-off-by: Daniel McGregor <daniel.mcgregor@vecima.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-10 13:03:57 +00:00
Ross Burton
c4a4cc8b6a libslirp: set the PV in the filename
As this recipe builds the tagged releases we can put the PV in the
filename.

(From OE-Core rev: 2c7c9eb6ff996639a632059102de4d1168958eb6)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-10 13:03:57 +00:00
Ross Burton
fca4f4f712 openssl: fix register trampling on aarch64
Backport a patch from upstream to fix register tramping on aarch64.

(From OE-Core rev: 9005321e37030d916f4f26e7201e2f86c85ebdbd)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-10 13:03:57 +00:00
Ross Burton
a9f345c9ae nfs-utils: remove python hashbang rewrites
These were replaced with python3 in 2.5.2 (commit d1683f).

(From OE-Core rev: 85ae456a12bccabc62cb0906b92d6705f88c932f)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-10 13:03:57 +00:00
Richard Purdie
89ce67d8e4 recipes: Drop ld-is-gold support
Gold hasn't seen development in some time and is being dropped from binutils
releases. Drop the small number of special cases for it we were carrying.

This patch also turns off gold in the binutils recipe.

(From OE-Core rev: a4addb9ab63011e7c604fc5daff95559e7d214e7)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-10 13:03:57 +00:00
Peter Marko
6d0cf6477c go: upgrade 1.22.11 -> 1.22.12
Upgrade to latest 1.22.x release [1]:

$ git --no-pager log --oneline go1.22.11..go1.22.12
5817e65094 (tag: go1.22.12) [release-branch.go1.22] go1.22.12
0cc45e7ca6 [release-branch.go1.22] crypto/internal/fips140/nistec: make p256NegCond constant time on ppc64le
c3c6a50095 [release-branch.go1.22] cmd/go/internal/modfetch: do not trust server to send all tags in shallow fetch
e0a01acd04 [release-branch.go1.22] cmd/compile: fix write barrier coalescing

Fixes CVE-2025-22866

[1] https://github.com/golang/go/compare/go1.22.11...go1.22.12

(From OE-Core rev: 423ad5a67768738dac454b1e2aa27746f74511c5)

Signed-off-by: Peter Marko <peter.marko@siemens.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-10 13:03:57 +00:00
Richard Purdie
f91a2072c9 go: Fix to work without gold on aarch64
If we remove gold from binutils, go-runtime fails to build. There was a
workaround in go to use gold as the bfd linker had a bug. The issue was
fixed so backport dropping the workaround fmr upstream.

(From OE-Core rev: 4636b7206b2e4247835d60956e62f5a2efea9e81)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-10 13:03:57 +00:00
Ninette Adhikari
9f31270600 scripts/buildperf: Add chart tabs for commit count/time
We triggered a test of an older revision to narrow down when performance
changed. The issue is that git's timestamps are granular to 1s. We'll
usually merge a set of commits at the same time so they will all have
the same timestamp for a block of them. This means that even if we use
the commit date, all the points can't be distinguished on the graph.
The author date doesn't work either as the commits are not merged in
author date order.

To solve this this patch adds the commit_count chart as a separate tab
next to the start_time chart

(From OE-Core rev: b263edd33f6c895238d81ef148c0445fcd0aa268)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-09 22:23:30 +00:00
Richard Purdie
e0a7a6eb09 lib/oeqa/metadata: Add commit_time to branch metadata being saved
As well as commit counts, it is helpful to know when metadata dates from. Store
the unix timestamp for commits in a commit_time field alongside the commit count.

This is useful for performance graph analysis and saves having to recompute the
data.

(From OE-Core rev: 56d1bc3f8f45d2f9c8ca0319c429cec562a16384)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-09 22:23:30 +00:00
Antonin Godard
cf616cbae7 migration-5.2: add virtual provider change
The commit 4ccc3bc8266c ("classes/recipes: Switch virtual/XXX-gcc to
virtual/cross-cc (and c++/binutils)") in OE-Core changes the
virtual/XXX-gcc to virtual/cross-cc (and c++/binutils) syntax. Add it to
the migration manual.

(From yocto-docs rev: 6eda443c7fcfeecebd6b44b96a1587c4bb093a34)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Reviewed-by: Quentin Schulz <quentin.schulz@cherry.de>
Signed-off-by: Antonin Godard <antonin.godard@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-07 17:52:48 +00:00
Antonin Godard
8c49710b8d migration-5.2: document BB_CURRENT_MC default value change
After commit 0fa0d8d764bb ("cooker/cache: Drop mc 'default' string
value") in Bitbake, the default value of BB_CURRENT_MC was changed from
"default" to an empty string. Document it.

(From yocto-docs rev: efbd8fa30a5cc42d5243aa87e00e2d92cb265adb)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Reviewed-by: Quentin Schulz <quentin.schulz@cherry.de>
Signed-off-by: Antonin Godard <antonin.godard@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-07 17:52:48 +00:00
Lee Chee Yang
4e4996855f migration-guides: add release notes for 5.1.2
(From yocto-docs rev: ba80f0cdeea9e2e3bbfecfeae8c3be9a2cb36297)

Signed-off-by: Lee Chee Yang <chee.yang.lee@intel.com>
Signed-off-by: Antonin Godard <antonin.godard@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-07 17:52:48 +00:00
Lee Chee Yang
a65594c2b5 migration-guides: add release notes for 4.0.24
(From yocto-docs rev: 57f92aebc14c45bd73bb0b730bdbf6526e7e5546)

Signed-off-by: Lee Chee Yang <chee.yang.lee@intel.com>
Signed-off-by: Antonin Godard <antonin.godard@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-07 17:52:48 +00:00
Simon A. Eugster
42957c5c25 ref-manual: Describe grub-efi-cfg overrides and GRUB_TITLE
This patch describes how to use overrides for grub-efi-cfg because that
is otherwise only clear after reading the .bbclass file. It also adds
a description for GRUB_TITLE.

(From yocto-docs rev: b9ec7d124c9cbaf6c05415277fa028a39ce9e02f)

Signed-off-by: "Simon A. Eugster" <simon.eu@gmail.com>
Reviewed-by: Antonin Godard <antonin.godard@bootlin.com>
Signed-off-by: Antonin Godard <antonin.godard@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-07 17:52:48 +00:00
Antonin Godard
0eb974d972 ref-manual/faq: add q&a on systemd as default
Originally written by Richard Purdie, but formatted in rst syntax and
slight rephrasing.

Cc: Richard Purdie <richard.purdie@linuxfoundation.org>
Reviewed-by: Quentin Schulz <quentin.schulz@cherry.de>
(From yocto-docs rev: 568922014e5c00ecf0c3d19b8c7fefa0e3801183)

Signed-off-by: Antonin Godard <antonin.godard@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-07 17:52:48 +00:00
Antonin Godard
6fd46f2e87 dev-manual/devtool: remove reference to the extensible SDK
There were leftover references to the extensible SDK after moving the
devtool documentation from the Extensible SDK document to its own
devtool document.

This patch follows the bulk move to make it clear what was modified in
the document.

Reviewed-by: Quentin Schulz <quentin.schulz@cherry.de>
(From yocto-docs rev: 032d2f3297ff4b5ee4e000b3dd0748a58b5f32e0)

Signed-off-by: Antonin Godard <antonin.godard@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-07 17:52:48 +00:00
Antonin Godard
cfe5da1f75 Move devtool doc from extensible to dev manual
[YOCTO #13417]

devtool is not directly tied to the Extensible SDK anymore, and
instructions in there can be split and added to the development manual.

This patch is a simple bulk move, except for the following:

- Intro added to the devtool.rst document (mostly copy-pasted from the
  devtool quick reference in the ref-manual).
- Figures renamed to remove "sdk-" from filenames.
- References to sdk-manual/extensible replaced by dev-manual/devtool.

Reported-By: Paul Eggleton <bluelightning@bluelightning.org>
(From yocto-docs rev: 044d3185b858fce1febcfe3a6834b883f9a598fa)

Signed-off-by: Antonin Godard <antonin.godard@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-07 17:52:48 +00:00
Zoltán Böszörményi
21521c6218 dev-manual/packages: add information about signing changes
(From yocto-docs rev: 6c1a77e5db7ae9910d24deb023619b9391c8b4ad)

Signed-off-by: Zoltán Böszörményi <zboszor@gmail.com>
Reviewed-by: Antonin Godard <antonin.godard@bootlin.com>
Signed-off-by: Antonin Godard <antonin.godard@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-07 17:52:48 +00:00
Zoltán Böszörményi
d554399bf8 release-notes-5.2: add information about rpm and sequoia
(From yocto-docs rev: 074592afcba03e932778471c44019623943814fc)

Signed-off-by: Zoltán Böszörményi <zboszor@gmail.com>
Reviewed-by: Antonin Godard <antonin.godard@bootlin.com>
Signed-off-by: Antonin Godard <antonin.godard@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-07 17:52:48 +00:00
Simon A. Eugster
afb9ac9181 documentation: Fix typo in standards.md
(From yocto-docs rev: 9007d7eb63b296aae832028924d89f83dc159992)

Signed-off-by: "Simon A. Eugster" <simon.eu@gmail.com>
Signed-off-by: Antonin Godard <antonin.godard@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-07 17:52:48 +00:00
Richard Purdie
cfb975c62e Revert "selftest/sstatetests: run CDN mirror check only once"
This reverts commit 0d3901b768.

We've still having CDN issues so go back to the double attempt to
see if this improves things.

(From OE-Core rev: 136f0edb75d9601a0ae56e025419d3cddfb90219)

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-06 21:44:47 +00:00
Quentin Schulz
65e773f88b b4-config: Add basic support for b4 contribution workflow
b4[1] is a very nice tool for mail-based contribution. A config[2] file
exists to set up a few defaults. We can use it to provide the Cc and To
recipient list for the series.

This uses the b4-wrapper-poky.py script for checking that each patch in
the series is only for one project. Indeed, poky is actually a
"collection" of multiple repositories, namely BitBake, OpenEmbedded-Core
and the Yocto Docs. One patch should therefore not make changes in
multiple of those projects otherwise it cannot be merged.

Additionally, a check is added to make sure that a series only touches
files from one project to avoid having to figure out which patch is to
be merged by which maintainer in which project repo.

Moreover, it is not uncommon to have people develop patches for those
projects from within poky. This wrapper figures out which mailing lists
to send patches to based on the files that are modified in the series.
Considering that patches to the bitbake/doc/ directory need to be sent
to both the bitbake and yocto-docs mailing list (To recipient for the
former, Cc recipient for the latter) this wrapper handles that.
A limitation of the script (lsdiff actually) is that it doesn't know how
to handle empty files, but those should be of rather rare occurrences.

Note that this script requires hardcoding of paths that are handled by
different projects to map files to projects. Anything not mapped is
assumed part of OE-Core.

[1] https://pypi.org/project/b4/
[2] https://b4.docs.kernel.org/en/latest/config.html

Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-06 10:40:55 +00:00
Quentin Schulz
0698d606be scripts: add b4-wrapper for poky
poky is a combo-layer containing BitBake, OpenEmbedded-Core and Yocto
Documentation source code into one big repo. It is not uncommon to have
people develop patches for either of those projects from a poky git
repo.
However, it is unlikely those patches are to be sent to the poky mailing
list as very few files contained in the poky git repo actually are
poky-specific. So we need a way to identify to which mailing list a
patch is destined to be sent.
Additionally, because the source code in openembedded-core is
merged/imported at the root of the git repo of poky, its .b4-config
introduced in the previous commit will be used if not overridden (which
will be done in a separate commit specific to the poky git repo). We
need to provide a different .b4-config in poky.

Therefore, this wrapper is used to identify automatically which mailing
list a patch series needs to be sent to (via b4 prep --auto-to-cc) and
does some additional checks (via b4 prep --check) such as making sure a
patch doesn't modify two different projects at the same time or that
multiple projects are modified by different patches in the same patch
series.

This wrapper script is meant to be used by poky's .b4-config. Ideally
the b4 prep --check part could be offloaded to `patchtest` once it
supports running on source different from OE-Core.

Note that b4 makes sure that an address doesn't appear twice in the
recipient list. There's also no priority in the type of recipient list,
so if the address appears first in Cc and then in To, only the Cc will
be added. The opposite is true as well.

(From OE-Core rev: a1d629a0823cf724bda607ef8d88ee4f722c3a08)

Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-06 10:40:10 +00:00
Quentin Schulz
64ef07f6c4 bitbake: b4-config: Add basic support for b4 contribution workflow
b4[1] is a very nice tool for mail-based contribution. A config[2] file
exists to set up a few defaults. We can use it to set the To recipients
to always add, in our case the mailing list.

This also adds a wrapper script that is called by b4 to figure out which
addresses to put as Cc recipients. Considering that patches to the doc/
directory also need to be sent to the yocto-docs mailing list, this
wrapper handles that. A limitation of the script (lsdiff actually) is
that it doesn't know how to handle empty files, but those should be
of rather rare occurrences.

Because we currently do not have anything to check for patch validity,
remove requirement for b4 prep --check to be run before sending a patch
series, via disable-needs-checking in prep-pre-flight-checks.

[1] https://pypi.org/project/b4/
[2] https://b4.docs.kernel.org/en/latest/config.html

(Bitbake rev: 8843860010c97cc10ff69205d209634639b6c5cd)

Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-06 10:40:10 +00:00
hongxu
069a346036 perl: fix do_install failed for nativesdk-perl
While set 'baselib = "lib64"' for nativesdk, perl do_install failed:
| rm: cannot remove 'tmp/work/x86_64-nativesdk-pokysdk-linux/nativesdk-perl/
5.40.0/image//usr/local/oe-sdk-hardcoded-buildpath/sysroots/x86_64-pokysdk-linux/
usr/lib64/perl5/5.40.0/*/CORE/libperl.so': No such file or directory

Refer perl class-target do_configure, explicitly pass option '--libdir=${libdir}'
to nativesdk do_configure

(From OE-Core rev: 68b368c77198c8f6e5f59e7b8a568645240ae426)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-06 07:40:53 +00:00
Omri Sarig
1141e202e7 python3: Fix typo in create_manifest3.py
Fixed a misspelled "posible" to "possible".

(From OE-Core rev: 7e2d743e4809d6cbaa8e441dc42624eb65daad63)

Signed-off-by: Omri Sarig <omri.sarig13@gmail.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-05 13:00:45 +00:00
Omri Sarig
4f60c1d029 python3: Fix typo in python3-manifest.json
Fix a wrong "the" to be the intended "that".

(From OE-Core rev: fe55f05a7068ba7b277a253058fdcc8964222bc1)

Signed-off-by: Omri Sarig <omri.sarig13@gmail.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-05 13:00:45 +00:00
Moritz Haase
10dce263f0 meta: Enable '-o pipefail' for the SDK installer
When testing a Yocto SDK installer on Alpine 3.21, we recently ended up with a
broken SDK. One of the commands the relocation script calls in a piped
multi-command chain failed (see [0]), but the installer did not realize that -
since it doesn't use 'set -o pipefail'. Thus, the error was never reported to
the user and the installer claimed to have set up the SDK correctly - which
wasn't the case.

Given that the SDK installer is a POSIX-compliant shell script and that the
'pipefail' option used to be missing from the standard, it's not surprising that
it isn't used. Thankfully however, in June of 2024, a new version of POSIX
(POSIX.1-2024) was released - and that one finally includes the 'pipefail'
option (see [1]). A number of shells already support it, so let's enable it if
available to make the SDK installer more robust.

The change has been tested locally using SDK installers for internal projects,
based on both Kirkstone and Scarthgap.

[0]: https://gitlab.alpinelinux.org/alpine/aports/-/issues/16797
[1]: https://pubs.opengroup.org/onlinepubs/9799919799.2024edition/utilities/V3_chap02.html#set

(From OE-Core rev: 1cb4b41c7faf77fcc347b1276d86d4288968c926)

Signed-off-by: Moritz Haase <Moritz.Haase@bmw.de>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-05 13:00:45 +00:00
Simone Weiß
7e55fd135f libseccomp: Upgrade 2.5.5 -> 2.6
Changelog:
- Update the syscall table for Linux v6.13
- Add support for new arches: SuperH little and big endian, LoongArch, and
  32-bit Motorola 68000
- Add multiplexed syscall support for more arches: MIPS, SuperH, and PPC
- Consolidate and simplify handling of multiplexed syscalls
- Add support for the SECCOMP_FILTER_FLAG_WAIT_KILLABLE_RECV flag
- Add support for transactions with the seccomp_transaction_start(),
  seccomp_transaction_commit(), and seccomp_transaction_reject() APIs
- Add a seccomp_precompute() API to generate the seccomp BPF filter prior to
  seccomp_load() or seccomp_export_bpf_mem()
- Add support for binary tree filters without syscalls
- Add support for the kernel’s implementation change of
  SECCOMP_IOCTL_NOTIF_ID_VALID
- Add Python binding support for retrieving the notification file descriptor
- Improved tooling to help track syscall table updates in the Linux kernel
- Handle EINVAL error from the kernel when the WAIT_KILLABLE_RECV flag is
  erroneously provided to the kernel
- Fix a seccomp userspace notification issue where the file descriptor was
  being requested more than once
- Fix a bug where the internal filter state could be corrupted when a filter
  rule addition fails
- Fix potential memory leak in the internal management of filter snapshots
- Utilize Cython rather than distutils in the Python bindings, due to
  distutils’ deprecation
- Many test and CI improvements and fixes
- Many documentation improvements and updates

(From OE-Core rev: 549a477660bd6ccda842b4ed34814b53470d08d8)

Signed-off-by: Simone Weiß <simone.p.weiss@posteo.com>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-05 13:00:45 +00:00
Alexander Kanavin
ce5428f48a rust: restore parallel builds, disable lto only for rustdoc
The original reproducibility fix was problematic for a couple reasons:

- disabling both lto and parallel builds had an unfortunate effect of nearly
doubling rust-native and rust build times (which are slow to begin with).
Disabling lto hurts runtime performance too.

- both of these things were done for the *entire build*, while the only
problematic item is the librustdoc crate.

- lto=off option in config.toml has an effect only on building rustc
(the compiler itself), and doesn't help with rustdoc reproducibility.
Actual fix is the codegen-units setting, which indirectly disables
lto via giving llvm only one unit to work with at a time.

After some digging, here's a more targeted fix for the problem.

Why librustdoc is non-reproducible, but not anything else
remains a mystery, hidden deep in rust-llvm's lto optimization code.

(From OE-Core rev: a1977407a88a2004c3a6d2dba1d5bfe1aa1664b2)

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2025-02-05 12:49:56 +00:00