<matrixProject _class='hudson.matrix.MatrixProject'><action _class='hudson.model.ParametersDefinitionProperty'><parameterDefinition _class='hudson.model.StringParameterDefinition'><defaultParameterValue _class='hudson.model.StringParameterValue'><name>BRANCH_CI</name><value>master</value></defaultParameterValue><description>osmo-ci.git branch
</description><name>BRANCH_CI</name><type>StringParameterDefinition</type></parameterDefinition><parameterDefinition _class='hudson.model.StringParameterDefinition'><defaultParameterValue _class='hudson.model.StringParameterValue'><name>COMMENT_TYPE</name><value></value></defaultParameterValue><description>set by gerrit verification pipeline job</description><name>COMMENT_TYPE</name><type>StringParameterDefinition</type></parameterDefinition><parameterDefinition _class='hudson.model.StringParameterDefinition'><defaultParameterValue _class='hudson.model.StringParameterValue'><name>DISTRO</name><value></value></defaultParameterValue><description>set by gerrit verification pipeline job</description><name>DISTRO</name><type>StringParameterDefinition</type></parameterDefinition><parameterDefinition _class='hudson.model.StringParameterDefinition'><defaultParameterValue _class='hudson.model.StringParameterValue'><name>GERRIT_BRANCH</name><value></value></defaultParameterValue><description>set by gerrit verification pipeline job</description><name>GERRIT_BRANCH</name><type>StringParameterDefinition</type></parameterDefinition><parameterDefinition _class='hudson.model.StringParameterDefinition'><defaultParameterValue _class='hudson.model.StringParameterValue'><name>GERRIT_CHANGE_NUMBER</name><value></value></defaultParameterValue><description>set by gerrit verification pipeline job</description><name>GERRIT_CHANGE_NUMBER</name><type>StringParameterDefinition</type></parameterDefinition><parameterDefinition _class='hudson.model.StringParameterDefinition'><defaultParameterValue _class='hudson.model.StringParameterValue'><name>GERRIT_HOST</name><value></value></defaultParameterValue><description>set by gerrit verification pipeline job</description><name>GERRIT_HOST</name><type>StringParameterDefinition</type></parameterDefinition><parameterDefinition _class='hudson.model.StringParameterDefinition'><defaultParameterValue _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_NUMBER</name><value></value></defaultParameterValue><description>set by gerrit verification pipeline job</description><name>GERRIT_PATCHSET_NUMBER</name><type>StringParameterDefinition</type></parameterDefinition><parameterDefinition _class='hudson.model.StringParameterDefinition'><defaultParameterValue _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_REVISION</name><value></value></defaultParameterValue><description>set by gerrit verification pipeline job</description><name>GERRIT_PATCHSET_REVISION</name><type>StringParameterDefinition</type></parameterDefinition><parameterDefinition _class='hudson.model.StringParameterDefinition'><defaultParameterValue _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_UPLOADER_NAME</name><value></value></defaultParameterValue><description>set by gerrit verification pipeline job</description><name>GERRIT_PATCHSET_UPLOADER_NAME</name><type>StringParameterDefinition</type></parameterDefinition><parameterDefinition _class='hudson.model.StringParameterDefinition'><defaultParameterValue _class='hudson.model.StringParameterValue'><name>GERRIT_PORT</name><value></value></defaultParameterValue><description>set by gerrit verification pipeline job</description><name>GERRIT_PORT</name><type>StringParameterDefinition</type></parameterDefinition><parameterDefinition _class='hudson.model.StringParameterDefinition'><defaultParameterValue _class='hudson.model.StringParameterValue'><name>GERRIT_PROJECT</name><value></value></defaultParameterValue><description>set by gerrit verification pipeline job</description><name>GERRIT_PROJECT</name><type>StringParameterDefinition</type></parameterDefinition><parameterDefinition _class='hudson.model.StringParameterDefinition'><defaultParameterValue _class='hudson.model.StringParameterValue'><name>GERRIT_REFSPEC</name><value></value></defaultParameterValue><description>set by gerrit verification pipeline job</description><name>GERRIT_REFSPEC</name><type>StringParameterDefinition</type></parameterDefinition><parameterDefinition _class='hudson.model.StringParameterDefinition'><defaultParameterValue _class='hudson.model.StringParameterValue'><name>GERRIT_REPO_URL</name><value></value></defaultParameterValue><description>set by gerrit verification pipeline job</description><name>GERRIT_REPO_URL</name><type>StringParameterDefinition</type></parameterDefinition><parameterDefinition _class='hudson.model.StringParameterDefinition'><defaultParameterValue _class='hudson.model.StringParameterValue'><name>PIPELINE_BUILD_URL</name><value></value></defaultParameterValue><description>set by gerrit verification pipeline job</description><name>PIPELINE_BUILD_URL</name><type>StringParameterDefinition</type></parameterDefinition><parameterDefinition _class='hudson.model.StringParameterDefinition'><defaultParameterValue _class='hudson.model.StringParameterValue'><name>PROJECT_NAME</name><value></value></defaultParameterValue><description>set by gerrit verification pipeline job</description><name>PROJECT_NAME</name><type>StringParameterDefinition</type></parameterDefinition></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.JobDisplayAction'><displayUrl>https://jenkins.osmocom.org/jenkins/view/All/job/gerrit-libosmocore-build/</displayUrl></action><action _class='org.jenkinsci.plugins.testresultsanalyzer.TestResultsAnalyzerAction'></action><action _class='com.cloudbees.plugins.credentials.ViewCredentialsAction'><stores></stores></action><description>Build job of CI for patches sent to
&lt;a href="https://gerrit.osmocom.org/#/q/status:open+project:libosmocore"&gt;libosmocore&lt;/a&gt;
&lt;br/&gt;&lt;br/&gt;
&lt;b&gt;Auto-generated using Jenkins Job Builder. DO NOT EDIT MANUALLY!&lt;/b&gt;
&lt;!-- Managed by Jenkins Job Builder --&gt;</description><displayName>gerrit-libosmocore-build</displayName><fullDisplayName>gerrit-libosmocore-build</fullDisplayName><fullName>gerrit-libosmocore-build</fullName><name>gerrit-libosmocore-build</name><url>https://jenkins.osmocom.org/jenkins/view/All/job/gerrit-libosmocore-build/</url><buildable>true</buildable><build _class='hudson.matrix.MatrixBuild'><action _class='hudson.model.CauseAction'><cause _class='org.jenkinsci.plugins.workflow.support.steps.build.BuildUpstreamCause'><shortDescription>Started by upstream project "gerrit-libosmocore" build number 2,387</shortDescription><upstreamBuild>2387</upstreamBuild><upstreamProject>gerrit-libosmocore</upstreamProject><upstreamUrl>job/gerrit-libosmocore/</upstreamUrl></cause></action><action></action><action></action><action _class='hudson.model.ParametersAction'><parameter _class='hudson.model.StringParameterValue'><name>COMMENT_TYPE</name><value></value></parameter><parameter _class='hudson.model.StringParameterValue'><name>DISTRO</name><value></value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_BRANCH</name><value>master</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_CHANGE_NUMBER</name><value>42638</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_HOST</name><value>gerrit.osmocom.org</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_NUMBER</name><value>2</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_REVISION</name><value>3021739a6072c60295dcea08c160cde22b8f4eca</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_UPLOADER_NAME</name><value>fixeria</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PORT</name><value>29418</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PROJECT</name><value>libosmocore</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_REFSPEC</name><value>refs/changes/38/42638/2</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_REPO_URL</name><value>ssh://jenkins@gerrit.osmocom.org:29418/libosmocore</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>PIPELINE_BUILD_URL</name><value>https://jenkins.osmocom.org/jenkins/job/gerrit-libosmocore/2387/</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>PROJECT_NAME</name><value>libosmocore</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>BRANCH_CI</name><value>master</value></parameter></action><action _class='jenkins.metrics.impl.TimeInQueueAction'><blockedDurationMillis>0</blockedDurationMillis><blockedTimeMillis>0</blockedTimeMillis><buildableDurationMillis>0</buildableDurationMillis><buildableTimeMillis>0</buildableTimeMillis><buildingDurationMillis>191060</buildingDurationMillis><executingTimeMillis>191060</executingTimeMillis><executorUtilization>1.0</executorUtilization><subTaskCount>0</subTaskCount><waitingDurationMillis>5087</waitingDurationMillis><waitingTimeMillis>5087</waitingTimeMillis></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><osmith1.9.1 _class='hudson.plugins.git.util.Build'><buildNumber>1315</buildNumber><marked><SHA1>197248107c5c2007b44c4df1bec011e6c1754cda</SHA1><branch><SHA1>197248107c5c2007b44c4df1bec011e6c1754cda</SHA1><name>osmith/1.9.1</name></branch></marked><revision><SHA1>197248107c5c2007b44c4df1bec011e6c1754cda</SHA1><branch><SHA1>197248107c5c2007b44c4df1bec011e6c1754cda</SHA1><name>osmith/1.9.1</name></branch></revision></osmith1.9.1><pespinrel-1.12.0 _class='hudson.plugins.git.util.Build'><buildNumber>2156</buildNumber><marked><SHA1>d38417e5965ae02eaffdd87d281098f30105b8b7</SHA1><branch><SHA1>d38417e5965ae02eaffdd87d281098f30105b8b7</SHA1><name>pespin/rel-1.12.0</name></branch></marked><revision><SHA1>d38417e5965ae02eaffdd87d281098f30105b8b7</SHA1><branch><SHA1>d38417e5965ae02eaffdd87d281098f30105b8b7</SHA1><name>pespin/rel-1.12.0</name></branch></revision></pespinrel-1.12.0><osmith1.9.2 _class='hudson.plugins.git.util.Build'><buildNumber>1319</buildNumber><marked><SHA1>3f0bbe398e16513906d29802d058a87655fceaf1</SHA1><branch><SHA1>3f0bbe398e16513906d29802d058a87655fceaf1</SHA1><name>osmith/1.9.2</name></branch></marked><revision><SHA1>3f0bbe398e16513906d29802d058a87655fceaf1</SHA1><branch><SHA1>3f0bbe398e16513906d29802d058a87655fceaf1</SHA1><name>osmith/1.9.2</name></branch></revision></osmith1.9.2><osmithwip _class='hudson.plugins.git.util.Build'><buildNumber>1773</buildNumber><marked><SHA1>aa177c0f4457df953e3e6e121e8806a4cf403d72</SHA1><branch><SHA1>aa177c0f4457df953e3e6e121e8806a4cf403d72</SHA1><name>osmith/wip</name></branch></marked><revision><SHA1>aa177c0f4457df953e3e6e121e8806a4cf403d72</SHA1><branch><SHA1>aa177c0f4457df953e3e6e121e8806a4cf403d72</SHA1><name>osmith/wip</name></branch></revision></osmithwip><pespinrel-1.10.0 _class='hudson.plugins.git.util.Build'><buildNumber>1877</buildNumber><marked><SHA1>a32a6ee4a6532e0c1d358ecebb8f13b8acc75dc1</SHA1><branch><SHA1>a32a6ee4a6532e0c1d358ecebb8f13b8acc75dc1</SHA1><name>pespin/rel-1.10.0</name></branch></marked><revision><SHA1>a32a6ee4a6532e0c1d358ecebb8f13b8acc75dc1</SHA1><branch><SHA1>a32a6ee4a6532e0c1d358ecebb8f13b8acc75dc1</SHA1><name>pespin/rel-1.10.0</name></branch></revision></pespinrel-1.10.0><osmith1.11.2 _class='hudson.plugins.git.util.Build'><buildNumber>2093</buildNumber><marked><SHA1>22a11a35e3feec31b86738d19f3d85406feb099a</SHA1><branch><SHA1>22a11a35e3feec31b86738d19f3d85406feb099a</SHA1><name>osmith/1.11.2</name></branch></marked><revision><SHA1>22a11a35e3feec31b86738d19f3d85406feb099a</SHA1><branch><SHA1>22a11a35e3feec31b86738d19f3d85406feb099a</SHA1><name>osmith/1.11.2</name></branch></revision></osmith1.11.2><osmith1.11.3 _class='hudson.plugins.git.util.Build'><buildNumber>2118</buildNumber><marked><SHA1>17ca3339e13d779a330781334e92f48d7ea87d36</SHA1><branch><SHA1>17ca3339e13d779a330781334e92f48d7ea87d36</SHA1><name>osmith/1.11.3</name></branch></marked><revision><SHA1>17ca3339e13d779a330781334e92f48d7ea87d36</SHA1><branch><SHA1>17ca3339e13d779a330781334e92f48d7ea87d36</SHA1><name>osmith/1.11.3</name></branch></revision></osmith1.11.3><rel-1.9.1 _class='hudson.plugins.git.util.Build'><buildNumber>1740</buildNumber><marked><SHA1>3a1bb866bbc481b379034723ede51a2e4e8b9c65</SHA1><branch><SHA1>3a1bb866bbc481b379034723ede51a2e4e8b9c65</SHA1><name>rel-1.9.1</name></branch></marked><revision><SHA1>3a1bb866bbc481b379034723ede51a2e4e8b9c65</SHA1><branch><SHA1>3a1bb866bbc481b379034723ede51a2e4e8b9c65</SHA1><name>rel-1.9.1</name></branch></revision></rel-1.9.1><arehbeinosmo_io_ipa _class='hudson.plugins.git.util.Build'><buildNumber>833</buildNumber><marked><SHA1>d75a0cca8117b609da75111388bf8baea5dac0a5</SHA1><branch><SHA1>d75a0cca8117b609da75111388bf8baea5dac0a5</SHA1><name>arehbein/osmo_io_ipa</name></branch></marked><revision><SHA1>d75a0cca8117b609da75111388bf8baea5dac0a5</SHA1><branch><SHA1>d75a0cca8117b609da75111388bf8baea5dac0a5</SHA1><name>arehbein/osmo_io_ipa</name></branch></revision></arehbeinosmo_io_ipa><rel-1.11.1 _class='hudson.plugins.git.util.Build'><buildNumber>1946</buildNumber><marked><SHA1>87de74a9f5835fb56a4758860aea3e673c29060e</SHA1><branch><SHA1>87de74a9f5835fb56a4758860aea3e673c29060e</SHA1><name>rel-1.11.1</name></branch></marked><revision><SHA1>87de74a9f5835fb56a4758860aea3e673c29060e</SHA1><branch><SHA1>87de74a9f5835fb56a4758860aea3e673c29060e</SHA1><name>rel-1.11.1</name></branch></revision></rel-1.11.1><rel-1.9.3 _class='hudson.plugins.git.util.Build'><buildNumber>1743</buildNumber><marked><SHA1>55ea51049775e623880f62026ad827f580aec7a2</SHA1><branch><SHA1>55ea51049775e623880f62026ad827f580aec7a2</SHA1><name>rel-1.9.3</name></branch></marked><revision><SHA1>55ea51049775e623880f62026ad827f580aec7a2</SHA1><branch><SHA1>55ea51049775e623880f62026ad827f580aec7a2</SHA1><name>rel-1.9.3</name></branch></revision></rel-1.9.3><master _class='hudson.plugins.git.util.Build'><buildNumber>2388</buildNumber><marked><SHA1>3021739a6072c60295dcea08c160cde22b8f4eca</SHA1><branch><SHA1>3021739a6072c60295dcea08c160cde22b8f4eca</SHA1><name>master</name></branch></marked><revision><SHA1>3021739a6072c60295dcea08c160cde22b8f4eca</SHA1><branch><SHA1>3021739a6072c60295dcea08c160cde22b8f4eca</SHA1><name>master</name></branch></revision></master></buildsByBranchName><lastBuiltRevision><SHA1>3021739a6072c60295dcea08c160cde22b8f4eca</SHA1><branch><SHA1>3021739a6072c60295dcea08c160cde22b8f4eca</SHA1><name>master</name></branch></lastBuiltRevision><remoteUrl>ssh://jenkins@gerrit.osmocom.org:29418/libosmocore</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><building>false</building><displayName>#2388</displayName><duration>191060</duration><estimatedDuration>182795</estimatedDuration><fullDisplayName>gerrit-libosmocore-build #2388</fullDisplayName><id>2388</id><inProgress>false</inProgress><keepLog>false</keepLog><number>2388</number><queueId>91066</queueId><result>SUCCESS</result><timestamp>1776433769256</timestamp><url>https://jenkins.osmocom.org/jenkins/view/All/job/gerrit-libosmocore-build/2388/</url><builtOn></builtOn><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tests/testsuite.at</affectedPath><affectedPath>src/core/osmo_io.c</affectedPath><affectedPath>tests/osmo_io/osmo_io_backpressure_test.c</affectedPath><affectedPath>tests/osmo_io/osmo_io_backpressure_test_uring.ok</affectedPath><affectedPath>tests/osmo_io/osmo_io_backpressure_test.ok</affectedPath><affectedPath>tests/Makefile.am</affectedPath><commitId>3021739a6072c60295dcea08c160cde22b8f4eca</commitId><timestamp>1776433625000</timestamp><author><absoluteUrl>https://jenkins.osmocom.org/jenkins/user/fixeria</absoluteUrl><fullName>Vadim Yanitskiy</fullName></author><authorEmail>vyanitskiy@sysmocom.de</authorEmail><comment>osmo_io: iofd_txqueue_dequeue(): fix double next-&gt;io_len decrement

