Isar v1.1 Release Candidate 2

13 views
Skip to first unread message

Zhihang Wei

unread,
May 4, 2026, 6:02:03 AM (6 days ago) May 4
to isar-users
Hi everyone,

I have just tagged v1.1-rc2 as release candidate 2 for Isar v1.1.

Please test on your downstream if necessary. Feedback is welcome.

Thank you.
Zhihang

Jan Kiszka

unread,
May 4, 2026, 4:06:23 PM (5 days ago) May 4
to Zhihang Wei, isar-users
On 04.05.26 12:01, Zhihang Wei wrote:
> Hi everyone,
>
> I have just tagged v1.1-rc2 as release candidate 2 for Isar v1.1.
>
> Please test on your downstream if necessary. Feedback is welcome.
>

Looks good. Here is a successful run with isar-cip-core:

https://gitlab.com/cip-project/cip-core/isar-cip-core/-/pipelines/2498389311

Jan

--
Siemens AG, Foundational Technologies
Linux Expert Center

Roberto A. Foglietta

unread,
May 4, 2026, 6:10:20 PM (5 days ago) May 4
to Zhihang Wei, isar-users
On Mon, 4 May 2026 at 12:02, Zhihang Wei <w...@ilbers.de> wrote:
>
> Hi everyone,
>
> I have just tagged v1.1-rc2 as release candidate 2 for Isar v1.1.
>

Hi, I propose you consider a couple of patches of mine
for busybox to include in ISAR as external patches.

URL: https://github.com/robang74/busybox/tree/master/patches

patches/
- 0004-replacing-time-functions-for-thread-reentrant-safety-v2.patch

Replacing time functions for thread & reentrant safety, patchset v2

The listed changes following a static code inspection by one of
the most used automatic analyser and reported as critical flaws
but usually BusyBox is compiled static and leverages the fork()
magic which on modern architectures do a copy in memory of the
whole process by copy-on-write (CoW) optimisation.

The functions ctime(), gmtime() and localtime() which uses a static
buffer thus are not re-entrant / thread-safe, and in BusyBox their use
correctly addresses their limitation in the most common scenario above
depicted. However, fork() has its own use cases limitations as well.

The fork() isn't available on no-MMU architectures which usually rely
on vfork() while dynamic cpu/mem allocation in cloud infrastructure is
the opposite architecture spectrum edge in which fork() magic (CoW)
starts to face drawbacks. Plus libc-pthreaded despite being not common
are other cases in which reentrant / thread safety is required.

This patch replaces all those function with their _r() counterparts,
and move BusyBox development/ maintenance towards new frontiers, but
it brings also a penalty in terms of footprint increase:

text data bss dec hex filename
1155501 18124 2056 1175681 11f081 busybox
1155856 18124 2056 1176036 11f1e4 busybox
Total 19 fixes: +355
-Difference v2: -57
1155799 18124 2056 1175979 11f1ab busybox
Total 19 fixes: +298

Actually, it is 253 ppm on an almost-all-yes dynamic compiled BusyBox
but on a static linked ELF this figure can be halved or marginalised
by including a subset of commands. Below a static musl-compiled elf64
using more common commands subset:

text data bss dec hex filename
578882 855 6248 585985 8f101 bbox/busybox.elf
578953 855 6248 586056 8f148 bbox/busybox.elf
Total v1: +71

Moreover, LTO linking as well as milder optimisation than -Os like -O1
can have a 25-33% impact on the size but where CPU process caching is
a relevant factor that can speed up a process run in the way size-only
reduction cannot achieve.

Climbing a mountain starts with a first step towards it.


Best regards,

--
Roberto A. Foglietta
+49.176.274.75.661
+39.349.33.30.697

Roberto A. Foglietta

unread,
May 4, 2026, 6:16:31 PM (5 days ago) May 4
to Zhihang Wei, isar-users
On Mon, 4 May 2026 at 12:02, Zhihang Wei <w...@ilbers.de> wrote:
>
> Hi everyone,
>
> I have just tagged v1.1-rc2 as release candidate 2 for Isar v1.1.
>
> Please test on your downstream if necessary. Feedback is welcome.
>

