Skip to content
Success

#26460 (Jan 22, 2026, 3:19:29 PM)

Started 25 days ago
Took 5.3 sec on build5-deb12build-ansible

Started by upstream project gerrit-libosmocore build number 2224
originally caused by:

This run spent:

  • 57 sec waiting;
  • 5.3 sec build duration;
  • 1 min 2 sec total from scheduled to completion.
Revision: c485733bcbbe974e4a06ac996dd29a9671a5a037
Repository: $GERRIT_REPO_URL
  • master
osmo_io: Support rx of segments up to ~UINT16_MAX

Previously if we recevied a big chunk (near UINT16_MAX), we would hit
the following assert in iofd_msgb_alloc2(), because our msgb
implementation can only handle sizes up to 16 bit length, counting
headroom + data length:
"OSMO_ASSERT(size + headroom <= 0xffff);".

This new improved logic allows handling segments of up to ~UINT16_MAX
which may come in in multiple read calls. It also adds logic to catch
received segments greater than UINT16_MAX (or buggy segment_cb or buggy
peer transmitting to us) and notifies the user of a broken stream
through read_cb() in that case.

test_segmentation_uint16_max() is added to osmo_io_test, which would
abort without this patch applied.

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