The fill-up logic in iofd_txqueue_dequeue() was incorrectly
decrementing next-&gt;io_len twice: once when removing a buffer that
didn't fit, and again when assigning to msg_iovlen.  This may cause
next-&gt;io_len to reach 0 and trigger an assert at osmo_io.c:274:

  Assert failed next-&gt;io_len &gt; 0

Add separate osmo_io_backpressure_test to verify queue management
under network backpressure conditions.  Use separate .ok files for
poll vs io_uring backends since they produce different I/O patterns.
This unit test reproduces the assert when the fix is not applied.

Change-Id: Ia96e25d11d8d683fa9dd0c56bdac257992edd782
Fixes: 3c2a02db4 ("osmo-io: Put together message buffers when dequeued from tx queue")
Related: OS#6997
</comment><date>2026-04-17 20:47:05 +0700</date><id>3021739a6072c60295dcea08c160cde22b8f4eca</id><msg>osmo_io: iofd_txqueue_dequeue(): fix double next-&gt;io_len decrement</msg><path><editType>add</editType><file>tests/osmo_io/osmo_io_backpressure_test.ok</file></path><path><editType>edit</editType><file>tests/testsuite.at</file></path><path><editType>add</editType><file>tests/osmo_io/osmo_io_backpressure_test.c</file></path><path><editType>edit</editType><file>src/core/osmo_io.c</file></path><path><editType>add</editType><file>tests/osmo_io/osmo_io_backpressure_test_uring.ok</file></path><path><editType>edit</editType><file>tests/Makefile.am</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>https://jenkins.osmocom.org/jenkins/user/fixeria</absoluteUrl><fullName>Vadim Yanitskiy</fullName></culprit><run><number>2388</number><url>https://jenkins.osmocom.org/jenkins/view/All/job/gerrit-libosmocore-build/a2=default,a3=default,a4=default,arch=amd64,label=io_uring/2388/</url></run><run><number>2388</number><url>https://jenkins.osmocom.org/jenkins/view/All/job/gerrit-libosmocore-build/a2=default,a3=default,a4=default,arch=arm-none-eabi,label=io_uring/2388/</url></run></build><build _class='hudson.matrix.MatrixBuild'><action _class='hudson.model.CauseAction'><cause _class='org.jenkinsci.plugins.workflow.support.steps.build.BuildUpstreamCause'><shortDescription>Started by upstream project "gerrit-libosmocore" build number 2,386</shortDescription><upstreamBuild>2386</upstreamBuild><upstreamProject>gerrit-libosmocore</upstreamProject><upstreamUrl>job/gerrit-libosmocore/</upstreamUrl></cause></action><action></action><action></action><action _class='hudson.model.ParametersAction'><parameter _class='hudson.model.StringParameterValue'><name>COMMENT_TYPE</name><value></value></parameter><parameter _class='hudson.model.StringParameterValue'><name>DISTRO</name><value></value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_BRANCH</name><value>master</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_CHANGE_NUMBER</name><value>42638</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_HOST</name><value>gerrit.osmocom.org</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_NUMBER</name><value>1</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_REVISION</name><value>cd6ac2a29546f3f76584f3c52ea92891dec40bef</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_UPLOADER_NAME</name><value>fixeria</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PORT</name><value>29418</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PROJECT</name><value>libosmocore</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_REFSPEC</name><value>refs/changes/38/42638/1</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_REPO_URL</name><value>ssh://jenkins@gerrit.osmocom.org:29418/libosmocore</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>PIPELINE_BUILD_URL</name><value>https://jenkins.osmocom.org/jenkins/job/gerrit-libosmocore/2386/</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>PROJECT_NAME</name><value>libosmocore</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>BRANCH_CI</name><value>master</value></parameter></action><action _class='jenkins.metrics.impl.TimeInQueueAction'><blockedDurationMillis>0</blockedDurationMillis><blockedTimeMillis>0</blockedTimeMillis><buildableDurationMillis>0</buildableDurationMillis><buildableTimeMillis>0</buildableTimeMillis><buildingDurationMillis>185811</buildingDurationMillis><executingTimeMillis>185811</executingTimeMillis><executorUtilization>1.0</executorUtilization><subTaskCount>0</subTaskCount><waitingDurationMillis>7389</waitingDurationMillis><waitingTimeMillis>7389</waitingTimeMillis></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><osmith1.9.1 _class='hudson.plugins.git.util.Build'><buildNumber>1315</buildNumber><marked><SHA1>197248107c5c2007b44c4df1bec011e6c1754cda</SHA1><branch><SHA1>197248107c5c2007b44c4df1bec011e6c1754cda</SHA1><name>osmith/1.9.1</name></branch></marked><revision><SHA1>197248107c5c2007b44c4df1bec011e6c1754cda</SHA1><branch><SHA1>197248107c5c2007b44c4df1bec011e6c1754cda</SHA1><name>osmith/1.9.1</name></branch></revision></osmith1.9.1><pespinrel-1.12.0 _class='hudson.plugins.git.util.Build'><buildNumber>2156</buildNumber><marked><SHA1>d38417e5965ae02eaffdd87d281098f30105b8b7</SHA1><branch><SHA1>d38417e5965ae02eaffdd87d281098f30105b8b7</SHA1><name>pespin/rel-1.12.0</name></branch></marked><revision><SHA1>d38417e5965ae02eaffdd87d281098f30105b8b7</SHA1><branch><SHA1>d38417e5965ae02eaffdd87d281098f30105b8b7</SHA1><name>pespin/rel-1.12.0</name></branch></revision></pespinrel-1.12.0><osmith1.9.2 _class='hudson.plugins.git.util.Build'><buildNumber>1319</buildNumber><marked><SHA1>3f0bbe398e16513906d29802d058a87655fceaf1</SHA1><branch><SHA1>3f0bbe398e16513906d29802d058a87655fceaf1</SHA1><name>osmith/1.9.2</name></branch></marked><revision><SHA1>3f0bbe398e16513906d29802d058a87655fceaf1</SHA1><branch><SHA1>3f0bbe398e16513906d29802d058a87655fceaf1</SHA1><name>osmith/1.9.2</name></branch></revision></osmith1.9.2><osmithwip _class='hudson.plugins.git.util.Build'><buildNumber>1773</buildNumber><marked><SHA1>aa177c0f4457df953e3e6e121e8806a4cf403d72</SHA1><branch><SHA1>aa177c0f4457df953e3e6e121e8806a4cf403d72</SHA1><name>osmith/wip</name></branch></marked><revision><SHA1>aa177c0f4457df953e3e6e121e8806a4cf403d72</SHA1><branch><SHA1>aa177c0f4457df953e3e6e121e8806a4cf403d72</SHA1><name>osmith/wip</name></branch></revision></osmithwip><pespinrel-1.10.0 _class='hudson.plugins.git.util.Build'><buildNumber>1877</buildNumber><marked><SHA1>a32a6ee4a6532e0c1d358ecebb8f13b8acc75dc1</SHA1><branch><SHA1>a32a6ee4a6532e0c1d358ecebb8f13b8acc75dc1</SHA1><name>pespin/rel-1.10.0</name></branch></marked><revision><SHA1>a32a6ee4a6532e0c1d358ecebb8f13b8acc75dc1</SHA1><branch><SHA1>a32a6ee4a6532e0c1d358ecebb8f13b8acc75dc1</SHA1><name>pespin/rel-1.10.0</name></branch></revision></pespinrel-1.10.0><osmith1.11.2 _class='hudson.plugins.git.util.Build'><buildNumber>2093</buildNumber><marked><SHA1>22a11a35e3feec31b86738d19f3d85406feb099a</SHA1><branch><SHA1>22a11a35e3feec31b86738d19f3d85406feb099a</SHA1><name>osmith/1.11.2</name></branch></marked><revision><SHA1>22a11a35e3feec31b86738d19f3d85406feb099a</SHA1><branch><SHA1>22a11a35e3feec31b86738d19f3d85406feb099a</SHA1><name>osmith/1.11.2</name></branch></revision></osmith1.11.2><osmith1.11.3 _class='hudson.plugins.git.util.Build'><buildNumber>2118</buildNumber><marked><SHA1>17ca3339e13d779a330781334e92f48d7ea87d36</SHA1><branch><SHA1>17ca3339e13d779a330781334e92f48d7ea87d36</SHA1><name>osmith/1.11.3</name></branch></marked><revision><SHA1>17ca3339e13d779a330781334e92f48d7ea87d36</SHA1><branch><SHA1>17ca3339e13d779a330781334e92f48d7ea87d36</SHA1><name>osmith/1.11.3</name></branch></revision></osmith1.11.3><rel-1.9.1 _class='hudson.plugins.git.util.Build'><buildNumber>1740</buildNumber><marked><SHA1>3a1bb866bbc481b379034723ede51a2e4e8b9c65</SHA1><branch><SHA1>3a1bb866bbc481b379034723ede51a2e4e8b9c65</SHA1><name>rel-1.9.1</name></branch></marked><revision><SHA1>3a1bb866bbc481b379034723ede51a2e4e8b9c65</SHA1><branch><SHA1>3a1bb866bbc481b379034723ede51a2e4e8b9c65</SHA1><name>rel-1.9.1</name></branch></revision></rel-1.9.1><arehbeinosmo_io_ipa _class='hudson.plugins.git.util.Build'><buildNumber>833</buildNumber><marked><SHA1>d75a0cca8117b609da75111388bf8baea5dac0a5</SHA1><branch><SHA1>d75a0cca8117b609da75111388bf8baea5dac0a5</SHA1><name>arehbein/osmo_io_ipa</name></branch></marked><revision><SHA1>d75a0cca8117b609da75111388bf8baea5dac0a5</SHA1><branch><SHA1>d75a0cca8117b609da75111388bf8baea5dac0a5</SHA1><name>arehbein/osmo_io_ipa</name></branch></revision></arehbeinosmo_io_ipa><rel-1.11.1 _class='hudson.plugins.git.util.Build'><buildNumber>1946</buildNumber><marked><SHA1>87de74a9f5835fb56a4758860aea3e673c29060e</SHA1><branch><SHA1>87de74a9f5835fb56a4758860aea3e673c29060e</SHA1><name>rel-1.11.1</name></branch></marked><revision><SHA1>87de74a9f5835fb56a4758860aea3e673c29060e</SHA1><branch><SHA1>87de74a9f5835fb56a4758860aea3e673c29060e</SHA1><name>rel-1.11.1</name></branch></revision></rel-1.11.1><rel-1.9.3 _class='hudson.plugins.git.util.Build'><buildNumber>1743</buildNumber><marked><SHA1>55ea51049775e623880f62026ad827f580aec7a2</SHA1><branch><SHA1>55ea51049775e623880f62026ad827f580aec7a2</SHA1><name>rel-1.9.3</name></branch></marked><revision><SHA1>55ea51049775e623880f62026ad827f580aec7a2</SHA1><branch><SHA1>55ea51049775e623880f62026ad827f580aec7a2</SHA1><name>rel-1.9.3</name></branch></revision></rel-1.9.3><master _class='hudson.plugins.git.util.Build'><buildNumber>2387</buildNumber><marked><SHA1>cd6ac2a29546f3f76584f3c52ea92891dec40bef</SHA1><branch><SHA1>cd6ac2a29546f3f76584f3c52ea92891dec40bef</SHA1><name>master</name></branch></marked><revision><SHA1>cd6ac2a29546f3f76584f3c52ea92891dec40bef</SHA1><branch><SHA1>cd6ac2a29546f3f76584f3c52ea92891dec40bef</SHA1><name>master</name></branch></revision></master></buildsByBranchName><lastBuiltRevision><SHA1>cd6ac2a29546f3f76584f3c52ea92891dec40bef</SHA1><branch><SHA1>cd6ac2a29546f3f76584f3c52ea92891dec40bef</SHA1><name>master</name></branch></lastBuiltRevision><remoteUrl>ssh://jenkins@gerrit.osmocom.org:29418/libosmocore</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><building>false</building><displayName>#2387</displayName><duration>185811</duration><estimatedDuration>182795</estimatedDuration><fullDisplayName>gerrit-libosmocore-build #2387</fullDisplayName><id>2387</id><inProgress>false</inProgress><keepLog>false</keepLog><number>2387</number><queueId>91054</queueId><result>SUCCESS</result><timestamp>1776433407902</timestamp><url>https://jenkins.osmocom.org/jenkins/view/All/job/gerrit-libosmocore-build/2387/</url><builtOn></builtOn><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tests/testsuite.at</affectedPath><affectedPath>src/core/osmo_io.c</affectedPath><affectedPath>tests/osmo_io/osmo_io_backpressure_test_uring.ok</affectedPath><affectedPath>tests/osmo_io/osmo_io_backpressure_test.c</affectedPath><affectedPath>tests/Makefile.am</affectedPath><affectedPath>tests/osmo_io/osmo_io_backpressure_test.ok</affectedPath><commitId>cd6ac2a29546f3f76584f3c52ea92891dec40bef</commitId><timestamp>1776431698000</timestamp><author><absoluteUrl>https://jenkins.osmocom.org/jenkins/user/fixeria</absoluteUrl><fullName>Vadim Yanitskiy</fullName></author><authorEmail>vyanitskiy@sysmocom.de</authorEmail><comment>osmo_io: iofd_txqueue_dequeue(): fix double next-&gt;io_len decrement

