Skip to content

Commit 8120ffb

Browse files
author
codebot
committed
Update main
# Conflicts: # apps/services/logger/metrics_logger_appconfig.h # apps/services/logger/metrics_logger_appconfig_cli11_schema.cpp # apps/services/logger/metrics_logger_appconfig_yaml_writer.cpp # apps/units/flexible_o_du/o_du_low/metrics/du_low_metric_producer_impl.h # apps/units/flexible_o_du/o_du_low/metrics/ldpc_decoder_metrics_producer.h # apps/units/flexible_o_du/o_du_low/metrics/ldpc_encoder_metrics_producer.h # apps/units/flexible_o_du/o_du_low/metrics/ldpc_rate_dematcher_metrics_producer.h # apps/units/flexible_o_du/o_du_low/metrics/ldpc_rate_matcher_metrics_producer.h # apps/units/flexible_o_du/o_du_low/metrics/pdsch_processor_metrics_producer.h # apps/units/flexible_o_du/o_du_low/metrics/pusch_channel_estimator_metrics_producer.h # apps/units/flexible_o_du/o_du_low/metrics/pusch_processor_metrics_producer.h # include/srsran/fapi/messages.h # lib/phy/upper/channel_processors/pdsch/pdsch_codeblock_processor.cpp # lib/phy/upper/channel_processors/pdsch/pdsch_codeblock_processor.h # lib/phy/upper/channel_processors/pdsch/pdsch_processor_concurrent_impl.cpp # lib/phy/upper/channel_processors/pdsch/pdsch_processor_lite_impl.cpp # lib/phy/upper/channel_processors/pdsch/pdsch_processor_lite_impl.h # tests/unittests/phy/upper/channel_processors/pusch/pusch_demodulator_test_data.tar.gz
2 parents a041e31 + ecc2103 commit 8120ffb

File tree

724 files changed

+23720
-11560
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

724 files changed

+23720
-11560
lines changed

.gitlab/ci-shared/build.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,9 @@ variables:
5353
ENABLE_ASAN: "" # Empty for cmake default
5454
ENABLE_TSAN: "" # Empty for cmake default
5555
ENABLE_GCOV: "" # Empty for cmake default
56+
ENABLE_UBSAN: "" # Empty for cmake default
57+
ENABLE_UBSAN_MIN: "" # Empty for cmake default
58+
ENABLE_RTSAN: "" # Empty for cmake default
5659
ENABLE_WERROR: "" # Empty for cmake default
5760
FORCE_DEBUG_INFO: "" # Empty for cmake default
5861
MARCH: "" # Empty for cmake default

.gitlab/ci/build.yml

Lines changed: 43 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -191,8 +191,8 @@ variables:
191191
exit $ret
192192
}
193193
if [[ $CI_MERGE_REQUEST_LABELS != *"ci-no-plugin"* && -n $PLUGIN_BRANCH ]]; then
194-
git submodule add https://gitlab-ci-token:${CI_JOB_TOKEN}@${CI_SERVER_SHELL_SSH_HOST}/${PLUGIN_REPO}.git ${PLUGIN_PATH} >/dev/null 2>&1
195-
git submodule set-branch --branch ${PLUGIN_BRANCH} ${PLUGIN_PATH} >/dev/null 2>&1
194+
git submodule add https://gitlab-ci-token:${CI_JOB_TOKEN}@${CI_SERVER_SHELL_SSH_HOST}/${PLUGIN_REPO}.git ${PLUGIN_PATH}
195+
git submodule set-branch --branch ${PLUGIN_BRANCH} ${PLUGIN_PATH}
196196
fi
197197
- build_srsgnb "${SRS_TARGET}"
198198
- launch_tests
@@ -244,6 +244,7 @@ variables:
244244
- |
245245
rm ${CI_PROJECT_DIR}/build/apps/gnb_split_7_2/gnb
246246
rm ${CI_PROJECT_DIR}/build/apps/gnb_split_8/gnb
247+
rm ${CI_PROJECT_DIR}/build/apps/gnb_split_6/gnb
247248
- launch_tests
248249
variables:
249250
PLUGIN_BRANCH: $MR_PLUGIN_REF
@@ -588,6 +589,11 @@ valgrind changed tests:
588589
- launch_tests
589590
cache:
590591
- *cache_build_get
592+
artifacts:
593+
when: on_failure
594+
paths:
595+
- build/Testing/Temporary
596+
expire_in: 1 day
591597

