libopensc failed to link:
x86_64-yoe-linux-ld.lld: error: unable to find library -lgio-2.0
x86_64-yoe-linux-ld.lld: error: unable to find library -lgobject-2.0
libopensc_la_LINK = $(LIBTOOL) ... --tag=OBJC ... $(OBJCLD) ...
with OBJCLD = $(OBJC). The ENABLE_CRYPTOTOKENKIT conditional only keeps
the .m file out of the sources, automake still picks the linker
statically, so this happens on Linux too. AC_PROG_OBJC detects a bare
"x86_64-yoe-linux-clang" with none of the toolchain options, hence the
link ran without --sysroot:
OBJC = x86_64-yoe-linux-clang
CC = ccache x86_64-yoe-linux-clang -target x86_64-yoe-linux ... \
--sysroot=.../recipe-sysroot -std=gnu23
Point OBJC at the full CC
Also fix floating gio dependency: opensc's
--enable-notify defaults to "detect" and enables glib2 notification
support whenever gio-2.0 happens to be staged in the sysroot by some
other dependency
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
libSDL2-2.0.so.0 from sdl2-compat lists only libc.so.6 as NEEDED and
loads libSDL3.so.0 through dlopen(), so shlibs does not generate a
runtime dependency on libsdl3. An image that installs an SDL2 consumer
without pulling in libsdl3 by other means therefore gets a library that
fails to initialize at runtime. This was seen with plasma-desktop, whose
game controller KCM links against SDL2 and made systemsettings fail to
start on an image that had no other SDL user.
Tested by checking readelf -d on the installed libSDL2-2.0.so.0 and by
rebuilding the package for corei7-64.
AI-Generated: Uses Claude Code (Claude Opus 5)
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
The recipe carried a patch that commented out the i18n.merge_file()
call for org.opensuse.cupspkhelper.mechanism.policy and installed the
untranslated template in its place, so the polkit dialogs showed
English strings only and the 43 translations shipped in po/ were
discarded.
The merge failed because meson hands the data_dirs argument to its
msgfmthelper script, which replaces GETTEXTDATADIRS instead of
extending it. That hides the ITS rules polkit installs into the target
sysroot, which msgfmt needs to recognize the translatable elements of
a policy file, and which gettext.bbclass already points at.
cups-pk-helper ships no ITS rules of its own, so the argument has no
purpose beyond breaking the merge.
Replace the patch with one that drops data_dirs and keeps the merge
enabled, and remove the manual install of the template.
Tested by rebuilding for corei7-64: the installed policy file now
carries description and message elements for all 43 languages.
AI-Generated: Uses Claude Code (Claude Opus 5)
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Creates a separate package for the polkit systemd
service, such that other implementations for polkit
could be used instead of polkit on systemd enabled
systems, while still keeping polkit available. This
is especially helpful for software that depends on
polkit or its libraries etc, e.g. udisks2.
Also package dbus configuration into an own package
Signed-off-by: Tillmann Severin <tillmann.severin@bmw.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 5.1.2:
- workflows: bump docker/setup-buildx-action from 4.2.0 to 4.3.0
- workflows: bump reviewdog/action-actionlint from 1.73.1 to 1.73.2
- workflows: bump github/codeql-action/upload-sarif from 4.37.6 to
4.37.7
- workflows: bump uraimo/run-on-arch-action from 3.1.0 to 3.2.0
- workflows: bump github/codeql-action/upload-sarif from 4.37.7 to
4.37.8
- in_node_exporter_metrics: Implement stat and thermal_zone for
macOS
- out_prometheus_remote_write: Add 1-hour cut-off for expiring
staled metrics
- out_splunk: add time_key support for the HEC event time
- Dockerfile: optimize layers
- config: fix startup abort when log_level set via env and config
- tests: runtime: Plug a SEGV occurrence on macOS
- out_gcs: add unify_tag option to buffer all tags into one file
- log: clamp the suppression length to what was written
- out_gcs: implement parquet compressions
- out_gcs: support application default credentials
- in_winevtlog: Plug a crash path
- in_winevtlog: fix crash when all channels are missing and
ignore_missing_channels is enabled
- log: make consistency for suppress log feature
- es: opensearch: output: task: handle partial succeeded requests
- tests: runtime: Fix errors of incompatible types for in_ebpf
tests
- filter_kubernetes: implement namespace exclude
- in_systemd: support capturing with namespace
- release: update to 5.1.2
- workflows: bump softprops/action-gh-release from 3.0.2 to 3.0.3
- workflows: bump github/codeql-action/upload-sarif from 4.37.8
to 4.37.9
- lib: cmetrics: update to v2.2.2
- input_chunk: input_log: in_storage_backlog: address underflowing
/ overflowing chunk limit size
- out_azure_blob: Plug dangling pointers on exceptions
- out_azure_kusto: stop logging federated and access tokens
- out_gcs: add Workload Identity Federation support
- wamrc: Build with LLVM-17
- reload: preserve configuration path during hot reload
- out_s3: Clean up orphaned chunks
- config: config_format: address wrongly specified parameter on
service section
- aws: compression: validate valid columnar formats
- multiline: add built-in json parser for JSON multiline objects
- engine: Plug a race on starting engine
- tests: integration: Adjust allocation patterns for Ubuntu 26.04
- workflows: bump helm/kind-action from 1.14.0 to 1.15.0
- workflows: bump reviewdog/action-actionlint from 1.73.2 to
1.73.3
- workflows: bump docker/setup-qemu-action from 4.2.0 to 4.3.0
- out_opentelemetry: support metrics max datapoints
- AGENTS: Reflect circumstance of the current commit linter
- in_node_exporter_metrics: expire metrics for networking
- in_forward: ingest all metrics contexts in payload
- out_kafka: preserve infinite shutdown grace
- out_loki: scope remove_mpa thread-local cache per instance
- log: return NULL after flb_worker_context_create failure in
flb_log_create
- in_node_exporter_metrics: plug possible overrun indexes
- packaging: stabilize Debian release images
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
do_configure fails with:
configure.ac:17: error: must install xorg-macros 1.8 or later before
running autoconf/autogen
Signed-off-by: Alper Ak <alperyasinak1@gmail.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
oe-core upgraded ffmpeg 8.1.2 -> 9.0, which removed the AVCodec::pix_fmts
and AVCodec::supported_framerates fields (deprecated since FFmpeg 7.1 /
libavcodec 61.13.100). opencv's videoio ffmpeg backend still reads both
of them directly in cap_ffmpeg_hw.hpp and cap_ffmpeg_impl.hpp, so it does
not build against ffmpeg 9.
Backport the merged upstream series from opencv/opencv#29533, which reads
those lists through avcodec_get_supported_config() when building against
libavcodec 61.13.100 or newer and keeps the old field access otherwise.
The series was merged on 2026-08-11, after the 4.14.0 tag (2026-07-17),
so it is not part of the release we build.
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
do_compile fails with:
keyraw.c:158:16: error: implicit declaration of function
'EVP_PKEY_asn1_find_str'
The GOST code needs the OpenSSL ENGINE API, which 4.0 removed. configure
cannot run its GOST test when cross compiling and answers "maybe", which
enables GOST anyway. Make it check that the API is there first.
Nothing is lost by this and no layer ships a GOST engine, so the lookup
already returned 0 at runtime. gost-engine has not been ported to
providers yet [1].
[1] https://github.com/gost-engine/engine/issues/496
Signed-off-by: Alper Ak <alperyasinak1@gmail.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
The openssl backend no longer compiles against openssl 4.x. OpenSSL 4.0
made struct asn1_string_st opaque (asn1.h only forward declares it now),
while libspdm's cryptlib_openssl still reaches into ASN1_INTEGER and
ASN1_TIME members directly:
libspdm/os_stub/cryptlib_openssl/pk/x509.c:814:51: error: incomplete
definition of type 'ASN1_INTEGER' (aka 'struct asn1_string_st')
libspdm/os_stub/cryptlib_openssl/pk/x509.c:1131:14: error: invalid
application of 'sizeof' to an incomplete type 'ASN1_TIME'
make the crypto backend a PACKAGECONFIG choice and default to mbedtls,
which builds fine. openssl stays selectable for anyone still on openssl
3.x, and the two options are marked as mutually exclusive.
While at it, update SRCREV to the current tip of main, which carries 41
commits including a build refactor, TPM support, Linux kernel MCTP stack
support and several libspdm syncs.
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Fixes build with clang-23, which enables -Wunused-template in a way that
trips over openthread's parse_cmdline.hpp. With -Werror -Wfatal-errors
that is fatal:
third_party/openthread/repo/src/core/utils/parse_cmdline.hpp:240:48:
fatal error: unused function template 'ParseAsHexString'
[-Wunused-template]
Already fixed upstream in openthread commit 30c3569ac5ca ("[parse-cmdline]
make ParseAsHexString() inline"), which the openthread submodule of the
new SRCREV includes, so bump instead of carrying a backport.
Adapt the recipe to upstream changes made since the previous SRCREV:
* ot-br-posix commit cf4877d68af8 ("[mdns] remove avahi publisher option
and dependencies") deleted the avahi mDNS publisher; OTBR_MDNS=avahi
is now a configure-time FATAL_ERROR. Switch to OTBR_MDNS=openthread,
the new upstream default, and drop the avahi/avahi-daemon dependencies
the same way upstream did in their own etc/yocto/otbr_git.bb.
* The advertising and discovery proxies grew OT core implementations
(OTBR_OT_SRP_ADV_PROXY, OTBR_OT_DISCOVERY_PROXY) which default to ON
whenever OTBR_MDNS is set, and enabling both variants is now a
FATAL_ERROR ("Only one Advertising Proxy can be enabled."). Drop the
explicit OTBR_SRP_ADVERTISING_PROXY/OTBR_DNSSD_DISCOVERY_PROXY=ON so
the OT core ones are used.
* Drop 0001-otbr-agent.service.in-remove-pre-exec-hook-for-mdns-.patch.
With OTBR_MDNS=openthread src/agent/CMakeLists.txt never sets
EXEC_START_PRE, so the generated otbr-agent.service already has a bare
ExecStart= and the patch has nothing left to do.
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
clang 23 added -Wunused-but-set-global, enabled by -Wall, and the build
uses -Werror -Wfatal-errors, so this is now a hard failure:
src/lib/dlt_user.c:132:20: fatal error: variable
'dlt_user_housekeeper_exit_requested' set but not used
[-Wunused-but-set-global]
132 | static atomic_bool dlt_user_housekeeper_exit_requested = false;
The diagnostic is pointing at a real bug: dlt_user_atexit_handler() sets
the flag to "Signal housekeeper thread to exit", but nothing ever reads
it, so the housekeeper thread only ever stops when dlt_stop_threads()
cancels it. Not fixed upstream, master still has the same dead store.
Add a patch checking the flag in the housekeeper loop condition. Leaving
the loop that way is equivalent to being cancelled, pthread_cleanup_pop(1)
at the end of the function runs dlt_user_cleanup_handler() either way.
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
mercurial's setup.py treats ssl.HAS_TLSv1_2 as authoritative and refuses
to build at all:
The `ssl` module does not advertise support for TLS 1.2.
Please make sure that your Python installation was compiled against an
OpenSSL version enabling these features (likely this requires the
OpenSSL version to be at least 1.0.1).
ERROR: mercurial-7.2.4-r0 do_compile: Execution of .../run.do_compile
failed with exit code 1
Add a patch which only trusts the flag with OpenSSL < 4.0, in setup.py
and in sslutil.supportedprotocols (which otherwise loses b'tls1.2' and
makes `hg debuginstall` under-report the available protocols).
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
do_compile fails with:
OSSLUtil.cpp:188:46: error: invalid use of incomplete type
'ASN1_PRINTABLESTRING' {aka 'struct asn1_string_st'}
Backport the upstream fix. It was written for a memory leak, but it
moves to the ASN1_STRING accessors, which is also what OpenSSL 4 needs.
Signed-off-by: Alper Ak <alperyasinak1@gmail.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
do_compile fails with OpenSSL 4.0:
lm-ssl-openssl.c:281:92: error: invalid use of incomplete typedef
'ASN1_IA5STRING' {aka 'struct asn1_string_st'}
This break is a three line change to the ASN1_STRING accessors, but
upstream is dead. The last release is 1.5.4 from January 2021 and the
last commit in the mcabber fork is from June 2022, so every future
toolchain or dependency change is ours to carry.
Nothing in any layer depends on it, the only reference was the meta-oe
packagegroup.
Signed-off-by: Alper Ak <alperyasinak1@gmail.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
do_compile fails with:
cc1: error: include location "/usr/include/libnl3" is unsafe for
cross-compilation [-Werror=poison-system-directories]
The kernel tools Makefile gets the libnl flags from pkg-config. The
recipe does not inherit pkgconfig, so there is no PKG_CONFIG_SYSROOT_DIR
and the host pkg-config answers with the host include path.
Drop the manual CFLAGS entry, pkg-config now gives the same path.
Signed-off-by: Alper Ak <alperyasinak1@gmail.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
do_configure fails with:
configure.ac:35: error: must install xorg-macros 1.8 or later before
running autoconf/autogen
xorg-app-common.inc sets DEPENDS to "util-macros-native virtual/libx11",
but the recipe overwrites it, so util-macros-native never gets into the
sysroot. Append, like the other xorg-app recipes do.
Signed-off-by: Alper Ak <alperyasinak1@gmail.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
do_compile fails with:
alias.go:618:21: undefined: json.SkipFunc
alias.go:957:14: undefined: json.DiscardUnknownMembers
Go 1.27 turns the jsonv2 experiment on by default, so the json module
pinned by 1.98.3 builds its alias file against encoding/json/v2 and
aliases symbols that are gone. 1.102.3 pins a newer module.
- Regenerate go module dependencies and license checksums
- Manually verify and complete Unknown license entries
Signed-off-by: Alper Ak <alperyasinak1@gmail.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
USERADD_PARAM is a semicolon separated list of complete useradd
invocations. Only the first entry carried the options, so
malcontent-timerd and malcontent-webd were created with the useradd
defaults: regular UIDs from the user range, /bin/sh as shell and
/home/malcontent-timerd and /home/malcontent-webd created in the
rootfs. Upstream declares all three as system users without a home in
its sysusers.d fragments.
Repeat the options for each user and point the home of the two daemons
at the StateDirectory their units use, so no directory shows up under
/home.
Tested on corei7-64: the rootfs of plasma-image contains only the real
user under /home and all three accounts have system UIDs, /bin/false
and no home directory.
AI-Generated: Uses Claude Code (Claude Fable 5.1)
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 26.03:
- Improved support for Joliet ISO images and Compound archives.
- Some bugs and vulnerabilities were fixed.
- CVE-2026-58052 : 7-Zip failed to preserve the Mark-of-the-Web
when extracting a crafted archive.
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
The LOGIN mechanism is disabled by default in the configure script,
so libsasl2 clients fail with "no mechanism available" as soon as a
peer only offers AUTH LOGIN or the client is configured to use it.
Mail servers still commonly advertise AUTH LOGIN PLAIN and clients like
KMail default to LOGIN for SMTP transports. Debian, Fedora and Gentoo
all ship the plugin.
Add an opt-in PACKAGECONFIG that builds liblogin.so, off by default to
keep the current behaviour.
Tested on corei7-64 with the option enabled, liblogin.so is packaged
into ${libdir}/sasl2 next to the other mechanism plugins.
AI-Generated: Uses Claude Code (Claude Fable 5.1)
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
0004-Use-fresh-X11-timestamps-when-displaying-authenticat.patch includes
gdk/gdkx.h unconditionally, which does not exist when gtk+3 is configured
without the X11 backend, as is the case on wayland only distros:
polkitgnomeauthenticator.c:29:10: fatal error: 'gdk/gdkx.h' file not found
The patch already checks GDK_IS_X11_WINDOW() at runtime, but that is not
enough: the macro is declared in gdkx.h too, so the include and the
gdk_x11_get_server_time() call have to be compiled out as well. Guard both
with GDK_WINDOWING_X11 and keep gtk_window_present() as the non-X11 path.
Include gdk/gdk.h explicitly before the guard. GDK_WINDOWING_X11 comes from
gdkconfig.h and no gdk or gtk header is pulled in earlier in that file, so
without it the guard would always be false and X11 builds would silently
lose the fresh timestamp instead of failing to build.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
clang 23 enables -Wunused-template under plain -Wall, and every test in
src/test is compiled with -pedantic -Wall -Wextra -Wshadow -Werror, so the
whole test build fails:
include/tao/pegtl/internal/match_impl.hpp:24:30: error: unused function
template 'match_no_control' [-Werror,-Wunused-template]
match_no_control() is a namespace-scope static function template in a
header, so it has internal linkage in every translation unit. It is only
ever referenced from other templates, so in a TU where none of those get
instantiated it really is unused and clang says so.
Add a patch declaring the two overloads inline instead, which is the
correct linkage for a function template defined in a header.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Release notes:
https://github.com/microsoft/GSL/releases/tag/v5.0.0
Switch to the rel/5.0 branch. New in this release is the gsl::dyn_array
container, so the -dev package gains include/gsl/dyn_array.
Fix the build with clang 22. The tests are compiled with -Weverything
-Werror, so every new clang diagnostic becomes a build failure; the newly
added lifetime-safety suggestions produce:
notnull_tests.cpp:63:19: error: parameter in intra-TU constructor should
be marked [[clang::lifetimebound]]
[-Werror,-Wlifetime-safety-intra-tu-constructor-suggestions]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Release notes:
https://github.com/wolfcw/libfaketime/blob/v0.9.13/NEWS
Drop 0001-Add-const-qualifiers-to-fix-build-with-ISO-C23.patch, it is
merged upstream via PR #525.
Add a patch to fix the build with clang 23, which added
-Wunused-but-set-global and turns the -Werror in src/Makefile into:
libfaketime.c:340:23: error: variable 'real_lstat' set but not used
[-Werror,-Wunused-but-set-global]
ftpl_init() resolves every real_* pointer up front by design, so the
ones whose wrappers are not compiled on Linux/glibc end up written and
never read. Annotate those with __attribute__((unused)) rather than
adding -Wno-error=unused-but-set-global to CFLAGS, since the Makefile
has no flag-probing and older clang rejects the unknown warning group
under the same -Werror.
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Since kernel 7.x tools/include/linux/compiler_types.h includes
<linux/compiler-context-analysis.h>, a no-op stub for the new
compiler-based context analysis annotations. The recipe copies
compiler_types.h out of the kernel tree and rewrites its includes to
local headers, but did not know about the new one, so the build fails:
./compiler_types.h:16:10: fatal error: 'linux/compiler-context-analysis.h' file not found
Copy the new header when the kernel provides it and rewrite the include
like the others.
While here, fix the mangled quoting on the TMPCHECK line, which produced
run.do_compile: line 138: TMPCHECK=grep: command not found
and left TMPCHECK unset. The unquoted [ -n $TMPCHECK ] test then always
succeeded, so the vdso branch was taken regardless of the grep result.
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
After further debugging it turned out that the root cause of my issue
was a race condition between gdm and kmscon and switching to dbus just changed the
condition to my favour. gdm itself can work with dbus-broker, so this
statement is false
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
The icon themes gimp ships are SVG only. Without the gdk-pixbuf SVG
loader GTK cannot load a single icon and gimp aborts at startup with
"Icon 'image-missing' not present in theme Default". Images built with
the GTK tooling usually carry the loader for other reasons, a Plasma
image does not.
Tested on a Plasma image on corei7-64, gimp starts with the loader
installed.
AI-Generated: Uses Claude Code (Claude Fable 5.1)
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
gnome-keyring switched from autotools to meson in 48.alpha, so the
recipe is converted to the gnomebase meson default.
The configure.ac patch for the ssh-agent and ssh-add paths is replaced
by an equivalent meson patch that adds ssh-agent-path and ssh-add-path
options, because find_program() cannot locate target executables in
the sysroot. The musl patch is dropped, sys/select.h is included
upstream since 48.
Other changes:
- gcr-ui-3 is no longer used, so the gtk+3 dependency and the
GTK3DISTROFEATURES check go away.
- libcap-ng, pam, selinux and systemd are now explicit PACKAGECONFIGs
instead of being auto-detected from whatever is in the sysroot.
libcap-ng was picked up implicitly before and stays enabled.
- The PKCS#11 module and config directories are passed explicitly
instead of being read from the p11-kit pkg-config file.
- Man pages need xsltproc and docbook and are disabled like the docs
were before.
Build tested on corei7-64, the packaged file list is unchanged.
AI-Generated: Uses Claude Code (Claude Fable 5.1)
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
The wrapper script previously did not allow to instantiate templated
services without DefaultInstance defined. This change allows
foo@.service be installed and therefor be in enabled state.
In real systemd land, templated units without a specified instance are
valid, but we restrict it here a bit in order to not have a foo@.service
with:
[Install]
WantedBy=bar.service # bar.service starts -> start foo@???.service
In this case, system can never resolve the specific instance of
foo@.service when bar.service is started. It is fixed by adding the
template_only variable, which restricts the dependents of generic
template units to template-only ones. This means the following is still
legal for the above foo@.service:
[Install]
WantedBy=bar@.service # bar@1.service starts -> start foo@1.service
# bar@2.service starts -> start foo@2.service
# etc...
WantedBy=bas@1.service # bas@1.service starts -> start foo@1.service
# bas@2.service starts -> no dependency here
# etc...
Signed-off-by: Fabian Pflug <f.pflug@pengutronix.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Following the example in the comment as-is will lead to an error at
do_fitimage time:
The key ID is not a valid PKCS#11 URI
The PKCS#11 URI format is defined by RFC7512
The key ID is not a valid PKCS#11 URI
The PKCS#11 URI format is defined by RFC7512
PKCS11_get_private_key returned NULL
Failure loading private key from engine: error:40000064:pkcs11 engine::invalid id
uboot-mkimage Can't add hashes to FIT blob: -1
Strip the pkcs11: prefix to resolve this and save future users the
hassle.
Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Signed-off-by: Fabian Pflug <f.pflug@pengutronix.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
FITIMAGE_CONFIG_PREFIX is only used for configurations that contain a
kernel image, but not for mere overlay configurations.
This is inconsistent with the original kernel-fitimage.bbclass.
As the name may be hardcoded in the bootloader, add a new
FITIMAGE_CONFIG_FDTO_PREFIX to be able to customize the prefix for
device tree overlay configuration nodes as well.
Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Signed-off-by: Fabian Pflug <f.pflug@pengutronix.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 2026.4:
- This release reverts the static delta decompression-size safety
margin introduced in 2026.3, which turned out to reject legitimate
large deltas at apply time -- most visibly, Flathub Firefox
updates were failing with Decompressed delta part exceeds
configured limit
Both the margin heuristic and the flat 512 MiB per-part
decompression cap it fed into have been dropped for now. This
deliberately reopens GHSA-7cgc-gp99-6jmm (unbounded decompression
of a given delta part) until a precise, per-part exact-size-based
replacement lands in a future release. The LZMA decoder memory
limit (100 MiB) from that same advisory's fix is unaffected and
remains in place.
- core: fixed a double-increment bug in
_ostree_validate_structureof_xattrs that caused every other xattr
entry to be skipped during validation, letting a crafted xattr
array hide unsorted or duplicate entries in odd-indexed slots.
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Upgrade to release 9.1.2:
Security Fixes
- GHSA-jcj7-v34w-v9vv: Fix a use-after-free in RDMA connection
handling that could allow an authenticated client to crash the
server using CLIENT KILL. Only affects servers built with
USE_RDMA and configured with an RDMA listener
- GHSA-fq2f-crmw-q97r: Fix an unauthenticated use-after-free of the
Lua interpreter state, caused by a process-global script debugger
command table that cached a raw pointer to a freed interpreter
and was never invalidated
Bug Fixes
- Fix a double-free crash when a module timer callback stops its
own timer with ValkeyModule_StopTimer
- Fix torn RESP3 push frames when a client publishes to a channel
it is also subscribed to, which could desync client libraries
- Listpacks are now always validated on RDB load and RESTORE,
preventing deferred assertion crashes; sanitize-dump-payload and
its ACL flags become no-ops
- Fix crashes, hangs, and CPU spinning when the RDMA transport is
used together with I/O threads
- RESET now clears the CLIENT IMPORT-SOURCE flag, so reused pooled
connections return to normal expiration semantics
- Truncate a partially written MULTI block from the AOF on short
read, preventing loss of newer writes after a later restart
- Fix an ACL bypass where duplicate STORE/STOREDIST options let
GEORADIUS write or delete keys outside the user's permitted patterns
- Fix command log redaction leaking between commands in a MULTI
transaction and missing for commands executed from scripts
- Fix a use-after-free crash when a module's cluster message type
is received after the module is unloaded
- Fix out-of-bounds access for cluster module message type 255,
which is now a valid, dispatchable message type
- AOF loading no longer performs ACL checks on replayed commands,
preventing silent data loss when the default user is disabled
- Fix a client memory accounting leak on replicas that inflated
the mem_clients_normal INFO field after primary disconnections
- Fix a permanent client deadlock when a blocking command like
BLPOP is followed by a partially delivered pipelined command
- HGETEX now requires write permission on the key, closing an
ACL gap that let read-only users change field TTLs or delete
fields
- Compare the whole TLS certificate CN during authentication,
so an embedded NUL can no longer impersonate another ACL user
- Fix atomic slot migration failures with I/O threads by not
offloading the export job's writes while snapshotting
- Reject invalid slot import ranges when loading an RDB, so
corrupted files can no longer create bad migration jobs
- Reject RDB slot import records with an invalid job name length,
preventing an out-of-bounds read at startup
- MOVE and COPY now check ACL access to the current database, so
users can no longer exfiltrate keys from an unauthorized DB
- Fix a crash on COPY with a trailing DB option during slot
migration, and block cross-DB COPY regardless of option order
- Fix a server panic when pipelined commands with invalid arity
reach the key prefetcher with I/O threads enabled
- HPERSIST, HTTL, HPTTL, HEXPIRETIME, and HPEXPIRETIME now return a
syntax error when the FIELDS keyword is missing
- Fix a race between TLS I/O-thread writes and reads that could
leave slot migration export jobs stuck until timeout
- Fix a signed overflow that let very large hash field expiration
times (e.g. via HPEXPIREAT) crash the server
- Fix a frozen monotonic clock on hosts with unsynchronized TSC
that stopped background tasks and key expiration
- Fix a stack overflow crash when retrying a failed TLS write
with a large reply
- Fix the --check-system clocksource check to skip hosts using a
hardware clock and suggest only actually available clocksources
- Fix an assertion failure with I/O threads when a blocked
client's pending command was processed again before unblocking
- Sentinel no longer loads the built-in Lua scripting engine,
removing a spurious warning at startup
- Validate channel, message, and module payload lengths in cluster
bus packets, preventing forged packets from crashing nodes
- Harden stream validation on RDB load and RESTORE so crafted
payloads can no longer crash the server on later commands
- Reject stream payloads with mismatched live/deleted record
counts, preventing XDEL from destroying unaccounted entries
- Skip unnecessary post-read processing with I/O threads on socket
and TLS connections, restoring small-payload throughput
- Fix a use-after-free crash when serving clients blocked on the
same key if one client is freed during processing
- Avoid an unneeded client lookup per write completion with I/O
threads on socket and TLS connections, improving pipelined
throughput
- Fix CLUSTER SLOT-STATS ORDERBY returning wrong ordering when slot
counters differ by more than 2^31
- Fix slot migration failures with I/O threads and TLS by keeping
the export job's ACK reads on the main thread while snapshotting
Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
clang 23 added -Wunused-but-set-global to the -Wunused warning group, so
the -Werror that meson.build adds for git builds turns it into a hard
error:
osinfo/osinfo_avatar_format.c:24:1: error: variable
'osinfo_avatar_format_parent_class' set but not used
[-Werror,-Wunused-but-set-global]
Add -Wno-error=unused-but-set-global to libosinfo_check_cflags so the
warning stays visible but is not fatal. The flag is placed in the list
that meson.build filters through compiler.has_argument(), so it is
dropped on compilers that do not know the warning group
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
clang 23 enables -Wunused-template as part of -Wall (via -Wmost ->
-Wunused), where previously neither -Wall nor -Wextra turned it on.
libcamera builds with -Werror, so this now breaks the build:
In file included from include/libcamera/ipa/core_ipa_serializer.h:18:
include/libcamera/internal/ipa_data_serializer.h:57:3: error: unused
function template 'readPOD' [-Werror,-Wunused-template]
57 | T readPOD(std::vector<uint8_t> &vec, size_t pos)
| ^~~~~~~
The POD helpers sit in an anonymous namespace, so they have internal
linkage and clang diagnoses them per translation unit. appendPOD() and
the iterator overload of readPOD() are referenced by the
IPADataSerializer specialisations in the header itself, so they count as
used everywhere. The std::vector overload of readPOD() is not: nothing
in libcamera calls it, its only callers are the IPA proxies and proxy
workers generated at build time from the mojom templates. So it is
genuinely unused in every translation unit that is not generated proxy
code, which is what [[maybe_unused]] exists for.
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
ASSIMP_WARNINGS_AS_ERRORS defaults to ON, which builds the library with
-Wall -Werror. That leaves the build at the mercy of whatever a new
compiler adds to -Wall: clang 23 enables -Wunused-template there, and the
bundled openddlparser copy carries a template that is never called, so the
build fails with
contrib/openddlparser/code/DDLNode.cpp:34:20: error: unused function
template 'releaseDataType' [-Werror,-Wunused-template]
Neither assimp master nor openddl-parser upstream has removed that dead
template, and there is no pending pull request for it, so there is nothing
to backport. Debian, Fedora, Arch and Alpine all turn this option off
rather than patch individual warnings; do the same, which also keeps the
next addition to -Wall from breaking the build again.
AI-Generated: Uses Claude Code
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Add two new recipes from the CentOS Automotive SIG
boot-time-analysis-tools project to enable boot time profiling
and measurement.
boot-time-analysis-tools:
Python-based toolset for collecting, analyzing and visualizing system
boot timing data from the systemd journal. Provides the 'boot_timings'
CLI utility which queries D-Bus and the systemd journal to produce
structured boot time reports. Depends on python3-dbus and python3-systemd
for runtime journal and D-Bus access.
cntvct-log:
Userspace C utility built with Meson that logs ARM CNTVCT_EL0 virtual
counter timestamps to correlate hardware-level timing with systemd boot
events. Installs cntvct@.service as a systemd template unit (disabled
by default) for on-demand per-instance activation. The service preset
file (98-cntvct-log.preset) is installed for system-preset-based enablement.
Both recipes fetch from the same upstream git repository:
https://gitlab.com/CentOS/automotive/src/boot-time-analysis-tools
Signed-off-by: Chitti Babu Theegala <ctheegal@qti.qualcomm.com>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
Both packages provide the org.gnome.Settings D-Bus name that GNOME
applications use to open the online accounts settings. Only one of them
can own it, so keep them from being installed together.
AI-Generated: Uses Claude Code (Claude Fable 5.1)
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
GNOME Online Accounts only provides the daemon and library that
applications such as gnome-calendar, gnome-contacts and evolution use
for their calendar, mail and contact accounts. The only user interface
for adding accounts is the online-accounts panel of gnome-control-center,
which pulls in gnome-shell and its settings daemon. Desktops built on
wlroots compositors or other GTK environments have no way to configure
these accounts at all.
gnome-online-accounts-gtk from the xapp project is a standalone GTK4 and
libadwaita application for exactly that job and works without GNOME
Shell.
GNOME applications open the accounts settings by activating the
"launch-panel" action of org.gnome.Settings on the session bus. The
included patch provides that name and action from
gnome-online-accounts-gtk together with a D-Bus service file, so these
buttons work here too. Since only one package can own the bus name, the
package conflicts with gnome-control-center.
Build tested on corei7-64.
AI-Generated: Uses Claude Code (Claude Fable 5.1)
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>
The old patch pointed the compiled-in build tree paths at made-up
locations and disabled the landlock in-tree rules with #if 0, which left
the real BUILDROOT definition in libtracker-miners-common in place. It
also touched test-only values that never reach the installed files.
The new patch adds an "uninstalled_helpers" meson option that leaves out
the build tree defines and compiles the in-tree code paths away. It
keeps the developer workflow intact by default and can be sent upstream.
Build tested on corei7-64, the packaged binaries contain no build paths.
AI-Generated: Uses Claude Code (Claude Fable 5.1)
Signed-off-by: Markus Volk <f_l_k@t-online.de>
Signed-off-by: Khem Raj <khem.raj@oss.qualcomm.com>