The fill-up logic in iofd_txqueue_dequeue() was incorrectly
decrementing next-&gt;io_len twice: once when removing a buffer that
didn't fit, and again when assigning to msg_iovlen.  This may cause
next-&gt;io_len to reach 0 and trigger an assert at osmo_io.c:274:

  Assert failed next-&gt;io_len &gt; 0

Add separate osmo_io_backpressure_test to verify queue management
under network backpressure conditions.  Use separate .ok files for
poll vs io_uring backends since they produce different I/O patterns.
This unit test reproduces the assert when the fix is not applied.

Change-Id: Ia96e25d11d8d683fa9dd0c56bdac257992edd782
Fixes: 3c2a02db4 ("osmo-io: Put together message buffers when dequeued from tx queue")
Related: OS#6997
</comment><date>2026-04-17 20:14:58 +0700</date><id>cd6ac2a29546f3f76584f3c52ea92891dec40bef</id><msg>osmo_io: iofd_txqueue_dequeue(): fix double next-&gt;io_len decrement</msg><path><editType>edit</editType><file>tests/Makefile.am</file></path><path><editType>add</editType><file>tests/osmo_io/osmo_io_backpressure_test_uring.ok</file></path><path><editType>add</editType><file>tests/osmo_io/osmo_io_backpressure_test.ok</file></path><path><editType>add</editType><file>tests/osmo_io/osmo_io_backpressure_test.c</file></path><path><editType>edit</editType><file>tests/testsuite.at</file></path><path><editType>edit</editType><file>src/core/osmo_io.c</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>https://jenkins.osmocom.org/jenkins/user/fixeria</absoluteUrl><fullName>Vadim Yanitskiy</fullName></culprit><run><number>2387</number><url>https://jenkins.osmocom.org/jenkins/view/All/job/gerrit-libosmocore-build/a2=default,a3=default,a4=default,arch=amd64,label=io_uring/2387/</url></run><run><number>2387</number><url>https://jenkins.osmocom.org/jenkins/view/All/job/gerrit-libosmocore-build/a2=default,a3=default,a4=default,arch=arm-none-eabi,label=io_uring/2387/</url></run></build><build _class='hudson.matrix.MatrixBuild'><action _class='hudson.model.CauseAction'><cause _class='org.jenkinsci.plugins.workflow.support.steps.build.BuildUpstreamCause'><shortDescription>Started by upstream project "gerrit-libosmocore" build number 2,385</shortDescription><upstreamBuild>2385</upstreamBuild><upstreamProject>gerrit-libosmocore</upstreamProject><upstreamUrl>job/gerrit-libosmocore/</upstreamUrl></cause></action><action></action><action></action><action _class='hudson.model.ParametersAction'><parameter _class='hudson.model.StringParameterValue'><name>COMMENT_TYPE</name><value></value></parameter><parameter _class='hudson.model.StringParameterValue'><name>DISTRO</name><value></value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_BRANCH</name><value>master</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_CHANGE_NUMBER</name><value>42622</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_HOST</name><value>gerrit.osmocom.org</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_NUMBER</name><value>1</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_REVISION</name><value>563253c320a421bc69f297170e92408016b17769</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_UPLOADER_NAME</name><value>osmith</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PORT</name><value>29418</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PROJECT</name><value>libosmocore</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_REFSPEC</name><value>refs/changes/22/42622/1</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_REPO_URL</name><value>ssh://jenkins@gerrit.osmocom.org:29418/libosmocore</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>PIPELINE_BUILD_URL</name><value>https://jenkins.osmocom.org/jenkins/job/gerrit-libosmocore/2385/</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>PROJECT_NAME</name><value>libosmocore</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>BRANCH_CI</name><value>master</value></parameter></action><action _class='jenkins.metrics.impl.TimeInQueueAction'><blockedDurationMillis>0</blockedDurationMillis><blockedTimeMillis>0</blockedTimeMillis><buildableDurationMillis>0</buildableDurationMillis><buildableTimeMillis>0</buildableTimeMillis><buildingDurationMillis>171513</buildingDurationMillis><executingTimeMillis>171513</executingTimeMillis><executorUtilization>1.0</executorUtilization><subTaskCount>0</subTaskCount><waitingDurationMillis>8171</waitingDurationMillis><waitingTimeMillis>8171</waitingTimeMillis></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><osmith1.9.1 _class='hudson.plugins.git.util.Build'><buildNumber>1315</buildNumber><marked><SHA1>197248107c5c2007b44c4df1bec011e6c1754cda</SHA1><branch><SHA1>197248107c5c2007b44c4df1bec011e6c1754cda</SHA1><name>osmith/1.9.1</name></branch></marked><revision><SHA1>197248107c5c2007b44c4df1bec011e6c1754cda</SHA1><branch><SHA1>197248107c5c2007b44c4df1bec011e6c1754cda</SHA1><name>osmith/1.9.1</name></branch></revision></osmith1.9.1><pespinrel-1.12.0 _class='hudson.plugins.git.util.Build'><buildNumber>2156</buildNumber><marked><SHA1>d38417e5965ae02eaffdd87d281098f30105b8b7</SHA1><branch><SHA1>d38417e5965ae02eaffdd87d281098f30105b8b7</SHA1><name>pespin/rel-1.12.0</name></branch></marked><revision><SHA1>d38417e5965ae02eaffdd87d281098f30105b8b7</SHA1><branch><SHA1>d38417e5965ae02eaffdd87d281098f30105b8b7</SHA1><name>pespin/rel-1.12.0</name></branch></revision></pespinrel-1.12.0><osmith1.9.2 _class='hudson.plugins.git.util.Build'><buildNumber>1319</buildNumber><marked><SHA1>3f0bbe398e16513906d29802d058a87655fceaf1</SHA1><branch><SHA1>3f0bbe398e16513906d29802d058a87655fceaf1</SHA1><name>osmith/1.9.2</name></branch></marked><revision><SHA1>3f0bbe398e16513906d29802d058a87655fceaf1</SHA1><branch><SHA1>3f0bbe398e16513906d29802d058a87655fceaf1</SHA1><name>osmith/1.9.2</name></branch></revision></osmith1.9.2><osmithwip _class='hudson.plugins.git.util.Build'><buildNumber>1773</buildNumber><marked><SHA1>aa177c0f4457df953e3e6e121e8806a4cf403d72</SHA1><branch><SHA1>aa177c0f4457df953e3e6e121e8806a4cf403d72</SHA1><name>osmith/wip</name></branch></marked><revision><SHA1>aa177c0f4457df953e3e6e121e8806a4cf403d72</SHA1><branch><SHA1>aa177c0f4457df953e3e6e121e8806a4cf403d72</SHA1><name>osmith/wip</name></branch></revision></osmithwip><pespinrel-1.10.0 _class='hudson.plugins.git.util.Build'><buildNumber>1877</buildNumber><marked><SHA1>a32a6ee4a6532e0c1d358ecebb8f13b8acc75dc1</SHA1><branch><SHA1>a32a6ee4a6532e0c1d358ecebb8f13b8acc75dc1</SHA1><name>pespin/rel-1.10.0</name></branch></marked><revision><SHA1>a32a6ee4a6532e0c1d358ecebb8f13b8acc75dc1</SHA1><branch><SHA1>a32a6ee4a6532e0c1d358ecebb8f13b8acc75dc1</SHA1><name>pespin/rel-1.10.0</name></branch></revision></pespinrel-1.10.0><osmith1.11.2 _class='hudson.plugins.git.util.Build'><buildNumber>2093</buildNumber><marked><SHA1>22a11a35e3feec31b86738d19f3d85406feb099a</SHA1><branch><SHA1>22a11a35e3feec31b86738d19f3d85406feb099a</SHA1><name>osmith/1.11.2</name></branch></marked><revision><SHA1>22a11a35e3feec31b86738d19f3d85406feb099a</SHA1><branch><SHA1>22a11a35e3feec31b86738d19f3d85406feb099a</SHA1><name>osmith/1.11.2</name></branch></revision></osmith1.11.2><osmith1.11.3 _class='hudson.plugins.git.util.Build'><buildNumber>2118</buildNumber><marked><SHA1>17ca3339e13d779a330781334e92f48d7ea87d36</SHA1><branch><SHA1>17ca3339e13d779a330781334e92f48d7ea87d36</SHA1><name>osmith/1.11.3</name></branch></marked><revision><SHA1>17ca3339e13d779a330781334e92f48d7ea87d36</SHA1><branch><SHA1>17ca3339e13d779a330781334e92f48d7ea87d36</SHA1><name>osmith/1.11.3</name></branch></revision></osmith1.11.3><rel-1.9.1 _class='hudson.plugins.git.util.Build'><buildNumber>1740</buildNumber><marked><SHA1>3a1bb866bbc481b379034723ede51a2e4e8b9c65</SHA1><branch><SHA1>3a1bb866bbc481b379034723ede51a2e4e8b9c65</SHA1><name>rel-1.9.1</name></branch></marked><revision><SHA1>3a1bb866bbc481b379034723ede51a2e4e8b9c65</SHA1><branch><SHA1>3a1bb866bbc481b379034723ede51a2e4e8b9c65</SHA1><name>rel-1.9.1</name></branch></revision></rel-1.9.1><arehbeinosmo_io_ipa _class='hudson.plugins.git.util.Build'><buildNumber>833</buildNumber><marked><SHA1>d75a0cca8117b609da75111388bf8baea5dac0a5</SHA1><branch><SHA1>d75a0cca8117b609da75111388bf8baea5dac0a5</SHA1><name>arehbein/osmo_io_ipa</name></branch></marked><revision><SHA1>d75a0cca8117b609da75111388bf8baea5dac0a5</SHA1><branch><SHA1>d75a0cca8117b609da75111388bf8baea5dac0a5</SHA1><name>arehbein/osmo_io_ipa</name></branch></revision></arehbeinosmo_io_ipa><rel-1.11.1 _class='hudson.plugins.git.util.Build'><buildNumber>1946</buildNumber><marked><SHA1>87de74a9f5835fb56a4758860aea3e673c29060e</SHA1><branch><SHA1>87de74a9f5835fb56a4758860aea3e673c29060e</SHA1><name>rel-1.11.1</name></branch></marked><revision><SHA1>87de74a9f5835fb56a4758860aea3e673c29060e</SHA1><branch><SHA1>87de74a9f5835fb56a4758860aea3e673c29060e</SHA1><name>rel-1.11.1</name></branch></revision></rel-1.11.1><rel-1.9.3 _class='hudson.plugins.git.util.Build'><buildNumber>1743</buildNumber><marked><SHA1>55ea51049775e623880f62026ad827f580aec7a2</SHA1><branch><SHA1>55ea51049775e623880f62026ad827f580aec7a2</SHA1><name>rel-1.9.3</name></branch></marked><revision><SHA1>55ea51049775e623880f62026ad827f580aec7a2</SHA1><branch><SHA1>55ea51049775e623880f62026ad827f580aec7a2</SHA1><name>rel-1.9.3</name></branch></revision></rel-1.9.3><master _class='hudson.plugins.git.util.Build'><buildNumber>2386</buildNumber><marked><SHA1>563253c320a421bc69f297170e92408016b17769</SHA1><branch><SHA1>563253c320a421bc69f297170e92408016b17769</SHA1><name>master</name></branch></marked><revision><SHA1>563253c320a421bc69f297170e92408016b17769</SHA1><branch><SHA1>563253c320a421bc69f297170e92408016b17769</SHA1><name>master</name></branch></revision></master></buildsByBranchName><lastBuiltRevision><SHA1>563253c320a421bc69f297170e92408016b17769</SHA1><branch><SHA1>563253c320a421bc69f297170e92408016b17769</SHA1><name>master</name></branch></lastBuiltRevision><remoteUrl>ssh://jenkins@gerrit.osmocom.org:29418/libosmocore</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><building>false</building><displayName>#2386</displayName><duration>171513</duration><estimatedDuration>182795</estimatedDuration><fullDisplayName>gerrit-libosmocore-build #2386</fullDisplayName><id>2386</id><inProgress>false</inProgress><keepLog>false</keepLog><number>2386</number><queueId>89133</queueId><result>SUCCESS</result><timestamp>1776246563611</timestamp><url>https://jenkins.osmocom.org/jenkins/view/All/job/gerrit-libosmocore-build/2386/</url><builtOn></builtOn><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/core/Makefile.am</affectedPath><affectedPath>debian/changelog</affectedPath><affectedPath>src/gsm/Makefile.am</affectedPath><affectedPath>TODO-RELEASE</affectedPath><commitId>563253c320a421bc69f297170e92408016b17769</commitId><timestamp>1776246504000</timestamp><author><absoluteUrl>https://jenkins.osmocom.org/jenkins/user/osmith</absoluteUrl><fullName>Oliver Smith</fullName></author><authorEmail>osmith@sysmocom.de</authorEmail><comment>Bump version: 1.13.1.12-8e6ea → 1.14.0

