Hi @Yoann Congal<mailto:[email protected]>,
Yes, we hit this on our scarthgap platform (systemd 255.21). dlt-system aborted
inside sd-journal:
dlt-system[1284]: Assertion 'd->object.type == OBJECT_DATA' failed at
src/libsystemd/sd-journal/journal-file.c:3237, function
generic_array_bisect_for_data(). Aborting.
The crash is the assert in generic_array_bisect_for_data(). The function
received a data object 'd' whose object.type was not OBJECT_DATA, so the
on-disk journal contents were not what the reader expected. The assert aborted
the whole process.
The patch replaces the assert with:
if (d->object.type != OBJECT_DATA)
return -EBADMSG;
A corrupted or changed object is then reported as an error to the caller, and
dlt-system is not aborted. The other hunks make the same change in
bump_entry_array() and the journal_file_move_to_entry_*_for_data() functions.
The fix is upstream commit 5ee8b3edb385 (v258-rc1) and applies cleanly to
255.21. I'll send a v2 with this explanation added to the commit message.
Thanks,
Suresh H A
________________________________
From: Yoann Congal <[email protected]>
Sent: 02 October 2026 15:17
To: Suresh H A - UpStream <[email protected]>;
[email protected]
<[email protected]>; Suresh H A
<[email protected]>
Cc: Suresh H A <[email protected]>
Subject: Re: [OE-core] [poky][scarthgap][PATCH] systemd: replace a bunch of
assert() with friendlier checks
Caution: "External email, be cautious especially with link(s), attachment(s) or
QR code(s)".
On Wed Sep 2, 2026 at 10:17 AM CEST, Suresh H A via lists.openembedded.org
wrote:
> From: Suresh H A <[email protected]>
>
> Backport a patch that replaces a bunch of assert() with friendlier checks
> Fix is already available since systemd v258-rc1.
>
> Signed-off-by: Suresh H A <[email protected]>
> ---
> ...a-bunch-of-assert-with-friendlier-ch.patch | 108 ++++++++++++++++++
> meta/recipes-core/systemd/systemd_255.21.bb | 1 +
> 2 files changed, 109 insertions(+)
> create mode 100644
> meta/recipes-core/systemd/systemd/0023-journal-replace-a-bunch-of-assert-with-friendlier-ch.patch
Hello,
What problem is this trying to fix? Did you triggered those assert() in
a project?
In itself, the patch looks fine but I have to make sure there is a real
reason for merging it. Can you send a v2 with a little more information
about that?
Thanks!
--
Yoann Congal
Smile ECS
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#247193):
https://lists.openembedded.org/g/openembedded-core/message/247193
Mute This Topic: https://lists.openembedded.org/mt/121047990/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-