Hi, I propose you consider a couple of patches of mine
for busybox to include in ISAR as external patches.

WHY APPLY THIS ONE IN PARTICULAR?

https://github.com/robang74/busybox/blob/master/TODO.md#awk

In this case, using awk w/ CONVFMT and a properly forged text string
containing %1337c%n due to arbitrary of 1337 (at my will) and %n
property I could **POTENTIALLY** escalate the privileges to root. In
fact busybox is a single binary usually with SUID attribute and the
fork() brings the whole process in memory usually in CoW mode,
including those applets that can run with root privileges by SUID
(cfr. man chmod +s).

URL: https://github.com/robang74/busybox/tree/master/patches

patches/
- 0002-awk-minimalist-approach-to-fix-some-unsupported-cases-v4.patch

awk: numeric identifiers full recognition, +65b (patchset v4)

Fixing: two major issues like walking %016llx and writing %n
Extend: support for "%fpx", keep "pi:%f" and earn "pi: %f deg"
Testing: editors/awk_printx_tests.sh added new (only visual)

./busybox awk 'BEGIN { CONVFMT="%nf"; x=3.14; print x "" }';
./busybox awk 'BEGIN { CONVFMT="%.2f OK f"; x=3.14; print x "" }';
./busybox awk 'BEGIN { CONVFMT="%.2fpi %016llx f"; x=3.14; print x "" }';
./busybox awk 'BEGIN { CONVFMT="walk: %.2fpi %016llx "; x=3.14; print x "" }'
./busybox awk 'BEGIN { CONVFMT="OK pi: %.2fx"; x=3.14; print x "" }'
./busybox awk 'BEGIN { CONVFMT="%.2fOKpi"; x=3.14; print x "" }'

text data bss dec hex filename
19338 0 0 19338 4b8a editors/awk.o
Fixing: +51
19389 0 0 19389 4bbd editors/awk.o
Extend: +16
19405 0 0 19405 4bcd editors/awk.o
Coding: -2
19403 0 0 19403 4bcb editors/awk.o

MOESSBAUER, Felix

unread,
May 5, 2026, 3:24:01 AM (5 days ago) May 5
to Zhihang Wei, isar-users
On Mon, 2026-05-04 at 12:01 +0200, Zhihang Wei wrote:
> Hi everyone,
>
> I have just tagged v1.1-rc2 as release candidate 2 for Isar v1.1.
>
> Please test on your downstream if necessary. Feedback is welcome.

Successfully tested with rpi4b-ebg of MTDA layer (which also uses cip).
Thanks.

Felix

>
> Thank you.
> Zhihang
>
> --
> You received this message because you are subscribed to the Google Groups "isar-users" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to isar-users+...@googlegroups.com.
> To view this discussion visit https://groups.google.com/d/msgid/isar-users/c14233d8-6e6a-41c8-9e4c-b98f72219b3f%40ilbers.de.

Roberto A. Foglietta

unread,
May 7, 2026, 4:24:14 PM (2 days ago) May 7
to Zhihang Wei, isar-users
On Tue, 5 May 2026 at 00:15, Roberto A. Foglietta
<roberto....@gmail.com> wrote:
>
...
> Hi, I propose you consider a couple of patches of mine
> for busybox to include in ISAR as external patches.
>
> WHY APPLY THIS ONE IN PARTICULAR?
>
> https://github.com/robang74/busybox/blob/master/TODO.md#awk
>
....
>
> URL: https://github.com/robang74/busybox/tree/master/patches
>

Both urls have been updated with v6, which hopefully will be the last
one unless other corner cases will pop-up.

patches/
0008-awk-minimalist-approach-to-fix-some-unsupported-cases-v6.patch

Regressions expected are those already warned about moving that part
of awk from a simpler to a more compliant way of operating regarding
printf format.

Increase footprint 14 bytes, and 70 bytes for the desktop version
which support users to debug their awk script. An option usually
welcomed in a transitional phase.

Best regards,
Reply all
Reply to author
Forward
0 new messages