Change-Id: Ifa079c76148fd25f543b7875d3d89b35c19ffe6b
</comment><date>2026-04-15 11:48:24 +0200</date><id>563253c320a421bc69f297170e92408016b17769</id><msg>Bump version: 1.13.1.12-8e6ea → 1.14.0</msg><path><editType>edit</editType><file>src/core/Makefile.am</file></path><path><editType>edit</editType><file>src/gsm/Makefile.am</file></path><path><editType>edit</editType><file>TODO-RELEASE</file></path><path><editType>edit</editType><file>debian/changelog</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>https://jenkins.osmocom.org/jenkins/user/osmith</absoluteUrl><fullName>Oliver Smith</fullName></culprit><run><number>2386</number><url>https://jenkins.osmocom.org/jenkins/view/All/job/gerrit-libosmocore-build/a2=default,a3=default,a4=default,arch=amd64,label=io_uring/2386/</url></run><run><number>2386</number><url>https://jenkins.osmocom.org/jenkins/view/All/job/gerrit-libosmocore-build/a2=default,a3=default,a4=default,arch=arm-none-eabi,label=io_uring/2386/</url></run></build><color>blue</color><firstBuild _class='hudson.matrix.MatrixBuild'><action _class='hudson.model.CauseAction'><cause _class='org.jenkinsci.plugins.workflow.support.steps.build.BuildUpstreamCause'><shortDescription>Started by upstream project "gerrit-libosmocore" build number 2,385</shortDescription><upstreamBuild>2385</upstreamBuild><upstreamProject>gerrit-libosmocore</upstreamProject><upstreamUrl>job/gerrit-libosmocore/</upstreamUrl></cause></action><action></action><action></action><action _class='hudson.model.ParametersAction'><parameter _class='hudson.model.StringParameterValue'><name>COMMENT_TYPE</name><value></value></parameter><parameter _class='hudson.model.StringParameterValue'><name>DISTRO</name><value></value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_BRANCH</name><value>master</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_CHANGE_NUMBER</name><value>42622</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_HOST</name><value>gerrit.osmocom.org</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_NUMBER</name><value>1</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_REVISION</name><value>563253c320a421bc69f297170e92408016b17769</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_UPLOADER_NAME</name><value>osmith</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PORT</name><value>29418</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PROJECT</name><value>libosmocore</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_REFSPEC</name><value>refs/changes/22/42622/1</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_REPO_URL</name><value>ssh://jenkins@gerrit.osmocom.org:29418/libosmocore</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>PIPELINE_BUILD_URL</name><value>https://jenkins.osmocom.org/jenkins/job/gerrit-libosmocore/2385/</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>PROJECT_NAME</name><value>libosmocore</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>BRANCH_CI</name><value>master</value></parameter></action><action _class='jenkins.metrics.impl.TimeInQueueAction'><blockedDurationMillis>0</blockedDurationMillis><blockedTimeMillis>0</blockedTimeMillis><buildableDurationMillis>0</buildableDurationMillis><buildableTimeMillis>0</buildableTimeMillis><buildingDurationMillis>171513</buildingDurationMillis><executingTimeMillis>171513</executingTimeMillis><executorUtilization>1.0</executorUtilization><subTaskCount>0</subTaskCount><waitingDurationMillis>8171</waitingDurationMillis><waitingTimeMillis>8171</waitingTimeMillis></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><osmith1.9.1 _class='hudson.plugins.git.util.Build'><buildNumber>1315</buildNumber><marked><SHA1>197248107c5c2007b44c4df1bec011e6c1754cda</SHA1><branch><SHA1>197248107c5c2007b44c4df1bec011e6c1754cda</SHA1><name>osmith/1.9.1</name></branch></marked><revision><SHA1>197248107c5c2007b44c4df1bec011e6c1754cda</SHA1><branch><SHA1>197248107c5c2007b44c4df1bec011e6c1754cda</SHA1><name>osmith/1.9.1</name></branch></revision></osmith1.9.1><pespinrel-1.12.0 _class='hudson.plugins.git.util.Build'><buildNumber>2156</buildNumber><marked><SHA1>d38417e5965ae02eaffdd87d281098f30105b8b7</SHA1><branch><SHA1>d38417e5965ae02eaffdd87d281098f30105b8b7</SHA1><name>pespin/rel-1.12.0</name></branch></marked><revision><SHA1>d38417e5965ae02eaffdd87d281098f30105b8b7</SHA1><branch><SHA1>d38417e5965ae02eaffdd87d281098f30105b8b7</SHA1><name>pespin/rel-1.12.0</name></branch></revision></pespinrel-1.12.0><osmith1.9.2 _class='hudson.plugins.git.util.Build'><buildNumber>1319</buildNumber><marked><SHA1>3f0bbe398e16513906d29802d058a87655fceaf1</SHA1><branch><SHA1>3f0bbe398e16513906d29802d058a87655fceaf1</SHA1><name>osmith/1.9.2</name></branch></marked><revision><SHA1>3f0bbe398e16513906d29802d058a87655fceaf1</SHA1><branch><SHA1>3f0bbe398e16513906d29802d058a87655fceaf1</SHA1><name>osmith/1.9.2</name></branch></revision></osmith1.9.2><osmithwip _class='hudson.plugins.git.util.Build'><buildNumber>1773</buildNumber><marked><SHA1>aa177c0f4457df953e3e6e121e8806a4cf403d72</SHA1><branch><SHA1>aa177c0f4457df953e3e6e121e8806a4cf403d72</SHA1><name>osmith/wip</name></branch></marked><revision><SHA1>aa177c0f4457df953e3e6e121e8806a4cf403d72</SHA1><branch><SHA1>aa177c0f4457df953e3e6e121e8806a4cf403d72</SHA1><name>osmith/wip</name></branch></revision></osmithwip><pespinrel-1.10.0 _class='hudson.plugins.git.util.Build'><buildNumber>1877</buildNumber><marked><SHA1>a32a6ee4a6532e0c1d358ecebb8f13b8acc75dc1</SHA1><branch><SHA1>a32a6ee4a6532e0c1d358ecebb8f13b8acc75dc1</SHA1><name>pespin/rel-1.10.0</name></branch></marked><revision><SHA1>a32a6ee4a6532e0c1d358ecebb8f13b8acc75dc1</SHA1><branch><SHA1>a32a6ee4a6532e0c1d358ecebb8f13b8acc75dc1</SHA1><name>pespin/rel-1.10.0</name></branch></revision></pespinrel-1.10.0><osmith1.11.2 _class='hudson.plugins.git.util.Build'><buildNumber>2093</buildNumber><marked><SHA1>22a11a35e3feec31b86738d19f3d85406feb099a</SHA1><branch><SHA1>22a11a35e3feec31b86738d19f3d85406feb099a</SHA1><name>osmith/1.11.2</name></branch></marked><revision><SHA1>22a11a35e3feec31b86738d19f3d85406feb099a</SHA1><branch><SHA1>22a11a35e3feec31b86738d19f3d85406feb099a</SHA1><name>osmith/1.11.2</name></branch></revision></osmith1.11.2><osmith1.11.3 _class='hudson.plugins.git.util.Build'><buildNumber>2118</buildNumber><marked><SHA1>17ca3339e13d779a330781334e92f48d7ea87d36</SHA1><branch><SHA1>17ca3339e13d779a330781334e92f48d7ea87d36</SHA1><name>osmith/1.11.3</name></branch></marked><revision><SHA1>17ca3339e13d779a330781334e92f48d7ea87d36</SHA1><branch><SHA1>17ca3339e13d779a330781334e92f48d7ea87d36</SHA1><name>osmith/1.11.3</name></branch></revision></osmith1.11.3><rel-1.9.1 _class='hudson.plugins.git.util.Build'><buildNumber>1740</buildNumber><marked><SHA1>3a1bb866bbc481b379034723ede51a2e4e8b9c65</SHA1><branch><SHA1>3a1bb866bbc481b379034723ede51a2e4e8b9c65</SHA1><name>rel-1.9.1</name></branch></marked><revision><SHA1>3a1bb866bbc481b379034723ede51a2e4e8b9c65</SHA1><branch><SHA1>3a1bb866bbc481b379034723ede51a2e4e8b9c65</SHA1><name>rel-1.9.1</name></branch></revision></rel-1.9.1><arehbeinosmo_io_ipa _class='hudson.plugins.git.util.Build'><buildNumber>833</buildNumber><marked><SHA1>d75a0cca8117b609da75111388bf8baea5dac0a5</SHA1><branch><SHA1>d75a0cca8117b609da75111388bf8baea5dac0a5</SHA1><name>arehbein/osmo_io_ipa</name></branch></marked><revision><SHA1>d75a0cca8117b609da75111388bf8baea5dac0a5</SHA1><branch><SHA1>d75a0cca8117b609da75111388bf8baea5dac0a5</SHA1><name>arehbein/osmo_io_ipa</name></branch></revision></arehbeinosmo_io_ipa><rel-1.11.1 _class='hudson.plugins.git.util.Build'><buildNumber>1946</buildNumber><marked><SHA1>87de74a9f5835fb56a4758860aea3e673c29060e</SHA1><branch><SHA1>87de74a9f5835fb56a4758860aea3e673c29060e</SHA1><name>rel-1.11.1</name></branch></marked><revision><SHA1>87de74a9f5835fb56a4758860aea3e673c29060e</SHA1><branch><SHA1>87de74a9f5835fb56a4758860aea3e673c29060e</SHA1><name>rel-1.11.1</name></branch></revision></rel-1.11.1><rel-1.9.3 _class='hudson.plugins.git.util.Build'><buildNumber>1743</buildNumber><marked><SHA1>55ea51049775e623880f62026ad827f580aec7a2</SHA1><branch><SHA1>55ea51049775e623880f62026ad827f580aec7a2</SHA1><name>rel-1.9.3</name></branch></marked><revision><SHA1>55ea51049775e623880f62026ad827f580aec7a2</SHA1><branch><SHA1>55ea51049775e623880f62026ad827f580aec7a2</SHA1><name>rel-1.9.3</name></branch></revision></rel-1.9.3><master _class='hudson.plugins.git.util.Build'><buildNumber>2386</buildNumber><marked><SHA1>563253c320a421bc69f297170e92408016b17769</SHA1><branch><SHA1>563253c320a421bc69f297170e92408016b17769</SHA1><name>master</name></branch></marked><revision><SHA1>563253c320a421bc69f297170e92408016b17769</SHA1><branch><SHA1>563253c320a421bc69f297170e92408016b17769</SHA1><name>master</name></branch></revision></master></buildsByBranchName><lastBuiltRevision><SHA1>563253c320a421bc69f297170e92408016b17769</SHA1><branch><SHA1>563253c320a421bc69f297170e92408016b17769</SHA1><name>master</name></branch></lastBuiltRevision><remoteUrl>ssh://jenkins@gerrit.osmocom.org:29418/libosmocore</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><building>false</building><displayName>#2386</displayName><duration>171513</duration><estimatedDuration>182795</estimatedDuration><fullDisplayName>gerrit-libosmocore-build #2386</fullDisplayName><id>2386</id><inProgress>false</inProgress><keepLog>false</keepLog><number>2386</number><queueId>89133</queueId><result>SUCCESS</result><timestamp>1776246563611</timestamp><url>https://jenkins.osmocom.org/jenkins/view/All/job/gerrit-libosmocore-build/2386/</url><builtOn></builtOn><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>src/core/Makefile.am</affectedPath><affectedPath>debian/changelog</affectedPath><affectedPath>src/gsm/Makefile.am</affectedPath><affectedPath>TODO-RELEASE</affectedPath><commitId>563253c320a421bc69f297170e92408016b17769</commitId><timestamp>1776246504000</timestamp><author><absoluteUrl>https://jenkins.osmocom.org/jenkins/user/osmith</absoluteUrl><fullName>Oliver Smith</fullName></author><authorEmail>osmith@sysmocom.de</authorEmail><comment>Bump version: 1.13.1.12-8e6ea → 1.14.0

