Skip to content

Loading builds...

Changes

#2371 (Mar 13, 2026, 5:44:10 PM)

osmo_io: Rewrite iofd_handle_send_completion() to fix multiple issues

Previous implementation had multiple issues, which this patch addresses:
* Didn't call user cb updating completed bytes for a given msg which had
  a partial write.
* rc checks against "Incomplete write" were wrong, because rc was not
  being decremented with previous msgs idxs being processed.
* Didn't take into account the write(0, fd, buf) = 0 valid user case for
  regular files.

The rewrite also simplifies the logic by splitting the "rc < 0" (error) paths
from the "rc >= 0" (successful) paths.

Related: SYS#7842
Change-Id: Ia016e4df7be5e534a8212f7271caff9779e08eb1
Pau Espin Pedrol at

#2370 (Mar 10, 2026, 4:27:57 PM)

core: fix config.h

While exploring why logging is disabled but still shows up in the binaries
I kind of wondered how all the config.h HAVE_XX checks we have everwhere work.
Apparently they do not work at all, due to missing or misplaced include of config.h.

This affects tons of other checks as well.

The jenkins hook ensures the include order is checked to ensure config.h
does not get misplaced or lost in the future.

Change-Id: Ic2cf52a3b60f43a2f5d3fe01c41a41f6fd9a8000
ewild at

#2369 (Mar 10, 2026, 4:11:32 PM)

core: fix config.h

While exploring why logging is disabled but still shows up in the binaries
I kind of wondered how all the config.h HAVE_XX checks we have everwhere work.
Apparently they do not work at all, due to missing or misplaced include of config.h.

This affects tons of other checks as well.

The jenkins hook ensures the include order is checked to ensure config.h
does not get misplaced or lost in the future.

Change-Id: Ic2cf52a3b60f43a2f5d3fe01c41a41f6fd9a8000
ewild at

#2368 (Mar 10, 2026, 1:36:11 PM)

sane embedded builds without host talloc

So far host talloc was always required.
This fixes this up to only build a subset of stuff
that actually works for embedded targets while
using the pseudotalloc header file, and the actual
firmware can supply its own talloc, without
involving some random build system supplied talloc
headers.

Unfortunately static symbols can't really be weak,
so just going for always-on weak pseudotalloc does
not work.

Change-Id: Ibb309a01ac6cad827b33ac18be408be1ac2cf7e0
ewild at

#2367 (Mar 3, 2026, 4:55:37 PM)

Bump version: 1.13.0.1-6d38 → 1.13.1

Change-Id: Ic648f4165427d04b25855d7c42d3b44ba155e1ad
Pau Espin Pedrol at

#2366 (Feb 25, 2026, 4:53:24 PM)

fix --disable-log-macros

Before 9197c1ac, the AC_ARG_ENABLE(log_macros, ...)
action was hardcoded to [log_macros="yes"], so *any*
use of the flag --enable-log-macros or --disable-log-macros
would set log_macros="yes" -> AC_DEFINE([LIBOSMOCORE_NO_LOGGING]).

The commit changed this to the standard [log_macros=$enableval], but
broke the conditional test, so
- AC_ARG_ENABLE sets $enableval to "no" for --disable-* flags
-> log_macros is now "no"
-> test fails
-> LIBOSMOCORE_NO_LOGGING is never defined...

The opposite of what it should do...

Change-Id: I809ab2f61e72428ba21061055296eb83d6d710ab
ewild at

#2365 (Feb 25, 2026, 4:53:22 PM)

core: fix config.h

While exploring why logging is disabled but still shows up in the binaries
I kind of wondered how all the config.h HAVE_XX checks we have everwhere work.
Apparently they do not work at all, due to missing or misplaced include of config.h.

This affects tons of other checks as well.

Change-Id: Ic2cf52a3b60f43a2f5d3fe01c41a41f6fd9a8000
ewild at

#2364 (Feb 25, 2026, 4:39:58 PM)