592598
intermediate commits clean:
593599
extends: intermediate commits cached
@@ -1614,7 +1620,7 @@ ubuntu-24.10 amd64 avx512 dpdk:
16141620
basic package:
16151621
extends: .deb-package
16161622
tags:
1617-
- ${INFRASTRUCTURE_TAG}
1623+
- ${INFRASTRUCTURE_TAG}
16181624
stage: build and unit tests
16191625
rules:
16201626
- if: $CI_DESCRIPTION =~ /Nightly E2E Tests OpenSource/
@@ -1693,6 +1699,29 @@ basic asan:
16931699
<<: *build_artifacts
16941700
expire_in: 3 days
16951701

1702+
basic rtsan:
1703+
extends: .build_and_unit
1704+
rules:
1705+
- if: $CI_DESCRIPTION =~ /Nightly E2E Tests/
1706+
retry: 2
1707+
interruptible: false
1708+
variables:
1709+
SRS_TARGET: gnb
1710+
OS: ubuntu-24.04-rtsan
1711+
COMPILER: clang
1712+
CMAKE_BUILD_TYPE: Debug
1713+
ASSERT_LEVEL: PARANOID
1714+
ENABLE_RTSAN: "True"
1715+
ENABLE_WERROR: "False"
1716+
TEST_MODE: none
1717+
MARCH: x86-64-v3
1718+
INFRASTRUCTURE_TAG: amd64-avx2
1719+
after_script:
1720+
- *build_after_script
1721+
artifacts:
1722+
<<: *build_artifacts
1723+
expire_in: 3 days
1724+
16961725
basic memcheck:
16971726
extends: .build_and_unit
16981727
rules:
@@ -1761,7 +1790,7 @@ basic avx512 dpdk:
17611790
FORCE_DEBUG_INFO: "True"
17621791
ASSERT_LEVEL: AUTO
17631792
INFRASTRUCTURE_TAG: amd64-avx2-avx512
1764-
BUILD_ARGS: -DEXIT_TIMEOUT=15
1793+
BUILD_ARGS: -DEXIT_TIMEOUT=30
17651794
after_script:
17661795
- *build_after_script
17671796
artifacts:
@@ -1775,6 +1804,16 @@ basic avx512 dpdk withassert:
17751804
variables:
17761805
ASSERT_LEVEL: PARANOID
17771806

1807+
basic avx512 dpdk rtsan:
1808+
extends: basic avx512 dpdk
1809+
rules:
1810+
- if: $CI_DESCRIPTION =~ /Nightly E2E Tests Plugin/
1811+
variables:
1812+
OS: ubuntu-24.04-rtsan
1813+
COMPILER: clang
1814+
ENABLE_RTSAN: "True"
1815+
ENABLE_WERROR: "False"
1816+
17781817
#######
17791818
# Web #
17801819
#######

.gitlab/ci/builders.yml

Lines changed: 91 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -542,6 +542,97 @@ manifest [ubuntu, 24.04]:
542542
matrix:
543543
- REGISTRY_URI: ["${CR_REGISTRY_URI}", "${GITLAB_REGISTRY_URI}"]
544544