Change-Id: Ifa079c76148fd25f543b7875d3d89b35c19ffe6b
</comment><date>2026-04-15 11:48:24 +0200</date><id>563253c320a421bc69f297170e92408016b17769</id><msg>Bump version: 1.13.1.12-8e6ea → 1.14.0</msg><path><editType>edit</editType><file>src/core/Makefile.am</file></path><path><editType>edit</editType><file>src/gsm/Makefile.am</file></path><path><editType>edit</editType><file>TODO-RELEASE</file></path><path><editType>edit</editType><file>debian/changelog</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>https://jenkins.osmocom.org/jenkins/user/osmith</absoluteUrl><fullName>Oliver Smith</fullName></culprit><run><number>2386</number><url>https://jenkins.osmocom.org/jenkins/view/All/job/gerrit-libosmocore-build/a2=default,a3=default,a4=default,arch=amd64,label=io_uring/2386/</url></run><run><number>2386</number><url>https://jenkins.osmocom.org/jenkins/view/All/job/gerrit-libosmocore-build/a2=default,a3=default,a4=default,arch=arm-none-eabi,label=io_uring/2386/</url></run></firstBuild><healthReport><description>Build stability: No recent builds failed.</description><iconClassName>icon-health-80plus</iconClassName><iconUrl>health-80plus.png</iconUrl><score>100</score></healthReport><inQueue>false</inQueue><keepDependencies>false</keepDependencies><lastBuild _class='hudson.matrix.MatrixBuild'><action _class='hudson.model.CauseAction'><cause _class='org.jenkinsci.plugins.workflow.support.steps.build.BuildUpstreamCause'><shortDescription>Started by upstream project "gerrit-libosmocore" build number 2,387</shortDescription><upstreamBuild>2387</upstreamBuild><upstreamProject>gerrit-libosmocore</upstreamProject><upstreamUrl>job/gerrit-libosmocore/</upstreamUrl></cause></action><action></action><action></action><action _class='hudson.model.ParametersAction'><parameter _class='hudson.model.StringParameterValue'><name>COMMENT_TYPE</name><value></value></parameter><parameter _class='hudson.model.StringParameterValue'><name>DISTRO</name><value></value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_BRANCH</name><value>master</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_CHANGE_NUMBER</name><value>42638</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_HOST</name><value>gerrit.osmocom.org</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_NUMBER</name><value>2</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_REVISION</name><value>3021739a6072c60295dcea08c160cde22b8f4eca</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_UPLOADER_NAME</name><value>fixeria</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PORT</name><value>29418</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PROJECT</name><value>libosmocore</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_REFSPEC</name><value>refs/changes/38/42638/2</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_REPO_URL</name><value>ssh://jenkins@gerrit.osmocom.org:29418/libosmocore</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>PIPELINE_BUILD_URL</name><value>https://jenkins.osmocom.org/jenkins/job/gerrit-libosmocore/2387/</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>PROJECT_NAME</name><value>libosmocore</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>BRANCH_CI</name><value>master</value></parameter></action><action _class='jenkins.metrics.impl.TimeInQueueAction'><blockedDurationMillis>0</blockedDurationMillis><blockedTimeMillis>0</blockedTimeMillis><buildableDurationMillis>0</buildableDurationMillis><buildableTimeMillis>0</buildableTimeMillis><buildingDurationMillis>191060</buildingDurationMillis><executingTimeMillis>191060</executingTimeMillis><executorUtilization>1.0</executorUtilization><subTaskCount>0</subTaskCount><waitingDurationMillis>5087</waitingDurationMillis><waitingTimeMillis>5087</waitingTimeMillis></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><osmith1.9.1 _class='hudson.plugins.git.util.Build'><buildNumber>1315</buildNumber><marked><SHA1>197248107c5c2007b44c4df1bec011e6c1754cda</SHA1><branch><SHA1>197248107c5c2007b44c4df1bec011e6c1754cda</SHA1><name>osmith/1.9.1</name></branch></marked><revision><SHA1>197248107c5c2007b44c4df1bec011e6c1754cda</SHA1><branch><SHA1>197248107c5c2007b44c4df1bec011e6c1754cda</SHA1><name>osmith/1.9.1</name></branch></revision></osmith1.9.1><pespinrel-1.12.0 _class='hudson.plugins.git.util.Build'><buildNumber>2156</buildNumber><marked><SHA1>d38417e5965ae02eaffdd87d281098f30105b8b7</SHA1><branch><SHA1>d38417e5965ae02eaffdd87d281098f30105b8b7</SHA1><name>pespin/rel-1.12.0</name></branch></marked><revision><SHA1>d38417e5965ae02eaffdd87d281098f30105b8b7</SHA1><branch><SHA1>d38417e5965ae02eaffdd87d281098f30105b8b7</SHA1><name>pespin/rel-1.12.0</name></branch></revision></pespinrel-1.12.0><osmith1.9.2 _class='hudson.plugins.git.util.Build'><buildNumber>1319</buildNumber><marked><SHA1>3f0bbe398e16513906d29802d058a87655fceaf1</SHA1><branch><SHA1>3f0bbe398e16513906d29802d058a87655fceaf1</SHA1><name>osmith/1.9.2</name></branch></marked><revision><SHA1>3f0bbe398e16513906d29802d058a87655fceaf1</SHA1><branch><SHA1>3f0bbe398e16513906d29802d058a87655fceaf1</SHA1><name>osmith/1.9.2</name></branch></revision></osmith1.9.2><osmithwip _class='hudson.plugins.git.util.Build'><buildNumber>1773</buildNumber><marked><SHA1>aa177c0f4457df953e3e6e121e8806a4cf403d72</SHA1><branch><SHA1>aa177c0f4457df953e3e6e121e8806a4cf403d72</SHA1><name>osmith/wip</name></branch></marked><revision><SHA1>aa177c0f4457df953e3e6e121e8806a4cf403d72</SHA1><branch><SHA1>aa177c0f4457df953e3e6e121e8806a4cf403d72</SHA1><name>osmith/wip</name></branch></revision></osmithwip><pespinrel-1.10.0 _class='hudson.plugins.git.util.Build'><buildNumber>1877</buildNumber><marked><SHA1>a32a6ee4a6532e0c1d358ecebb8f13b8acc75dc1</SHA1><branch><SHA1>a32a6ee4a6532e0c1d358ecebb8f13b8acc75dc1</SHA1><name>pespin/rel-1.10.0</name></branch></marked><revision><SHA1>a32a6ee4a6532e0c1d358ecebb8f13b8acc75dc1</SHA1><branch><SHA1>a32a6ee4a6532e0c1d358ecebb8f13b8acc75dc1</SHA1><name>pespin/rel-1.10.0</name></branch></revision></pespinrel-1.10.0><osmith1.11.2 _class='hudson.plugins.git.util.Build'><buildNumber>2093</buildNumber><marked><SHA1>22a11a35e3feec31b86738d19f3d85406feb099a</SHA1><branch><SHA1>22a11a35e3feec31b86738d19f3d85406feb099a</SHA1><name>osmith/1.11.2</name></branch></marked><revision><SHA1>22a11a35e3feec31b86738d19f3d85406feb099a</SHA1><branch><SHA1>22a11a35e3feec31b86738d19f3d85406feb099a</SHA1><name>osmith/1.11.2</name></branch></revision></osmith1.11.2><osmith1.11.3 _class='hudson.plugins.git.util.Build'><buildNumber>2118</buildNumber><marked><SHA1>17ca3339e13d779a330781334e92f48d7ea87d36</SHA1><branch><SHA1>17ca3339e13d779a330781334e92f48d7ea87d36</SHA1><name>osmith/1.11.3</name></branch></marked><revision><SHA1>17ca3339e13d779a330781334e92f48d7ea87d36</SHA1><branch><SHA1>17ca3339e13d779a330781334e92f48d7ea87d36</SHA1><name>osmith/1.11.3</name></branch></revision></osmith1.11.3><rel-1.9.1 _class='hudson.plugins.git.util.Build'><buildNumber>1740</buildNumber><marked><SHA1>3a1bb866bbc481b379034723ede51a2e4e8b9c65</SHA1><branch><SHA1>3a1bb866bbc481b379034723ede51a2e4e8b9c65</SHA1><name>rel-1.9.1</name></branch></marked><revision><SHA1>3a1bb866bbc481b379034723ede51a2e4e8b9c65</SHA1><branch><SHA1>3a1bb866bbc481b379034723ede51a2e4e8b9c65</SHA1><name>rel-1.9.1</name></branch></revision></rel-1.9.1><arehbeinosmo_io_ipa _class='hudson.plugins.git.util.Build'><buildNumber>833</buildNumber><marked><SHA1>d75a0cca8117b609da75111388bf8baea5dac0a5</SHA1><branch><SHA1>d75a0cca8117b609da75111388bf8baea5dac0a5</SHA1><name>arehbein/osmo_io_ipa</name></branch></marked><revision><SHA1>d75a0cca8117b609da75111388bf8baea5dac0a5</SHA1><branch><SHA1>d75a0cca8117b609da75111388bf8baea5dac0a5</SHA1><name>arehbein/osmo_io_ipa</name></branch></revision></arehbeinosmo_io_ipa><rel-1.11.1 _class='hudson.plugins.git.util.Build'><buildNumber>1946</buildNumber><marked><SHA1>87de74a9f5835fb56a4758860aea3e673c29060e</SHA1><branch><SHA1>87de74a9f5835fb56a4758860aea3e673c29060e</SHA1><name>rel-1.11.1</name></branch></marked><revision><SHA1>87de74a9f5835fb56a4758860aea3e673c29060e</SHA1><branch><SHA1>87de74a9f5835fb56a4758860aea3e673c29060e</SHA1><name>rel-1.11.1</name></branch></revision></rel-1.11.1><rel-1.9.3 _class='hudson.plugins.git.util.Build'><buildNumber>1743</buildNumber><marked><SHA1>55ea51049775e623880f62026ad827f580aec7a2</SHA1><branch><SHA1>55ea51049775e623880f62026ad827f580aec7a2</SHA1><name>rel-1.9.3</name></branch></marked><revision><SHA1>55ea51049775e623880f62026ad827f580aec7a2</SHA1><branch><SHA1>55ea51049775e623880f62026ad827f580aec7a2</SHA1><name>rel-1.9.3</name></branch></revision></rel-1.9.3><master _class='hudson.plugins.git.util.Build'><buildNumber>2388</buildNumber><marked><SHA1>3021739a6072c60295dcea08c160cde22b8f4eca</SHA1><branch><SHA1>3021739a6072c60295dcea08c160cde22b8f4eca</SHA1><name>master</name></branch></marked><revision><SHA1>3021739a6072c60295dcea08c160cde22b8f4eca</SHA1><branch><SHA1>3021739a6072c60295dcea08c160cde22b8f4eca</SHA1><name>master</name></branch></revision></master></buildsByBranchName><lastBuiltRevision><SHA1>3021739a6072c60295dcea08c160cde22b8f4eca</SHA1><branch><SHA1>3021739a6072c60295dcea08c160cde22b8f4eca</SHA1><name>master</name></branch></lastBuiltRevision><remoteUrl>ssh://jenkins@gerrit.osmocom.org:29418/libosmocore</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><building>false</building><displayName>#2388</displayName><duration>191060</duration><estimatedDuration>182795</estimatedDuration><fullDisplayName>gerrit-libosmocore-build #2388</fullDisplayName><id>2388</id><inProgress>false</inProgress><keepLog>false</keepLog><number>2388</number><queueId>91066</queueId><result>SUCCESS</result><timestamp>1776433769256</timestamp><url>https://jenkins.osmocom.org/jenkins/view/All/job/gerrit-libosmocore-build/2388/</url><builtOn></builtOn><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tests/testsuite.at</affectedPath><affectedPath>src/core/osmo_io.c</affectedPath><affectedPath>tests/osmo_io/osmo_io_backpressure_test.c</affectedPath><affectedPath>tests/osmo_io/osmo_io_backpressure_test_uring.ok</affectedPath><affectedPath>tests/osmo_io/osmo_io_backpressure_test.ok</affectedPath><affectedPath>tests/Makefile.am</affectedPath><commitId>3021739a6072c60295dcea08c160cde22b8f4eca</commitId><timestamp>1776433625000</timestamp><author><absoluteUrl>https://jenkins.osmocom.org/jenkins/user/fixeria</absoluteUrl><fullName>Vadim Yanitskiy</fullName></author><authorEmail>vyanitskiy@sysmocom.de</authorEmail><comment>osmo_io: iofd_txqueue_dequeue(): fix double next-&gt;io_len decrement

The fill-up logic in iofd_txqueue_dequeue() was incorrectly
decrementing next-&gt;io_len twice: once when removing a buffer that
didn't fit, and again when assigning to msg_iovlen.  This may cause
next-&gt;io_len to reach 0 and trigger an assert at osmo_io.c:274:

  Assert failed next-&gt;io_len &gt; 0

Add separate osmo_io_backpressure_test to verify queue management
under network backpressure conditions.  Use separate .ok files for
poll vs io_uring backends since they produce different I/O patterns.
This unit test reproduces the assert when the fix is not applied.

Change-Id: Ia96e25d11d8d683fa9dd0c56bdac257992edd782
Fixes: 3c2a02db4 ("osmo-io: Put together message buffers when dequeued from tx queue")
Related: OS#6997
</comment><date>2026-04-17 20:47:05 +0700</date><id>3021739a6072c60295dcea08c160cde22b8f4eca</id><msg>osmo_io: iofd_txqueue_dequeue(): fix double next-&gt;io_len decrement</msg><path><editType>add</editType><file>tests/osmo_io/osmo_io_backpressure_test.ok</file></path><path><editType>edit</editType><file>tests/testsuite.at</file></path><path><editType>add</editType><file>tests/osmo_io/osmo_io_backpressure_test.c</file></path><path><editType>edit</editType><file>src/core/osmo_io.c</file></path><path><editType>add</editType><file>tests/osmo_io/osmo_io_backpressure_test_uring.ok</file></path><path><editType>edit</editType><file>tests/Makefile.am</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>https://jenkins.osmocom.org/jenkins/user/fixeria</absoluteUrl><fullName>Vadim Yanitskiy</fullName></culprit><run><number>2388</number><url>https://jenkins.osmocom.org/jenkins/view/All/job/gerrit-libosmocore-build/a2=default,a3=default,a4=default,arch=amd64,label=io_uring/2388/</url></run><run><number>2388</number><url>https://jenkins.osmocom.org/jenkins/view/All/job/gerrit-libosmocore-build/a2=default,a3=default,a4=default,arch=arm-none-eabi,label=io_uring/2388/</url></run></lastBuild><lastCompletedBuild _class='hudson.matrix.MatrixBuild'><action _class='hudson.model.CauseAction'><cause _class='org.jenkinsci.plugins.workflow.support.steps.build.BuildUpstreamCause'><shortDescription>Started by upstream project "gerrit-libosmocore" build number 2,387</shortDescription><upstreamBuild>2387</upstreamBuild><upstreamProject>gerrit-libosmocore</upstreamProject><upstreamUrl>job/gerrit-libosmocore/</upstreamUrl></cause></action><action></action><action></action><action _class='hudson.model.ParametersAction'><parameter _class='hudson.model.StringParameterValue'><name>COMMENT_TYPE</name><value></value></parameter><parameter _class='hudson.model.StringParameterValue'><name>DISTRO</name><value></value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_BRANCH</name><value>master</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_CHANGE_NUMBER</name><value>42638</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_HOST</name><value>gerrit.osmocom.org</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_NUMBER</name><value>2</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_REVISION</name><value>3021739a6072c60295dcea08c160cde22b8f4eca</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_UPLOADER_NAME</name><value>fixeria</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PORT</name><value>29418</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PROJECT</name><value>libosmocore</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_REFSPEC</name><value>refs/changes/38/42638/2</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_REPO_URL</name><value>ssh://jenkins@gerrit.osmocom.org:29418/libosmocore</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>PIPELINE_BUILD_URL</name><value>https://jenkins.osmocom.org/jenkins/job/gerrit-libosmocore/2387/</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>PROJECT_NAME</name><value>libosmocore</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>BRANCH_CI</name><value>master</value></parameter></action><action _class='jenkins.metrics.impl.TimeInQueueAction'><blockedDurationMillis>0</blockedDurationMillis><blockedTimeMillis>0</blockedTimeMillis><buildableDurationMillis>0</buildableDurationMillis><buildableTimeMillis>0</buildableTimeMillis><buildingDurationMillis>191060</buildingDurationMillis><executingTimeMillis>191060</executingTimeMillis><executorUtilization>1.0</executorUtilization><subTaskCount>0</subTaskCount><waitingDurationMillis>5087</waitingDurationMillis><waitingTimeMillis>5087</waitingTimeMillis></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><osmith1.9.1 _class='hudson.plugins.git.util.Build'><buildNumber>1315</buildNumber><marked><SHA1>197248107c5c2007b44c4df1bec011e6c1754cda</SHA1><branch><SHA1>197248107c5c2007b44c4df1bec011e6c1754cda</SHA1><name>osmith/1.9.1</name></branch></marked><revision><SHA1>197248107c5c2007b44c4df1bec011e6c1754cda</SHA1><branch><SHA1>197248107c5c2007b44c4df1bec011e6c1754cda</SHA1><name>osmith/1.9.1</name></branch></revision></osmith1.9.1><pespinrel-1.12.0 _class='hudson.plugins.git.util.Build'><buildNumber>2156</buildNumber><marked><SHA1>d38417e5965ae02eaffdd87d281098f30105b8b7</SHA1><branch><SHA1>d38417e5965ae02eaffdd87d281098f30105b8b7</SHA1><name>pespin/rel-1.12.0</name></branch></marked><revision><SHA1>d38417e5965ae02eaffdd87d281098f30105b8b7</SHA1><branch><SHA1>d38417e5965ae02eaffdd87d281098f30105b8b7</SHA1><name>pespin/rel-1.12.0</name></branch></revision></pespinrel-1.12.0><osmith1.9.2 _class='hudson.plugins.git.util.Build'><buildNumber>1319</buildNumber><marked><SHA1>3f0bbe398e16513906d29802d058a87655fceaf1</SHA1><branch><SHA1>3f0bbe398e16513906d29802d058a87655fceaf1</SHA1><name>osmith/1.9.2</name></branch></marked><revision><SHA1>3f0bbe398e16513906d29802d058a87655fceaf1</SHA1><branch><SHA1>3f0bbe398e16513906d29802d058a87655fceaf1</SHA1><name>osmith/1.9.2</name></branch></revision></osmith1.9.2><osmithwip _class='hudson.plugins.git.util.Build'><buildNumber>1773</buildNumber><marked><SHA1>aa177c0f4457df953e3e6e121e8806a4cf403d72</SHA1><branch><SHA1>aa177c0f4457df953e3e6e121e8806a4cf403d72</SHA1><name>osmith/wip</name></branch></marked><revision><SHA1>aa177c0f4457df953e3e6e121e8806a4cf403d72</SHA1><branch><SHA1>aa177c0f4457df953e3e6e121e8806a4cf403d72</SHA1><name>osmith/wip</name></branch></revision></osmithwip><pespinrel-1.10.0 _class='hudson.plugins.git.util.Build'><buildNumber>1877</buildNumber><marked><SHA1>a32a6ee4a6532e0c1d358ecebb8f13b8acc75dc1</SHA1><branch><SHA1>a32a6ee4a6532e0c1d358ecebb8f13b8acc75dc1</SHA1><name>pespin/rel-1.10.0</name></branch></marked><revision><SHA1>a32a6ee4a6532e0c1d358ecebb8f13b8acc75dc1</SHA1><branch><SHA1>a32a6ee4a6532e0c1d358ecebb8f13b8acc75dc1</SHA1><name>pespin/rel-1.10.0</name></branch></revision></pespinrel-1.10.0><osmith1.11.2 _class='hudson.plugins.git.util.Build'><buildNumber>2093</buildNumber><marked><SHA1>22a11a35e3feec31b86738d19f3d85406feb099a</SHA1><branch><SHA1>22a11a35e3feec31b86738d19f3d85406feb099a</SHA1><name>osmith/1.11.2</name></branch></marked><revision><SHA1>22a11a35e3feec31b86738d19f3d85406feb099a</SHA1><branch><SHA1>22a11a35e3feec31b86738d19f3d85406feb099a</SHA1><name>osmith/1.11.2</name></branch></revision></osmith1.11.2><osmith1.11.3 _class='hudson.plugins.git.util.Build'><buildNumber>2118</buildNumber><marked><SHA1>17ca3339e13d779a330781334e92f48d7ea87d36</SHA1><branch><SHA1>17ca3339e13d779a330781334e92f48d7ea87d36</SHA1><name>osmith/1.11.3</name></branch></marked><revision><SHA1>17ca3339e13d779a330781334e92f48d7ea87d36</SHA1><branch><SHA1>17ca3339e13d779a330781334e92f48d7ea87d36</SHA1><name>osmith/1.11.3</name></branch></revision></osmith1.11.3><rel-1.9.1 _class='hudson.plugins.git.util.Build'><buildNumber>1740</buildNumber><marked><SHA1>3a1bb866bbc481b379034723ede51a2e4e8b9c65</SHA1><branch><SHA1>3a1bb866bbc481b379034723ede51a2e4e8b9c65</SHA1><name>rel-1.9.1</name></branch></marked><revision><SHA1>3a1bb866bbc481b379034723ede51a2e4e8b9c65</SHA1><branch><SHA1>3a1bb866bbc481b379034723ede51a2e4e8b9c65</SHA1><name>rel-1.9.1</name></branch></revision></rel-1.9.1><arehbeinosmo_io_ipa _class='hudson.plugins.git.util.Build'><buildNumber>833</buildNumber><marked><SHA1>d75a0cca8117b609da75111388bf8baea5dac0a5</SHA1><branch><SHA1>d75a0cca8117b609da75111388bf8baea5dac0a5</SHA1><name>arehbein/osmo_io_ipa</name></branch></marked><revision><SHA1>d75a0cca8117b609da75111388bf8baea5dac0a5</SHA1><branch><SHA1>d75a0cca8117b609da75111388bf8baea5dac0a5</SHA1><name>arehbein/osmo_io_ipa</name></branch></revision></arehbeinosmo_io_ipa><rel-1.11.1 _class='hudson.plugins.git.util.Build'><buildNumber>1946</buildNumber><marked><SHA1>87de74a9f5835fb56a4758860aea3e673c29060e</SHA1><branch><SHA1>87de74a9f5835fb56a4758860aea3e673c29060e</SHA1><name>rel-1.11.1</name></branch></marked><revision><SHA1>87de74a9f5835fb56a4758860aea3e673c29060e</SHA1><branch><SHA1>87de74a9f5835fb56a4758860aea3e673c29060e</SHA1><name>rel-1.11.1</name></branch></revision></rel-1.11.1><rel-1.9.3 _class='hudson.plugins.git.util.Build'><buildNumber>1743</buildNumber><marked><SHA1>55ea51049775e623880f62026ad827f580aec7a2</SHA1><branch><SHA1>55ea51049775e623880f62026ad827f580aec7a2</SHA1><name>rel-1.9.3</name></branch></marked><revision><SHA1>55ea51049775e623880f62026ad827f580aec7a2</SHA1><branch><SHA1>55ea51049775e623880f62026ad827f580aec7a2</SHA1><name>rel-1.9.3</name></branch></revision></rel-1.9.3><master _class='hudson.plugins.git.util.Build'><buildNumber>2388</buildNumber><marked><SHA1>3021739a6072c60295dcea08c160cde22b8f4eca</SHA1><branch><SHA1>3021739a6072c60295dcea08c160cde22b8f4eca</SHA1><name>master</name></branch></marked><revision><SHA1>3021739a6072c60295dcea08c160cde22b8f4eca</SHA1><branch><SHA1>3021739a6072c60295dcea08c160cde22b8f4eca</SHA1><name>master</name></branch></revision></master></buildsByBranchName><lastBuiltRevision><SHA1>3021739a6072c60295dcea08c160cde22b8f4eca</SHA1><branch><SHA1>3021739a6072c60295dcea08c160cde22b8f4eca</SHA1><name>master</name></branch></lastBuiltRevision><remoteUrl>ssh://jenkins@gerrit.osmocom.org:29418/libosmocore</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><building>false</building><displayName>#2388</displayName><duration>191060</duration><estimatedDuration>182795</estimatedDuration><fullDisplayName>gerrit-libosmocore-build #2388</fullDisplayName><id>2388</id><inProgress>false</inProgress><keepLog>false</keepLog><number>2388</number><queueId>91066</queueId><result>SUCCESS</result><timestamp>1776433769256</timestamp><url>https://jenkins.osmocom.org/jenkins/view/All/job/gerrit-libosmocore-build/2388/</url><builtOn></builtOn><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tests/testsuite.at</affectedPath><affectedPath>src/core/osmo_io.c</affectedPath><affectedPath>tests/osmo_io/osmo_io_backpressure_test.c</affectedPath><affectedPath>tests/osmo_io/osmo_io_backpressure_test_uring.ok</affectedPath><affectedPath>tests/osmo_io/osmo_io_backpressure_test.ok</affectedPath><affectedPath>tests/Makefile.am</affectedPath><commitId>3021739a6072c60295dcea08c160cde22b8f4eca</commitId><timestamp>1776433625000</timestamp><author><absoluteUrl>https://jenkins.osmocom.org/jenkins/user/fixeria</absoluteUrl><fullName>Vadim Yanitskiy</fullName></author><authorEmail>vyanitskiy@sysmocom.de</authorEmail><comment>osmo_io: iofd_txqueue_dequeue(): fix double next-&gt;io_len decrement