core: fix config.h

While exploring why logging is disabled but still shows up in the binaries
I kind of wondered how all the config.h HAVE_XX checks we have everwhere work.
Apparently they do not work at all, due to missing or misplaced include of config.h.

This affects tons of other checks as well.

Change-Id: Ic2cf52a3b60f43a2f5d3fe01c41a41f6fd9a8000
ewild at

#2363 (Feb 25, 2026, 4:39:58 PM)

fix --disable-log-macros

Before 9197c1ac, the AC_ARG_ENABLE(log_macros, ...)
action was hardcoded to [log_macros="yes"], so *any*
use of the flag --enable-log-macros or --disable-log-macros
would set log_macros="yes" -> AC_DEFINE([LIBOSMOCORE_NO_LOGGING]).

The commit changed this to the standard [log_macros=$enableval], but
broke the conditional test, so
- AC_ARG_ENABLE sets $enableval to "no" for --disable-* flags
-> log_macros is now "no"
-> test fails
-> LIBOSMOCORE_NO_LOGGING is never defined...

The opposite of what it should do...

Change-Id: I809ab2f61e72428ba21061055296eb83d6d710ab
ewild at

#2362 (Feb 25, 2026, 4:34:43 PM)

core: fix config.h

While exploring why logging is disabled but still shows up in the binaries
I kind of wondered how all the config.h HAVE_XX checks we have everwhere work.
Apparently they do not work at all, due to missing or misplaced include of config.h.

This affects tons of other checks as well.

Change-Id: Ic2cf52a3b60f43a2f5d3fe01c41a41f6fd9a8000
ewild at

#2361 (Feb 25, 2026, 4:34:43 PM)

fix --disable-log-macros

Before 9197c1ac, the AC_ARG_ENABLE(log_macros, ...)
action was hardcoded to [log_macros="yes"], so *any*
use of the flag --enable-log-macros or --disable-log-macros
would set log_macros="yes" -> AC_DEFINE([LIBOSMOCORE_NO_LOGGING]).

The commit changed this to the standard [log_macros=$enableval], but
broke the conditional test, so
- AC_ARG_ENABLE sets $enableval to "no" for --disable-* flags
-> log_macros is now "no"
-> test fails
-> LIBOSMOCORE_NO_LOGGING is never defined...

The opposite of what it should do...

Change-Id: I809ab2f61e72428ba21061055296eb83d6d710ab
ewild at

#2360 (Feb 25, 2026, 3:24:20 PM)

core: fix config.h

While exploring why logging is disabled but still shows up in the binaries
I kind of wondered how all the config.h HAVE_XX checks we have everwhere work.
Apparently they do not work at all, due to missing or misplaced include of config.h.

This affects tons of other checks as well.

Change-Id: Ic2cf52a3b60f43a2f5d3fe01c41a41f6fd9a8000
ewild at

#2359 (Feb 25, 2026, 1:32:31 PM)

fix --disable-log-macros

Before 9197c1ac, the AC_ARG_ENABLE(log_macros, ...)
action was hardcoded to [log_macros="yes"], so *any*
use of the flag --enable-log-macros or --disable-log-macros
would set log_macros="yes" -> AC_DEFINE([LIBOSMOCORE_NO_LOGGING]).

The commit changed this to the standard [log_macros=$enableval], but
broke the conditional test, so
- AC_ARG_ENABLE sets $enableval to "no" for --disable-* flags
-> log_macros is now "no"
-> test fails
-> LIBOSMOCORE_NO_LOGGING is never defined...

The opposite of what it should do...

Change-Id: I809ab2f61e72428ba21061055296eb83d6d710ab
ewild at

#2358 (Feb 19, 2026, 11:41:46 AM)

Bump version: 1.12.0.73-10f3 → 1.13.0

Change-Id: I877d255890a525a34fbf89101b3ff0bbd0989c87
Pau Espin Pedrol at