545+
################################################################################
546+
# Ubuntu 24.04-rtsan
547+
################################################################################
548+
image-build-publish [ubuntu, 24.04-rtsan, amd64]:
549+
extends:
550+
- .image-build-publish
551+
variables:
552+
OS_FAMILY: debian-rtsan
553+
OS_NAME: ubuntu
554+
OS_VERSION: "24.04-rtsan"
555+
PLATFORM: amd64
556+
KUBERNETES_EPHEMERAL_STORAGE_REQUEST: "70G"
557+
KUBERNETES_EPHEMERAL_STORAGE_LIMIT: "70G"
558+
tags:
559+
- ${PLATFORM}-docker
560+
needs:
561+
- builder version
562+
- job: ubuntu-uhd-builder avx2
563+
parallel:
564+
matrix:
565+
- os_version: "24.04"
566+
uhd_version: ["4.7.0.0"] # "4.6.0.0" default
567+
- job: ubuntu-dpdk-builder avx2
568+
parallel:
569+
matrix:
570+
- os_version: "24.04"
571+
dpdk_version: ["23.11.1"]
572+
- job: ubuntu-dpdk-builder avx512
573+
parallel:
574+
matrix:
575+
- os_version: "24.04"
576+
dpdk_version: ["23.11.1"]
577+
578+
alternative-tag [ubuntu, 24.04-rtsan, amd64]:
579+
extends:
580+
- .alternative-tag
581+
variables:
582+
OS_NAME: ubuntu
583+
OS_VERSION: "24.04-rtsan"
584+
VERSION: ${DOCKER_BUILDER_VERSION}-amd64
585+
needs:
586+
- builder version
587+
- image-build-publish [ubuntu, 24.04-rtsan, amd64]
588+
589+
image-build-publish [ubuntu, 24.04-rtsan, arm64]:
590+
extends:
591+
- .image-build-publish
592+
variables:
593+
OS_FAMILY: debian-rtsan
594+
OS_NAME: ubuntu
595+
OS_VERSION: "24.04-rtsan"
596+
PLATFORM: arm64
597+
needs:
598+
- builder version
599+
- job: ubuntu-uhd-builder arm64
600+
parallel:
601+
matrix:
602+
- os_version: "24.04"
603+
uhd_version: ["4.7.0.0"] # "4.6.0.0" default
604+
- job: ubuntu-dpdk-builder arm64
605+
parallel:
606+
matrix:
607+
- os_version: "24.04"
608+
dpdk_version: ["23.11.1"]
609+
610+
alternative-tag [ubuntu, 24.04-rtsan, arm64]:
611+
extends:
612+
- .alternative-tag
613+
variables:
614+
OS_NAME: ubuntu
615+
OS_VERSION: "24.04-rtsan"
616+
VERSION: ${DOCKER_BUILDER_VERSION}-arm64
617+
needs:
618+
- builder version
619+
- image-build-publish [ubuntu, 24.04-rtsan, arm64]
620+
621+
manifest [ubuntu, 24.04-rtsan]:
622+
extends: .manifest
623+
variables:
624+
OS_NAME: ubuntu
625+
OS_VERSION: "24.04-rtsan"
626+
needs:
627+
- builder version
628+
- job: alternative-tag [ubuntu, 24.04-rtsan, amd64]
629+
optional: false
630+
- job: alternative-tag [ubuntu, 24.04-rtsan, arm64]
631+
optional: false
632+
parallel:
633+
matrix:
634+
- REGISTRY_URI: ["${CR_REGISTRY_URI}", "${GITLAB_REGISTRY_URI}"]
635+
545636
################################################################################
546637
# Ubuntu 24.10
547638
################################################################################
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
#
2+
# Copyright 2013-2025 Software Radio Systems Limited
3+
#
4+
# By using this file, you agree to the terms and conditions set
5+
# forth in the LICENSE file which can be found at the top level of
6+
# the distribution.
7+
#
8+
9+
FROM realtimesanitizer/rtsan-clang
10+
RUN TZ=Europe/Madrid && \
11+
ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && \
12+
echo $TZ > /etc/timezone && \
13+
apt-get update && \
14+
apt-get install -y --no-install-recommends \
15+
git git-lfs \
16+
ccache gcovr valgrind \
17+
python3-dev python3-venv && \
18+
(apt-get install -y --no-install-recommends libclang-rt-dev || true) && \
19+
apt-get autoremove && apt-get clean && rm -rf /var/lib/apt/lists/* && \
20+
git lfs install
21+
22+
ADD install_dependencies.sh builder.sh changed_tests.py ram_reporter.py /usr/local/bin/
23+
RUN chmod +x /usr/local/bin/install_dependencies.sh /usr/local/bin/builder.sh /usr/local/bin/changed_tests.py /usr/local/bin/ram_reporter.py && \
24+
/usr/local/bin/install_dependencies.sh && \
25+
apt-get autoremove && apt-get clean && rm -rf /var/lib/apt/lists/* && \
26+
python3 -m venv /usr/local/builder_tools && \
27+
/usr/local/builder_tools/bin/pip install "pandas<3" "psutil"
28+
29+
ADD uhd /opt/uhd
30+
ADD dpdk /opt/dpdk
31+
32+
WORKDIR /workdir

.gitlab/ci/docker.yml

Lines changed: 1 addition & 68 deletions
Original file line numberDiff line numberDiff line change
@@ -139,7 +139,7 @@ metrics version check in retina:
139139
140140
gnb docker compose:
141141
extends: .docker compose
142-
variables: &gnb_build_args
142+
variables:
143143
DOCKER_UHD_VERSION: "4.7.0.0"
144144
DOCKER_DPDK_VERSION: "23.11.1"
145145
rules:
@@ -276,70 +276,3 @@ grafana server image latest:
276276
before_script:
277277
- |
278278
export VERSION=latest
279-
280-
srsran image:
281-
extends: .docker-builder
282-
stage: publish
283-
rules:
284-
- if: $CI_DESCRIPTION =~ /Nightly Build Unit Tests/
285-
interruptible: false
286-
retry: 2
287-
variables:
288-
# CI
289-
GIT_LFS_SKIP_SMUDGE: 1
290-
KUBERNETES_CPU_REQUEST: ${SRS_CPU_LIMIT}
291-
KUBERNETES_CPU_LIMIT: ${SRS_CPU_LIMIT}
292-
KUBERNETES_MEMORY_REQUEST: ${SRS_MEMORY_LIMIT}
293-
KUBERNETES_MEMORY_LIMIT: ${SRS_MEMORY_LIMIT}
294-
KUBERNETES_EPHEMERAL_STORAGE_REQUEST: "50G"
295-
KUBERNETES_EPHEMERAL_STORAGE_LIMIT: "50G"
296-
# Docker
297-
REGISTRY_URI: $GITLAB_REGISTRY_URI
298-
CONTEXT: ${CI_PROJECT_DIR}
299-
DOCKERFILE: docker
300-
MODE: build
301-
<<: *gnb_build_args
302-
timeout: 2 hours
303-
tags:
304-
- ${TAG}-docker
305-
before_script:
306-
- |
307-
export NAME="srsran-project"
308-
export VERSION="${SPLIT}_${SUFFIX}"
309-
export BUILD_ARGS="UHD_VERSION=${DOCKER_UHD_VERSION};DPDK_VERSION=${DOCKER_DPDK_VERSION};MARCH=${MARCH};NUM_JOBS=${KUBERNETES_CPU_LIMIT};EXTRA_CMAKE_ARGS=\"${EXTRA_CMAKE_ARGS}\""
310-
parallel:
311-
matrix:
312-
# AMD AVX2
313-
- SUFFIX: release_avx2
314-
MARCH: x86-64-v3
315-
TAG: amd64-avx2
316-
PLATFORM: amd64
317-
- SUFFIX: release_with_debug_avx2
318-
EXTRA_CMAKE_ARGS: -DFORCE_DEBUG_INFO=On
319-
MARCH: x86-64-v3
320-
TAG: amd64-avx2
321-
PLATFORM: amd64
322-
# AMD AVX512
323-
- SUFFIX: release_avx512
324-
MARCH: x86-64-v4
325-
TAG: amd64-avx2-avx512
326-
PLATFORM: amd64
327-
- SUFFIX: release_with_debug_avx512
328-
EXTRA_CMAKE_ARGS: -DFORCE_DEBUG_INFO=On
329-
MARCH: x86-64-v4
330-
TAG: amd64-avx2-avx512
331-
PLATFORM: amd64
332-
# ARM
333-
- SUFFIX: release_arm
334-
MARCH: armv8.2-a+crypto+fp16+dotprod
335-
TAG: arm64
336-
PLATFORM: arm64
337-
- SUFFIX: release_with_debug_arm
338-
EXTRA_CMAKE_ARGS: -DFORCE_DEBUG_INFO=On
339-
MARCH: armv8.2-a+crypto+fp16+dotprod
340-
TAG: arm64
341-
PLATFORM: arm64
342-
needs:
343-
- job: gnb docker compose
344-
optional: true
345-
artifacts: false

.gitlab/ci/e2e.yml

Lines changed: 27 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -162,6 +162,19 @@ amari 1UE 4x4 mimo:
162162
MARKERS: "zmq_4x4_mimo"
163163
RETINA_PARAM_ARGS: "gnb.all.enable_integrity_protection=True"
164164

165+
amari 1UE rtsan:
166+
extends: .zmq
167+
variables:
168+
KEYWORDS: "bidirectional"
169+
MARKERS: "zmq_single_ue"
170+
RETINA_PARAM_ARGS: "gnb.all.pcap=True gnb.all.rlc_enable=True gnb.all.enable_integrity_protection=True"
171+
needs:
172+
- job: "basic rtsan"
173+
artifacts: true
174+
- *txrx-lib
175+
- *retina-needs
176+
allow_failure: true
177+
165178
amari 4UE deb:
166179
extends: .zmq
167180
rules:
@@ -389,7 +402,6 @@ test mode ru acc100:
389402
TESTBED: "test_mode_acc100"
390403
MARKERS: "test_mode_acc100"
391404
KEYWORDS: ""
392-
allow_failure: true
393405

394406
################################################################################
395407
# RF
@@ -514,7 +526,7 @@ viavi:
514526
artifacts: true
515527
- *retina-needs
516528
rules:
517-
- if: $CI_DESCRIPTION =~ /Nightly E2E Tests Plugin/
529+
- if: $CI_DESCRIPTION =~ /Nightly E2E Tests Plugin/
518530
parallel:
519531
matrix:
520532
- KEYWORDS:
@@ -564,6 +576,19 @@ viavi-debug:
564576
artifacts: true
565577
- *retina-needs
566578

579+
viavi-rtsan:
580+
extends: .viavi
581+
needs:
582+
- job: "basic avx512 dpdk rtsan"
583+
artifacts: true
584+
- *retina-needs
585+
rules:
586+
- if: $CI_DESCRIPTION =~ /Nightly E2E Tests Plugin/
587+
parallel:
588+
matrix:
589+
- KEYWORDS: ["tdd and 6u3d"]
590+
allow_failure: true
591+
567592
################################################################################
568593
# Garbage collector
569594
################################################################################

.gitlab/ci/e2e/.env

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
SRSGNB_REGISTRY_URI=registry.gitlab.com/softwareradiosystems/srsgnb
22
RETINA_REGISTRY_PREFIX=registry.gitlab.com/softwareradiosystems/ci/retina
3-
RETINA_VERSION=0.62.4
3+
RETINA_VERSION=0.62.9
44
UBUNTU_VERSION=24.04
55
AMARISOFT_VERSION=2023-09-08
66
SRSUE_VERSION=23.11
77
OPEN5GS_VERSION=2.7.0
88
FLEXRIC_VERSION=br-flexric
99
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
10-
METRICS_SERVER_VERSION=1.7.3
10+
METRICS_SERVER_VERSION=1.8.0
1111
DPDK_VERSION=23.11.1
1212
ZMQ_HOSTLABEL_0=kubernetes.io/hostname=hp-generic-2
1313
ZMQ_HOSTLABEL_1=kubernetes.io/hostname=ci-buildmaster

.gitlab/ci/e2e/retina_request_viavi.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@
3131
- type: ru
3232
model: viavi-ru
3333
environment:
34+
- RTSAN_OPTIONS: halt_on_error=false:suppress_equal_stacks=true
3435
- PATH: ${PATH}:/builds/softwareradiosystems/srsgnb/build/apps/gnb
3536
- LD_LIBRARY_PATH: /opt/dpdk/${DPDK_VERSION}/lib/x86_64-linux-gnu/
3637
shared_files:

0 commit comments

Comments
 (0)