The fill-up logic in iofd_txqueue_dequeue() was incorrectly
decrementing next-&gt;io_len twice: once when removing a buffer that
didn't fit, and again when assigning to msg_iovlen.  This may cause
next-&gt;io_len to reach 0 and trigger an assert at osmo_io.c:274:

  Assert failed next-&gt;io_len &gt; 0

Add separate osmo_io_backpressure_test to verify queue management
under network backpressure conditions.  Use separate .ok files for
poll vs io_uring backends since they produce different I/O patterns.
This unit test reproduces the assert when the fix is not applied.

Change-Id: Ia96e25d11d8d683fa9dd0c56bdac257992edd782
Fixes: 3c2a02db4 ("osmo-io: Put together message buffers when dequeued from tx queue")
Related: OS#6997
</comment><date>2026-04-17 20:47:05 +0700</date><id>3021739a6072c60295dcea08c160cde22b8f4eca</id><msg>osmo_io: iofd_txqueue_dequeue(): fix double next-&gt;io_len decrement</msg><path><editType>add</editType><file>tests/osmo_io/osmo_io_backpressure_test.ok</file></path><path><editType>edit</editType><file>tests/testsuite.at</file></path><path><editType>add</editType><file>tests/osmo_io/osmo_io_backpressure_test.c</file></path><path><editType>edit</editType><file>src/core/osmo_io.c</file></path><path><editType>add</editType><file>tests/osmo_io/osmo_io_backpressure_test_uring.ok</file></path><path><editType>edit</editType><file>tests/Makefile.am</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>https://jenkins.osmocom.org/jenkins/user/fixeria</absoluteUrl><fullName>Vadim Yanitskiy</fullName></culprit><run><number>2388</number><url>https://jenkins.osmocom.org/jenkins/view/All/job/gerrit-libosmocore-build/a2=default,a3=default,a4=default,arch=amd64,label=io_uring/2388/</url></run><run><number>2388</number><url>https://jenkins.osmocom.org/jenkins/view/All/job/gerrit-libosmocore-build/a2=default,a3=default,a4=default,arch=arm-none-eabi,label=io_uring/2388/</url></run></lastCompletedBuild><lastStableBuild _class='hudson.matrix.MatrixBuild'><action _class='hudson.model.CauseAction'><cause _class='org.jenkinsci.plugins.workflow.support.steps.build.BuildUpstreamCause'><shortDescription>Started by upstream project "gerrit-libosmocore" build number 2,387</shortDescription><upstreamBuild>2387</upstreamBuild><upstreamProject>gerrit-libosmocore</upstreamProject><upstreamUrl>job/gerrit-libosmocore/</upstreamUrl></cause></action><action></action><action></action><action _class='hudson.model.ParametersAction'><parameter _class='hudson.model.StringParameterValue'><name>COMMENT_TYPE</name><value></value></parameter><parameter _class='hudson.model.StringParameterValue'><name>DISTRO</name><value></value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_BRANCH</name><value>master</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_CHANGE_NUMBER</name><value>42638</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_HOST</name><value>gerrit.osmocom.org</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_NUMBER</name><value>2</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_REVISION</name><value>3021739a6072c60295dcea08c160cde22b8f4eca</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_UPLOADER_NAME</name><value>fixeria</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PORT</name><value>29418</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PROJECT</name><value>libosmocore</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_REFSPEC</name><value>refs/changes/38/42638/2</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_REPO_URL</name><value>ssh://jenkins@gerrit.osmocom.org:29418/libosmocore</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>PIPELINE_BUILD_URL</name><value>https://jenkins.osmocom.org/jenkins/job/gerrit-libosmocore/2387/</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>PROJECT_NAME</name><value>libosmocore</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>BRANCH_CI</name><value>master</value></parameter></action><action _class='jenkins.metrics.impl.TimeInQueueAction'><blockedDurationMillis>0</blockedDurationMillis><blockedTimeMillis>0</blockedTimeMillis><buildableDurationMillis>0</buildableDurationMillis><buildableTimeMillis>0</buildableTimeMillis><buildingDurationMillis>191060</buildingDurationMillis><executingTimeMillis>191060</executingTimeMillis><executorUtilization>1.0</executorUtilization><subTaskCount>0</subTaskCount><waitingDurationMillis>5087</waitingDurationMillis><waitingTimeMillis>5087</waitingTimeMillis></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><osmith1.9.1 _class='hudson.plugins.git.util.Build'><buildNumber>1315</buildNumber><marked><SHA1>197248107c5c2007b44c4df1bec011e6c1754cda</SHA1><branch><SHA1>197248107c5c2007b44c4df1bec011e6c1754cda</SHA1><name>osmith/1.9.1</name></branch></marked><revision><SHA1>197248107c5c2007b44c4df1bec011e6c1754cda</SHA1><branch><SHA1>197248107c5c2007b44c4df1bec011e6c1754cda</SHA1><name>osmith/1.9.1</name></branch></revision></osmith1.9.1><pespinrel-1.12.0 _class='hudson.plugins.git.util.Build'><buildNumber>2156</buildNumber><marked><SHA1>d38417e5965ae02eaffdd87d281098f30105b8b7</SHA1><branch><SHA1>d38417e5965ae02eaffdd87d281098f30105b8b7</SHA1><name>pespin/rel-1.12.0</name></branch></marked><revision><SHA1>d38417e5965ae02eaffdd87d281098f30105b8b7</SHA1><branch><SHA1>d38417e5965ae02eaffdd87d281098f30105b8b7</SHA1><name>pespin/rel-1.12.0</name></branch></revision></pespinrel-1.12.0><osmith1.9.2 _class='hudson.plugins.git.util.Build'><buildNumber>1319</buildNumber><marked><SHA1>3f0bbe398e16513906d29802d058a87655fceaf1</SHA1><branch><SHA1>3f0bbe398e16513906d29802d058a87655fceaf1</SHA1><name>osmith/1.9.2</name></branch></marked><revision><SHA1>3f0bbe398e16513906d29802d058a87655fceaf1</SHA1><branch><SHA1>3f0bbe398e16513906d29802d058a87655fceaf1</SHA1><name>osmith/1.9.2</name></branch></revision></osmith1.9.2><osmithwip _class='hudson.plugins.git.util.Build'><buildNumber>1773</buildNumber><marked><SHA1>aa177c0f4457df953e3e6e121e8806a4cf403d72</SHA1><branch><SHA1>aa177c0f4457df953e3e6e121e8806a4cf403d72</SHA1><name>osmith/wip</name></branch></marked><revision><SHA1>aa177c0f4457df953e3e6e121e8806a4cf403d72</SHA1><branch><SHA1>aa177c0f4457df953e3e6e121e8806a4cf403d72</SHA1><name>osmith/wip</name></branch></revision></osmithwip><pespinrel-1.10.0 _class='hudson.plugins.git.util.Build'><buildNumber>1877</buildNumber><marked><SHA1>a32a6ee4a6532e0c1d358ecebb8f13b8acc75dc1</SHA1><branch><SHA1>a32a6ee4a6532e0c1d358ecebb8f13b8acc75dc1</SHA1><name>pespin/rel-1.10.0</name></branch></marked><revision><SHA1>a32a6ee4a6532e0c1d358ecebb8f13b8acc75dc1</SHA1><branch><SHA1>a32a6ee4a6532e0c1d358ecebb8f13b8acc75dc1</SHA1><name>pespin/rel-1.10.0</name></branch></revision></pespinrel-1.10.0><osmith1.11.2 _class='hudson.plugins.git.util.Build'><buildNumber>2093</buildNumber><marked><SHA1>22a11a35e3feec31b86738d19f3d85406feb099a</SHA1><branch><SHA1>22a11a35e3feec31b86738d19f3d85406feb099a</SHA1><name>osmith/1.11.2</name></branch></marked><revision><SHA1>22a11a35e3feec31b86738d19f3d85406feb099a</SHA1><branch><SHA1>22a11a35e3feec31b86738d19f3d85406feb099a</SHA1><name>osmith/1.11.2</name></branch></revision></osmith1.11.2><osmith1.11.3 _class='hudson.plugins.git.util.Build'><buildNumber>2118</buildNumber><marked><SHA1>17ca3339e13d779a330781334e92f48d7ea87d36</SHA1><branch><SHA1>17ca3339e13d779a330781334e92f48d7ea87d36</SHA1><name>osmith/1.11.3</name></branch></marked><revision><SHA1>17ca3339e13d779a330781334e92f48d7ea87d36</SHA1><branch><SHA1>17ca3339e13d779a330781334e92f48d7ea87d36</SHA1><name>osmith/1.11.3</name></branch></revision></osmith1.11.3><rel-1.9.1 _class='hudson.plugins.git.util.Build'><buildNumber>1740</buildNumber><marked><SHA1>3a1bb866bbc481b379034723ede51a2e4e8b9c65</SHA1><branch><SHA1>3a1bb866bbc481b379034723ede51a2e4e8b9c65</SHA1><name>rel-1.9.1</name></branch></marked><revision><SHA1>3a1bb866bbc481b379034723ede51a2e4e8b9c65</SHA1><branch><SHA1>3a1bb866bbc481b379034723ede51a2e4e8b9c65</SHA1><name>rel-1.9.1</name></branch></revision></rel-1.9.1><arehbeinosmo_io_ipa _class='hudson.plugins.git.util.Build'><buildNumber>833</buildNumber><marked><SHA1>d75a0cca8117b609da75111388bf8baea5dac0a5</SHA1><branch><SHA1>d75a0cca8117b609da75111388bf8baea5dac0a5</SHA1><name>arehbein/osmo_io_ipa</name></branch></marked><revision><SHA1>d75a0cca8117b609da75111388bf8baea5dac0a5</SHA1><branch><SHA1>d75a0cca8117b609da75111388bf8baea5dac0a5</SHA1><name>arehbein/osmo_io_ipa</name></branch></revision></arehbeinosmo_io_ipa><rel-1.11.1 _class='hudson.plugins.git.util.Build'><buildNumber>1946</buildNumber><marked><SHA1>87de74a9f5835fb56a4758860aea3e673c29060e</SHA1><branch><SHA1>87de74a9f5835fb56a4758860aea3e673c29060e</SHA1><name>rel-1.11.1</name></branch></marked><revision><SHA1>87de74a9f5835fb56a4758860aea3e673c29060e</SHA1><branch><SHA1>87de74a9f5835fb56a4758860aea3e673c29060e</SHA1><name>rel-1.11.1</name></branch></revision></rel-1.11.1><rel-1.9.3 _class='hudson.plugins.git.util.Build'><buildNumber>1743</buildNumber><marked><SHA1>55ea51049775e623880f62026ad827f580aec7a2</SHA1><branch><SHA1>55ea51049775e623880f62026ad827f580aec7a2</SHA1><name>rel-1.9.3</name></branch></marked><revision><SHA1>55ea51049775e623880f62026ad827f580aec7a2</SHA1><branch><SHA1>55ea51049775e623880f62026ad827f580aec7a2</SHA1><name>rel-1.9.3</name></branch></revision></rel-1.9.3><master _class='hudson.plugins.git.util.Build'><buildNumber>2388</buildNumber><marked><SHA1>3021739a6072c60295dcea08c160cde22b8f4eca</SHA1><branch><SHA1>3021739a6072c60295dcea08c160cde22b8f4eca</SHA1><name>master</name></branch></marked><revision><SHA1>3021739a6072c60295dcea08c160cde22b8f4eca</SHA1><branch><SHA1>3021739a6072c60295dcea08c160cde22b8f4eca</SHA1><name>master</name></branch></revision></master></buildsByBranchName><lastBuiltRevision><SHA1>3021739a6072c60295dcea08c160cde22b8f4eca</SHA1><branch><SHA1>3021739a6072c60295dcea08c160cde22b8f4eca</SHA1><name>master</name></branch></lastBuiltRevision><remoteUrl>ssh://jenkins@gerrit.osmocom.org:29418/libosmocore</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><building>false</building><displayName>#2388</displayName><duration>191060</duration><estimatedDuration>182795</estimatedDuration><fullDisplayName>gerrit-libosmocore-build #2388</fullDisplayName><id>2388</id><inProgress>false</inProgress><keepLog>false</keepLog><number>2388</number><queueId>91066</queueId><result>SUCCESS</result><timestamp>1776433769256</timestamp><url>https://jenkins.osmocom.org/jenkins/view/All/job/gerrit-libosmocore-build/2388/</url><builtOn></builtOn><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tests/testsuite.at</affectedPath><affectedPath>src/core/osmo_io.c</affectedPath><affectedPath>tests/osmo_io/osmo_io_backpressure_test.c</affectedPath><affectedPath>tests/osmo_io/osmo_io_backpressure_test_uring.ok</affectedPath><affectedPath>tests/osmo_io/osmo_io_backpressure_test.ok</affectedPath><affectedPath>tests/Makefile.am</affectedPath><commitId>3021739a6072c60295dcea08c160cde22b8f4eca</commitId><timestamp>1776433625000</timestamp><author><absoluteUrl>https://jenkins.osmocom.org/jenkins/user/fixeria</absoluteUrl><fullName>Vadim Yanitskiy</fullName></author><authorEmail>vyanitskiy@sysmocom.de</authorEmail><comment>osmo_io: iofd_txqueue_dequeue(): fix double next-&gt;io_len decrement

The fill-up logic in iofd_txqueue_dequeue() was incorrectly
decrementing next-&gt;io_len twice: once when removing a buffer that
didn't fit, and again when assigning to msg_iovlen.  This may cause
next-&gt;io_len to reach 0 and trigger an assert at osmo_io.c:274:

  Assert failed next-&gt;io_len &gt; 0

Add separate osmo_io_backpressure_test to verify queue management
under network backpressure conditions.  Use separate .ok files for
poll vs io_uring backends since they produce different I/O patterns.
This unit test reproduces the assert when the fix is not applied.

Change-Id: Ia96e25d11d8d683fa9dd0c56bdac257992edd782
Fixes: 3c2a02db4 ("osmo-io: Put together message buffers when dequeued from tx queue")
Related: OS#6997
</comment><date>2026-04-17 20:47:05 +0700</date><id>3021739a6072c60295dcea08c160cde22b8f4eca</id><msg>osmo_io: iofd_txqueue_dequeue(): fix double next-&gt;io_len decrement</msg><path><editType>add</editType><file>tests/osmo_io/osmo_io_backpressure_test.ok</file></path><path><editType>edit</editType><file>tests/testsuite.at</file></path><path><editType>add</editType><file>tests/osmo_io/osmo_io_backpressure_test.c</file></path><path><editType>edit</editType><file>src/core/osmo_io.c</file></path><path><editType>add</editType><file>tests/osmo_io/osmo_io_backpressure_test_uring.ok</file></path><path><editType>edit</editType><file>tests/Makefile.am</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>https://jenkins.osmocom.org/jenkins/user/fixeria</absoluteUrl><fullName>Vadim Yanitskiy</fullName></culprit><run><number>2388</number><url>https://jenkins.osmocom.org/jenkins/view/All/job/gerrit-libosmocore-build/a2=default,a3=default,a4=default,arch=amd64,label=io_uring/2388/</url></run><run><number>2388</number><url>https://jenkins.osmocom.org/jenkins/view/All/job/gerrit-libosmocore-build/a2=default,a3=default,a4=default,arch=arm-none-eabi,label=io_uring/2388/</url></run></lastStableBuild><lastSuccessfulBuild _class='hudson.matrix.MatrixBuild'><action _class='hudson.model.CauseAction'><cause _class='org.jenkinsci.plugins.workflow.support.steps.build.BuildUpstreamCause'><shortDescription>Started by upstream project "gerrit-libosmocore" build number 2,387</shortDescription><upstreamBuild>2387</upstreamBuild><upstreamProject>gerrit-libosmocore</upstreamProject><upstreamUrl>job/gerrit-libosmocore/</upstreamUrl></cause></action><action></action><action></action><action _class='hudson.model.ParametersAction'><parameter _class='hudson.model.StringParameterValue'><name>COMMENT_TYPE</name><value></value></parameter><parameter _class='hudson.model.StringParameterValue'><name>DISTRO</name><value></value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_BRANCH</name><value>master</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_CHANGE_NUMBER</name><value>42638</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_HOST</name><value>gerrit.osmocom.org</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_NUMBER</name><value>2</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_REVISION</name><value>3021739a6072c60295dcea08c160cde22b8f4eca</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_UPLOADER_NAME</name><value>fixeria</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PORT</name><value>29418</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_PROJECT</name><value>libosmocore</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_REFSPEC</name><value>refs/changes/38/42638/2</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>GERRIT_REPO_URL</name><value>ssh://jenkins@gerrit.osmocom.org:29418/libosmocore</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>PIPELINE_BUILD_URL</name><value>https://jenkins.osmocom.org/jenkins/job/gerrit-libosmocore/2387/</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>PROJECT_NAME</name><value>libosmocore</value></parameter><parameter _class='hudson.model.StringParameterValue'><name>BRANCH_CI</name><value>master</value></parameter></action><action _class='jenkins.metrics.impl.TimeInQueueAction'><blockedDurationMillis>0</blockedDurationMillis><blockedTimeMillis>0</blockedTimeMillis><buildableDurationMillis>0</buildableDurationMillis><buildableTimeMillis>0</buildableTimeMillis><buildingDurationMillis>191060</buildingDurationMillis><executingTimeMillis>191060</executingTimeMillis><executorUtilization>1.0</executorUtilization><subTaskCount>0</subTaskCount><waitingDurationMillis>5087</waitingDurationMillis><waitingTimeMillis>5087</waitingTimeMillis></action><action></action><action _class='hudson.plugins.git.util.BuildData'><buildsByBranchName><osmith1.9.1 _class='hudson.plugins.git.util.Build'><buildNumber>1315</buildNumber><marked><SHA1>197248107c5c2007b44c4df1bec011e6c1754cda</SHA1><branch><SHA1>197248107c5c2007b44c4df1bec011e6c1754cda</SHA1><name>osmith/1.9.1</name></branch></marked><revision><SHA1>197248107c5c2007b44c4df1bec011e6c1754cda</SHA1><branch><SHA1>197248107c5c2007b44c4df1bec011e6c1754cda</SHA1><name>osmith/1.9.1</name></branch></revision></osmith1.9.1><pespinrel-1.12.0 _class='hudson.plugins.git.util.Build'><buildNumber>2156</buildNumber><marked><SHA1>d38417e5965ae02eaffdd87d281098f30105b8b7</SHA1><branch><SHA1>d38417e5965ae02eaffdd87d281098f30105b8b7</SHA1><name>pespin/rel-1.12.0</name></branch></marked><revision><SHA1>d38417e5965ae02eaffdd87d281098f30105b8b7</SHA1><branch><SHA1>d38417e5965ae02eaffdd87d281098f30105b8b7</SHA1><name>pespin/rel-1.12.0</name></branch></revision></pespinrel-1.12.0><osmith1.9.2 _class='hudson.plugins.git.util.Build'><buildNumber>1319</buildNumber><marked><SHA1>3f0bbe398e16513906d29802d058a87655fceaf1</SHA1><branch><SHA1>3f0bbe398e16513906d29802d058a87655fceaf1</SHA1><name>osmith/1.9.2</name></branch></marked><revision><SHA1>3f0bbe398e16513906d29802d058a87655fceaf1</SHA1><branch><SHA1>3f0bbe398e16513906d29802d058a87655fceaf1</SHA1><name>osmith/1.9.2</name></branch></revision></osmith1.9.2><osmithwip _class='hudson.plugins.git.util.Build'><buildNumber>1773</buildNumber><marked><SHA1>aa177c0f4457df953e3e6e121e8806a4cf403d72</SHA1><branch><SHA1>aa177c0f4457df953e3e6e121e8806a4cf403d72</SHA1><name>osmith/wip</name></branch></marked><revision><SHA1>aa177c0f4457df953e3e6e121e8806a4cf403d72</SHA1><branch><SHA1>aa177c0f4457df953e3e6e121e8806a4cf403d72</SHA1><name>osmith/wip</name></branch></revision></osmithwip><pespinrel-1.10.0 _class='hudson.plugins.git.util.Build'><buildNumber>1877</buildNumber><marked><SHA1>a32a6ee4a6532e0c1d358ecebb8f13b8acc75dc1</SHA1><branch><SHA1>a32a6ee4a6532e0c1d358ecebb8f13b8acc75dc1</SHA1><name>pespin/rel-1.10.0</name></branch></marked><revision><SHA1>a32a6ee4a6532e0c1d358ecebb8f13b8acc75dc1</SHA1><branch><SHA1>a32a6ee4a6532e0c1d358ecebb8f13b8acc75dc1</SHA1><name>pespin/rel-1.10.0</name></branch></revision></pespinrel-1.10.0><osmith1.11.2 _class='hudson.plugins.git.util.Build'><buildNumber>2093</buildNumber><marked><SHA1>22a11a35e3feec31b86738d19f3d85406feb099a</SHA1><branch><SHA1>22a11a35e3feec31b86738d19f3d85406feb099a</SHA1><name>osmith/1.11.2</name></branch></marked><revision><SHA1>22a11a35e3feec31b86738d19f3d85406feb099a</SHA1><branch><SHA1>22a11a35e3feec31b86738d19f3d85406feb099a</SHA1><name>osmith/1.11.2</name></branch></revision></osmith1.11.2><osmith1.11.3 _class='hudson.plugins.git.util.Build'><buildNumber>2118</buildNumber><marked><SHA1>17ca3339e13d779a330781334e92f48d7ea87d36</SHA1><branch><SHA1>17ca3339e13d779a330781334e92f48d7ea87d36</SHA1><name>osmith/1.11.3</name></branch></marked><revision><SHA1>17ca3339e13d779a330781334e92f48d7ea87d36</SHA1><branch><SHA1>17ca3339e13d779a330781334e92f48d7ea87d36</SHA1><name>osmith/1.11.3</name></branch></revision></osmith1.11.3><rel-1.9.1 _class='hudson.plugins.git.util.Build'><buildNumber>1740</buildNumber><marked><SHA1>3a1bb866bbc481b379034723ede51a2e4e8b9c65</SHA1><branch><SHA1>3a1bb866bbc481b379034723ede51a2e4e8b9c65</SHA1><name>rel-1.9.1</name></branch></marked><revision><SHA1>3a1bb866bbc481b379034723ede51a2e4e8b9c65</SHA1><branch><SHA1>3a1bb866bbc481b379034723ede51a2e4e8b9c65</SHA1><name>rel-1.9.1</name></branch></revision></rel-1.9.1><arehbeinosmo_io_ipa _class='hudson.plugins.git.util.Build'><buildNumber>833</buildNumber><marked><SHA1>d75a0cca8117b609da75111388bf8baea5dac0a5</SHA1><branch><SHA1>d75a0cca8117b609da75111388bf8baea5dac0a5</SHA1><name>arehbein/osmo_io_ipa</name></branch></marked><revision><SHA1>d75a0cca8117b609da75111388bf8baea5dac0a5</SHA1><branch><SHA1>d75a0cca8117b609da75111388bf8baea5dac0a5</SHA1><name>arehbein/osmo_io_ipa</name></branch></revision></arehbeinosmo_io_ipa><rel-1.11.1 _class='hudson.plugins.git.util.Build'><buildNumber>1946</buildNumber><marked><SHA1>87de74a9f5835fb56a4758860aea3e673c29060e</SHA1><branch><SHA1>87de74a9f5835fb56a4758860aea3e673c29060e</SHA1><name>rel-1.11.1</name></branch></marked><revision><SHA1>87de74a9f5835fb56a4758860aea3e673c29060e</SHA1><branch><SHA1>87de74a9f5835fb56a4758860aea3e673c29060e</SHA1><name>rel-1.11.1</name></branch></revision></rel-1.11.1><rel-1.9.3 _class='hudson.plugins.git.util.Build'><buildNumber>1743</buildNumber><marked><SHA1>55ea51049775e623880f62026ad827f580aec7a2</SHA1><branch><SHA1>55ea51049775e623880f62026ad827f580aec7a2</SHA1><name>rel-1.9.3</name></branch></marked><revision><SHA1>55ea51049775e623880f62026ad827f580aec7a2</SHA1><branch><SHA1>55ea51049775e623880f62026ad827f580aec7a2</SHA1><name>rel-1.9.3</name></branch></revision></rel-1.9.3><master _class='hudson.plugins.git.util.Build'><buildNumber>2388</buildNumber><marked><SHA1>3021739a6072c60295dcea08c160cde22b8f4eca</SHA1><branch><SHA1>3021739a6072c60295dcea08c160cde22b8f4eca</SHA1><name>master</name></branch></marked><revision><SHA1>3021739a6072c60295dcea08c160cde22b8f4eca</SHA1><branch><SHA1>3021739a6072c60295dcea08c160cde22b8f4eca</SHA1><name>master</name></branch></revision></master></buildsByBranchName><lastBuiltRevision><SHA1>3021739a6072c60295dcea08c160cde22b8f4eca</SHA1><branch><SHA1>3021739a6072c60295dcea08c160cde22b8f4eca</SHA1><name>master</name></branch></lastBuiltRevision><remoteUrl>ssh://jenkins@gerrit.osmocom.org:29418/libosmocore</remoteUrl><scmName></scmName></action><action></action><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction'></action><building>false</building><displayName>#2388</displayName><duration>191060</duration><estimatedDuration>182795</estimatedDuration><fullDisplayName>gerrit-libosmocore-build #2388</fullDisplayName><id>2388</id><inProgress>false</inProgress><keepLog>false</keepLog><number>2388</number><queueId>91066</queueId><result>SUCCESS</result><timestamp>1776433769256</timestamp><url>https://jenkins.osmocom.org/jenkins/view/All/job/gerrit-libosmocore-build/2388/</url><builtOn></builtOn><changeSet _class='hudson.plugins.git.GitChangeSetList'><item _class='hudson.plugins.git.GitChangeSet'><affectedPath>tests/testsuite.at</affectedPath><affectedPath>src/core/osmo_io.c</affectedPath><affectedPath>tests/osmo_io/osmo_io_backpressure_test.c</affectedPath><affectedPath>tests/osmo_io/osmo_io_backpressure_test_uring.ok</affectedPath><affectedPath>tests/osmo_io/osmo_io_backpressure_test.ok</affectedPath><affectedPath>tests/Makefile.am</affectedPath><commitId>3021739a6072c60295dcea08c160cde22b8f4eca</commitId><timestamp>1776433625000</timestamp><author><absoluteUrl>https://jenkins.osmocom.org/jenkins/user/fixeria</absoluteUrl><fullName>Vadim Yanitskiy</fullName></author><authorEmail>vyanitskiy@sysmocom.de</authorEmail><comment>osmo_io: iofd_txqueue_dequeue(): fix double next-&gt;io_len decrement

The fill-up logic in iofd_txqueue_dequeue() was incorrectly
decrementing next-&gt;io_len twice: once when removing a buffer that
didn't fit, and again when assigning to msg_iovlen.  This may cause
next-&gt;io_len to reach 0 and trigger an assert at osmo_io.c:274:

  Assert failed next-&gt;io_len &gt; 0

Add separate osmo_io_backpressure_test to verify queue management
under network backpressure conditions.  Use separate .ok files for
poll vs io_uring backends since they produce different I/O patterns.
This unit test reproduces the assert when the fix is not applied.

Change-Id: Ia96e25d11d8d683fa9dd0c56bdac257992edd782
Fixes: 3c2a02db4 ("osmo-io: Put together message buffers when dequeued from tx queue")
Related: OS#6997
</comment><date>2026-04-17 20:47:05 +0700</date><id>3021739a6072c60295dcea08c160cde22b8f4eca</id><msg>osmo_io: iofd_txqueue_dequeue(): fix double next-&gt;io_len decrement</msg><path><editType>add</editType><file>tests/osmo_io/osmo_io_backpressure_test.ok</file></path><path><editType>edit</editType><file>tests/testsuite.at</file></path><path><editType>add</editType><file>tests/osmo_io/osmo_io_backpressure_test.c</file></path><path><editType>edit</editType><file>src/core/osmo_io.c</file></path><path><editType>add</editType><file>tests/osmo_io/osmo_io_backpressure_test_uring.ok</file></path><path><editType>edit</editType><file>tests/Makefile.am</file></path></item><kind>git</kind></changeSet><culprit><absoluteUrl>https://jenkins.osmocom.org/jenkins/user/fixeria</absoluteUrl><fullName>Vadim Yanitskiy</fullName></culprit><run><number>2388</number><url>https://jenkins.osmocom.org/jenkins/view/All/job/gerrit-libosmocore-build/a2=default,a3=default,a4=default,arch=amd64,label=io_uring/2388/</url></run><run><number>2388</number><url>https://jenkins.osmocom.org/jenkins/view/All/job/gerrit-libosmocore-build/a2=default,a3=default,a4=default,arch=arm-none-eabi,label=io_uring/2388/</url></run></lastSuccessfulBuild><nextBuildNumber>2389</nextBuildNumber><property _class='jenkins.model.BuildDiscarderProperty'></property><property _class='hudson.model.ParametersDefinitionProperty'><parameterDefinition _class='hudson.model.StringParameterDefinition'><defaultParameterValue _class='hudson.model.StringParameterValue'><name>BRANCH_CI</name><value>master</value></defaultParameterValue><description>osmo-ci.git branch
</description><name>BRANCH_CI</name><type>StringParameterDefinition</type></parameterDefinition><parameterDefinition _class='hudson.model.StringParameterDefinition'><defaultParameterValue _class='hudson.model.StringParameterValue'><name>COMMENT_TYPE</name><value></value></defaultParameterValue><description>set by gerrit verification pipeline job</description><name>COMMENT_TYPE</name><type>StringParameterDefinition</type></parameterDefinition><parameterDefinition _class='hudson.model.StringParameterDefinition'><defaultParameterValue _class='hudson.model.StringParameterValue'><name>DISTRO</name><value></value></defaultParameterValue><description>set by gerrit verification pipeline job</description><name>DISTRO</name><type>StringParameterDefinition</type></parameterDefinition><parameterDefinition _class='hudson.model.StringParameterDefinition'><defaultParameterValue _class='hudson.model.StringParameterValue'><name>GERRIT_BRANCH</name><value></value></defaultParameterValue><description>set by gerrit verification pipeline job</description><name>GERRIT_BRANCH</name><type>StringParameterDefinition</type></parameterDefinition><parameterDefinition _class='hudson.model.StringParameterDefinition'><defaultParameterValue _class='hudson.model.StringParameterValue'><name>GERRIT_CHANGE_NUMBER</name><value></value></defaultParameterValue><description>set by gerrit verification pipeline job</description><name>GERRIT_CHANGE_NUMBER</name><type>StringParameterDefinition</type></parameterDefinition><parameterDefinition _class='hudson.model.StringParameterDefinition'><defaultParameterValue _class='hudson.model.StringParameterValue'><name>GERRIT_HOST</name><value></value></defaultParameterValue><description>set by gerrit verification pipeline job</description><name>GERRIT_HOST</name><type>StringParameterDefinition</type></parameterDefinition><parameterDefinition _class='hudson.model.StringParameterDefinition'><defaultParameterValue _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_NUMBER</name><value></value></defaultParameterValue><description>set by gerrit verification pipeline job</description><name>GERRIT_PATCHSET_NUMBER</name><type>StringParameterDefinition</type></parameterDefinition><parameterDefinition _class='hudson.model.StringParameterDefinition'><defaultParameterValue _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_REVISION</name><value></value></defaultParameterValue><description>set by gerrit verification pipeline job</description><name>GERRIT_PATCHSET_REVISION</name><type>StringParameterDefinition</type></parameterDefinition><parameterDefinition _class='hudson.model.StringParameterDefinition'><defaultParameterValue _class='hudson.model.StringParameterValue'><name>GERRIT_PATCHSET_UPLOADER_NAME</name><value></value></defaultParameterValue><description>set by gerrit verification pipeline job</description><name>GERRIT_PATCHSET_UPLOADER_NAME</name><type>StringParameterDefinition</type></parameterDefinition><parameterDefinition _class='hudson.model.StringParameterDefinition'><defaultParameterValue _class='hudson.model.StringParameterValue'><name>GERRIT_PORT</name><value></value></defaultParameterValue><description>set by gerrit verification pipeline job</description><name>GERRIT_PORT</name><type>StringParameterDefinition</type></parameterDefinition><parameterDefinition _class='hudson.model.StringParameterDefinition'><defaultParameterValue _class='hudson.model.StringParameterValue'><name>GERRIT_PROJECT</name><value></value></defaultParameterValue><description>set by gerrit verification pipeline job</description><name>GERRIT_PROJECT</name><type>StringParameterDefinition</type></parameterDefinition><parameterDefinition _class='hudson.model.StringParameterDefinition'><defaultParameterValue _class='hudson.model.StringParameterValue'><name>GERRIT_REFSPEC</name><value></value></defaultParameterValue><description>set by gerrit verification pipeline job</description><name>GERRIT_REFSPEC</name><type>StringParameterDefinition</type></parameterDefinition><parameterDefinition _class='hudson.model.StringParameterDefinition'><defaultParameterValue _class='hudson.model.StringParameterValue'><name>GERRIT_REPO_URL</name><value></value></defaultParameterValue><description>set by gerrit verification pipeline job</description><name>GERRIT_REPO_URL</name><type>StringParameterDefinition</type></parameterDefinition><parameterDefinition _class='hudson.model.StringParameterDefinition'><defaultParameterValue _class='hudson.model.StringParameterValue'><name>PIPELINE_BUILD_URL</name><value></value></defaultParameterValue><description>set by gerrit verification pipeline job</description><name>PIPELINE_BUILD_URL</name><type>StringParameterDefinition</type></parameterDefinition><parameterDefinition _class='hudson.model.StringParameterDefinition'><defaultParameterValue _class='hudson.model.StringParameterValue'><name>PROJECT_NAME</name><value></value></defaultParameterValue><description>set by gerrit verification pipeline job</description><name>PROJECT_NAME</name><type>StringParameterDefinition</type></parameterDefinition></property><concurrentBuild>true</concurrentBuild><disabled>false</disabled><scm _class='hudson.plugins.git.GitSCM'><type>hudson.plugins.git.GitSCM</type><branche></branche><mergeOptions><fastForwardMode>--ff</fastForwardMode><mergeStrategy>default</mergeStrategy></mergeOptions><userRemoteConfig></userRemoteConfig></scm><activeConfiguration><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.JobDisplayAction'></action><action _class='org.jenkinsci.plugins.testresultsanalyzer.TestResultsAnalyzerAction'></action><displayName>a2=default,a3=default,a4=default,arm-none-eabi,io_uring</displayName><fullDisplayName>gerrit-libosmocore-build » a2=default,a3=default,a4=default,arm-none-eabi,io_uring</fullDisplayName><fullName>gerrit-libosmocore-build/a2=default,a3=default,a4=default,arch=arm-none-eabi,label=io_uring</fullName><name>a2=default,a3=default,a4=default,arch=arm-none-eabi,label=io_uring</name><url>https://jenkins.osmocom.org/jenkins/view/All/job/gerrit-libosmocore-build/a2=default,a3=default,a4=default,arch=arm-none-eabi,label=io_uring/</url><buildable>true</buildable><build _class='hudson.matrix.MatrixRun'><number>2388</number><url>https://jenkins.osmocom.org/jenkins/view/All/job/gerrit-libosmocore-build/a2=default,a3=default,a4=default,arch=arm-none-eabi,label=io_uring/2388/</url></build><build _class='hudson.matrix.MatrixRun'><number>2387</number><url>https://jenkins.osmocom.org/jenkins/view/All/job/gerrit-libosmocore-build/a2=default,a3=default,a4=default,arch=arm-none-eabi,label=io_uring/2387/</url></build><build _class='hudson.matrix.MatrixRun'><number>2386</number><url>https://jenkins.osmocom.org/jenkins/view/All/job/gerrit-libosmocore-build/a2=default,a3=default,a4=default,arch=arm-none-eabi,label=io_uring/2386/</url></build><color>blue</color><firstBuild _class='hudson.matrix.MatrixRun'><number>2386</number><url>https://jenkins.osmocom.org/jenkins/view/All/job/gerrit-libosmocore-build/a2=default,a3=default,a4=default,arch=arm-none-eabi,label=io_uring/2386/</url></firstBuild><healthReport><description>Build stability: No recent builds failed.</description><iconClassName>icon-health-80plus</iconClassName><iconUrl>health-80plus.png</iconUrl><score>100</score></healthReport><inQueue>false</inQueue><keepDependencies>false</keepDependencies><lastBuild _class='hudson.matrix.MatrixRun'><number>2388</number><url>https://jenkins.osmocom.org/jenkins/view/All/job/gerrit-libosmocore-build/a2=default,a3=default,a4=default,arch=arm-none-eabi,label=io_uring/2388/</url></lastBuild><lastCompletedBuild _class='hudson.matrix.MatrixRun'><number>2388</number><url>https://jenkins.osmocom.org/jenkins/view/All/job/gerrit-libosmocore-build/a2=default,a3=default,a4=default,arch=arm-none-eabi,label=io_uring/2388/</url></lastCompletedBuild><lastStableBuild _class='hudson.matrix.MatrixRun'><number>2388</number><url>https://jenkins.osmocom.org/jenkins/view/All/job/gerrit-libosmocore-build/a2=default,a3=default,a4=default,arch=arm-none-eabi,label=io_uring/2388/</url></lastStableBuild><lastSuccessfulBuild _class='hudson.matrix.MatrixRun'><number>2388</number><url>https://jenkins.osmocom.org/jenkins/view/All/job/gerrit-libosmocore-build/a2=default,a3=default,a4=default,arch=arm-none-eabi,label=io_uring/2388/</url></lastSuccessfulBuild><nextBuildNumber>2389</nextBuildNumber><concurrentBuild>true</concurrentBuild><disabled>false</disabled><scm _class='hudson.plugins.git.GitSCM'></scm></activeConfiguration><activeConfiguration><action></action><action></action><action _class='org.jenkinsci.plugins.displayurlapi.actions.JobDisplayAction'></action><action _class='org.jenkinsci.plugins.testresultsanalyzer.TestResultsAnalyzerAction'></action><displayName>a2=default,a3=default,a4=default,amd64,io_uring</displayName><fullDisplayName>gerrit-libosmocore-build » a2=default,a3=default,a4=default,amd64,io_uring</fullDisplayName><fullName>gerrit-libosmocore-build/a2=default,a3=default,a4=default,arch=amd64,label=io_uring</fullName><name>a2=default,a3=default,a4=default,arch=amd64,label=io_uring</name><url>https://jenkins.osmocom.org/jenkins/view/All/job/gerrit-libosmocore-build/a2=default,a3=default,a4=default,arch=amd64,label=io_uring/</url><buildable>true</buildable><build _class='hudson.matrix.MatrixRun'><number>2388</number><url>https://jenkins.osmocom.org/jenkins/view/All/job/gerrit-libosmocore-build/a2=default,a3=default,a4=default,arch=amd64,label=io_uring/2388/</url></build><build _class='hudson.matrix.MatrixRun'><number>2387</number><url>https://jenkins.osmocom.org/jenkins/view/All/job/gerrit-libosmocore-build/a2=default,a3=default,a4=default,arch=amd64,label=io_uring/2387/</url></build><build _class='hudson.matrix.MatrixRun'><number>2386</number><url>https://jenkins.osmocom.org/jenkins/view/All/job/gerrit-libosmocore-build/a2=default,a3=default,a4=default,arch=amd64,label=io_uring/2386/</url></build><color>blue</color><firstBuild _class='hudson.matrix.MatrixRun'><number>2386</number><url>https://jenkins.osmocom.org/jenkins/view/All/job/gerrit-libosmocore-build/a2=default,a3=default,a4=default,arch=amd64,label=io_uring/2386/</url></firstBuild><healthReport><description>Build stability: No recent builds failed.</description><iconClassName>icon-health-80plus</iconClassName><iconUrl>health-80plus.png</iconUrl><score>100</score></healthReport><inQueue>false</inQueue><keepDependencies>false</keepDependencies><lastBuild _class='hudson.matrix.MatrixRun'><number>2388</number><url>https://jenkins.osmocom.org/jenkins/view/All/job/gerrit-libosmocore-build/a2=default,a3=default,a4=default,arch=amd64,label=io_uring/2388/</url></lastBuild><lastCompletedBuild _class='hudson.matrix.MatrixRun'><number>2388</number><url>https://jenkins.osmocom.org/jenkins/view/All/job/gerrit-libosmocore-build/a2=default,a3=default,a4=default,arch=amd64,label=io_uring/2388/</url></lastCompletedBuild><lastStableBuild _class='hudson.matrix.MatrixRun'><number>2388</number><url>https://jenkins.osmocom.org/jenkins/view/All/job/gerrit-libosmocore-build/a2=default,a3=default,a4=default,arch=amd64,label=io_uring/2388/</url></lastStableBuild><lastSuccessfulBuild _class='hudson.matrix.MatrixRun'><number>2388</number><url>https://jenkins.osmocom.org/jenkins/view/All/job/gerrit-libosmocore-build/a2=default,a3=default,a4=default,arch=amd64,label=io_uring/2388/</url></lastSuccessfulBuild><nextBuildNumber>2389</nextBuildNumber><concurrentBuild>true</concurrentBuild><disabled>false</disabled><scm _class='hudson.plugins.git.GitSCM'></scm></activeConfiguration></matrixProject>