Skip to content

Commit 32dae89

Browse files
author
codebot
committed
Update main
# Conflicts: # .gitlab-ci.yml # .gitlab/ci/build.yml # .gitlab/ci/e2e.yml # .gitlab/ci/e2e/retina_request_rf_b200.yml # .gitlab/ci/e2e/retina_request_zmq.yml # .gitlab/ci/schedules.yml # docker/grafana/provisioning/dashboards/dashboardReference.yml # docker/grafana/provisioning/datasources/InfluxDB.yml # include/srsran/cu_cp/du_processor_config.h # include/srsran/f1ap/cu_cp/f1ap_interface_management_types.h # lib/phy/upper/channel_coding/short/CMakeLists.txt # tests/unittests/phy/upper/channel_processors/uci/uci_decoder_test_data.tar.gz
2 parents 0b2702c + afefcb9 commit 32dae89

File tree

744 files changed

+82291
-102378
lines changed

Some content is hidden

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

744 files changed

+82291
-102378
lines changed

.gdbinit

Lines changed: 15 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,21 @@
11
#
22
# Copyright 2021-2024 Software Radio Systems Limited
33
#
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.
4+
# This file is part of srsRAN
5+
#
6+
# srsRAN is free software: you can redistribute it and/or modify
7+
# it under the terms of the GNU Affero General Public License as
8+
# published by the Free Software Foundation, either version 3 of
9+
# the License, or (at your option) any later version.
10+
#
11+
# srsRAN is distributed in the hope that it will be useful,
12+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
13+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14+
# GNU Affero General Public License for more details.
15+
#
16+
# A copy of the GNU Affero General Public License can be found in
17+
# the LICENSE file in the top-level directory of this distribution
18+
# and at http://www.gnu.org/licenses/.
719
#
820

921
############################################

.github/codeql/codeql-config.yml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,10 @@
1+
#
2+
# Copyright 2013-2024 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+
19
name: "CodeQL config"
210
ram: 6500

.github/workflows/ccpp.yml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,11 @@
1+
#
2+
# Copyright 2013-2024 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+
19
name: C/C++ CI
210
on: push
311
jobs:

.github/workflows/codeql.yml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,11 @@
1+
#
2+
# Copyright 2013-2024 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+
19
name: "CodeQL"
210

311
on:

.gitlab-ci.yml

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -25,19 +25,19 @@
2525

2626
include:
2727
- project: softwareradiosystems/ci/tools
28-
ref: "14"
28+
ref: "15"
2929
file: .gitlab/ci-shared/setup/all.yml
3030
- project: softwareradiosystems/ci/tools
31-
ref: "14"
31+
ref: "15"
3232
file: .gitlab/ci-shared/features/all.yml
3333
- project: softwareradiosystems/ci/tools
34-
ref: "14"
34+
ref: "15"
3535
file: .gitlab/ci-shared/tools/python.yml
3636
- project: softwareradiosystems/ci/tools
37-
ref: "14"
37+
ref: "15"
3838
file: .gitlab/ci-shared/tools/test_reporter.yml
3939
- project: softwareradiosystems/ci/tools
40-
ref: "14"
40+
ref: "15"
4141
file: .gitlab/ci-shared/tools/tagger.yml
4242
- local: .gitlab/ci/builders/version.yml
4343
- local: .gitlab/ci/build.yml
@@ -85,8 +85,10 @@ trigger docker:
8585
changes:
8686
paths:
8787
- .gitlab/ci/docker.yml
88-
- docker/**/*.{yml,env,json,toml,py,sh,csv}
88+
- docker/**/*.{yml,env,json,toml,py,sh,csv,py,toml}
8989
- docker/**/Dockerfile
90+
- scripts/srsran_performance
91+
- .gdbinit
9092
trigger:
9193
include: .gitlab/ci/docker.yml
9294
strategy: depend
@@ -144,8 +146,10 @@ full-code-format:
144146
ANALYZER: ""
145147
ANALYZER_ARGS: ""
146148
ARTIFACT_EXTRA_PATH: ""
147-
KUBERNETES_MEMORY_REQUEST: 6Gi
148149
KUBERNETES_CPU_REQUEST: "3.5"
150+
KUBERNETES_CPU_LIMIT: "3.5"
151+
KUBERNETES_MEMORY_REQUEST: 6Gi
152+
KUBERNETES_MEMORY_LIMIT: 6Gi
149153
before_script:
150154
- |
151155
echo "
@@ -224,7 +228,9 @@ clangsa:
224228
needs: []
225229
variables:
226230
KUBERNETES_CPU_REQUEST: 7
231+
KUBERNETES_CPU_LIMIT: 7
227232
KUBERNETES_MEMORY_REQUEST: 13Gi
233+
KUBERNETES_MEMORY_LIMIT: 13Gi
228234
tags:
229235
- ${AMD64_TAG}
230236
interruptible: false

.gitlab/ci/build.yml

Lines changed: 48 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,9 @@
11
#
2-
# Copyright 2021-2023 Software Radio Systems Limited
2+
# Copyright 2013-2024 Software Radio Systems Limited
33
#
4-
# This file is part of srsRAN
5-
#
6-
# srsRAN is free software: you can redistribute it and/or modify
7-
# it under the terms of the GNU Affero General Public License as
8-
# published by the Free Software Foundation, either version 3 of
9-
# the License, or (at your option) any later version.
10-
#
11-
# srsRAN is distributed in the hope that it will be useful,
12-
# but WITHOUT ANY WARRANTY; without even the implied warranty of
13-
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14-
# GNU Affero General Public License for more details.
15-
#
16-
# A copy of the GNU Affero General Public License can be found in
17-
# the LICENSE file in the top-level directory of this distribution
18-
# and at http://www.gnu.org/licenses/.
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.
197
#
208

219
include:
@@ -29,10 +17,14 @@ variables:
2917
AMD64_AVX2_TAG: amd64-avx2
3018
AMD64_AVX512_TAG: amd64-avx2-avx512
3119
ARM64_TAG: arm64
20+
AMD64_LIB_BUILDER_TAG: on-prem-amd64
3221

3322
INFRASTRUCTURE_TAG:
3423
description: Computer architecture and supported instruction sets
3524
options:
25+
- amd64
26+
- amd64-avx2
27+
- amd64-avx2-avx512
3628
- "on-prem-amd64"
3729
- "on-prem-arm64"
3830
- "aws-spot-amd64"
@@ -121,8 +113,10 @@ variables:
121113
AUTO_DETECT_ISA: ""
122114
# CI
123115
SAVE_ARTIFACTS: "" # Empty by default
116+
KUBERNETES_CPU_REQUEST: 6
117+
KUBERNETES_CPU_LIMIT: 6
124118
KUBERNETES_MEMORY_REQUEST: 12Gi
125-
KUBERNETES_CPU_REQUEST: 7
119+
KUBERNETES_MEMORY_LIMIT: 12Gi
126120
MAKE_ARGS: "-j${KUBERNETES_CPU_REQUEST}"
127121
GIT_STRATEGY: none
128122
needs:
@@ -195,11 +189,11 @@ variables:
195189
196190
if [ -n "${DPDK_VERSION}" ]; then
197191
BUILD_CMD="-d ${DPDK_VERSION} ${BUILD_CMD}"
198-
LD_LIBRARY_PATH=/opt/dpdk/${DPDK_VERSION}/lib/x86_64-linux-gnu/
192+
export LD_LIBRARY_PATH=/opt/dpdk/${DPDK_VERSION}/lib/x86_64-linux-gnu/
199193
fi
200194
if [ -n "${UHD_VERSION}" ]; then
201195
BUILD_CMD="-u ${UHD_VERSION} ${BUILD_CMD}"
202-
LD_LIBRARY_PATH=/opt/uhd/${UHD_VERSION}/lib:${LD_LIBRARY_PATH}
196+
export LD_LIBRARY_PATH=/opt/uhd/${UHD_VERSION}/lib:${LD_LIBRARY_PATH}
203197
fi
204198
if [ -n "${CLEAN_BUILD}" ]; then
205199
BUILD_CMD="-r ${CLEAN_BUILD} ${BUILD_CMD}"
@@ -251,7 +245,7 @@ variables:
251245
;;
252246
valgrind)
253247
G_DEBUG=gc-friendly G_SLICE=always-malloc
254-
ctest_extra="-T memcheck --timeout 10800"
248+
ctest_extra="-T memcheck -LE NO_MEMCHECK --timeout 10800"
255249
;;
256250
esac
257251
if [ -n "${FINGERPRINT}" ]; then
@@ -266,6 +260,7 @@ variables:
266260
exit $ret
267261
fi
268262
fi
263+
echo "LD_LIBRARY_PATH=$LD_LIBRARY_PATH"
269264
CTEST_CMD="ctest -j${KUBERNETES_CPU_REQUEST} ${CTEST_SUBSET_CMD} $ctest_extra --schedule-random --output-on-failure --output-junit xunit.xml"
270265
echo "${CTEST_CMD}"
271266
echo "============================================================================================="
@@ -407,7 +402,7 @@ variables:
407402
ASSERT_LEVEL: PARANOID
408403
AUTO_DETECT_ISA: "True"
409404
ENABLE_AVX512: "False"
410-
DPDK_VERSION: "23.07"
405+
DPDK_VERSION: "23.11"
411406
tags: ["${AMD64_TAG}"]
412407

413408
.smoke valgrind:
@@ -580,7 +575,7 @@ valgrind changed tests:
580575
- if: $ON_MR
581576
when: manual
582577
allow_failure: true
583-
timeout: 2h
578+
timeout: 1h
584579
variables:
585580
CLEAN_BUILD: "False"
586581
FINGERPRINT: "fingerprints.csv"
@@ -754,17 +749,20 @@ basic avx512 dpdk:
754749
variables:
755750
OS: ubuntu-22.04
756751
COMPILER: gcc
757-
BUILD_TYPE: RelWithDebInfo
758-
TEST_MODE: default
759-
ASSERT_LEVEL: PARANOID
752+
BUILD_TYPE: Release
753+
TEST_MODE: none
760754
ENABLE_UHD: "False"
761755
ENABLE_ZEROMQ: "False"
762756
ENABLE_DPDK: "True"
763-
DPDK_VERSION: "23.07"
757+
DPDK_VERSION: "23.11"
764758
AUTO_DETECT_ISA: "True"
765759
ENABLE_AVX512: "True"
766760
SAVE_ARTIFACTS: "True"
767-
tags: ["${AMD64_AVX512_TAG}"]
761+
KUBERNETES_CPU_REQUEST: 14
762+
KUBERNETES_CPU_LIMIT: 14
763+
KUBERNETES_MEMORY_REQUEST: 20Gi
764+
KUBERNETES_MEMORY_LIMIT: 20Gi
765+
tags: ["on-prem-amd64-avx2-avx512"]
768766
artifacts:
769767
<<: *build_artifacts
770768
expire_in: 1 day
@@ -781,8 +779,13 @@ package:
781779
variables:
782780
PROJECT_NAME: srsran-project
783781
RELEASE_VERSION: "99.9"
782+
KUBERNETES_CPU_REQUEST: 7
783+
KUBERNETES_CPU_LIMIT: 7
784784
KUBERNETES_MEMORY_REQUEST: 12Gi
785-
tags: ["${AMD64_AVX2_TAG}"]
785+
KUBERNETES_MEMORY_LIMIT: 12Gi
786+
DEB_BUILD_OPTIONS: parallel=${KUBERNETES_CPU_LIMIT}
787+
MAKEFLAGS: -j${KUBERNETES_CPU_LIMIT}
788+
tags: ["${AMD64_LIB_BUILDER_TAG}"]
786789
parallel:
787790
matrix:
788791
- OS_VERSION: "20.04"
@@ -799,7 +802,7 @@ install-package:
799802
variables:
800803
PROJECT_NAME: srsran-project
801804
RELEASE_VERSION: "99.9"
802-
tags: ["${AMD64_AVX2_TAG}"]
805+
tags: ["${AMD64_LIB_BUILDER_TAG}"]
803806
script:
804807
- gnb --version
805808
parallel:
@@ -1000,16 +1003,16 @@ smoke dpdk:
10001003
matrix:
10011004
- OS: ubuntu-23.10
10021005
COMPILER: [gcc, clang]
1003-
DPDK_VERSION: ["22.11.2", "23.07"]
1006+
DPDK_VERSION: ["22.11.3", "23.11"]
10041007
- OS: ubuntu-23.04
10051008
COMPILER: [gcc, clang]
1006-
DPDK_VERSION: ["22.11.2", "23.07"]
1009+
DPDK_VERSION: ["22.11.3", "23.11"]
10071010
- OS: ubuntu-22.04
10081011
COMPILER: [gcc, clang]
1009-
DPDK_VERSION: ["22.11.2", "23.07"]
1012+
DPDK_VERSION: ["22.11.3", "23.11"]
10101013
- OS: ubuntu-20.04
10111014
COMPILER: [gcc, clang]
1012-
DPDK_VERSION: ["22.11.2", "23.07"]
1015+
DPDK_VERSION: ["22.11.3", "23.11"]
10131016

10141017
###################
10151018
# Alternative OSs #
@@ -1250,16 +1253,16 @@ build uhd alt:
12501253
matrix:
12511254
- OS: ubuntu-23.10
12521255
COMPILER: [gcc, clang]
1253-
UHD_VERSION: ["4.5.0.0", "4.4.0.0"]
1256+
UHD_VERSION: ["4.6.0.0", "4.4.0.0"]
12541257
- OS: ubuntu-23.04
12551258
COMPILER: [gcc, clang]
1256-
UHD_VERSION: ["4.5.0.0", "4.4.0.0", "4.3.0.0"]
1259+
UHD_VERSION: ["4.6.0.0", "4.4.0.0", "4.3.0.0"]
12571260
- OS: ubuntu-22.04
12581261
COMPILER: [gcc, clang]
1259-
UHD_VERSION: ["4.5.0.0", "4.4.0.0", "4.3.0.0", "4.2.0.0", "4.1.0.5"]
1262+
UHD_VERSION: ["4.6.0.0", "4.4.0.0", "4.3.0.0", "4.1.0.5"]
12601263
- OS: ubuntu-20.04
12611264
COMPILER: [gcc, clang]
1262-
UHD_VERSION: ["4.5.0.0", "4.4.0.0", "4.3.0.0", "4.2.0.0", "4.1.0.5"]
1265+
UHD_VERSION: ["4.6.0.0", "4.4.0.0", "4.3.0.0", "4.1.0.5"]
12631266

12641267
# Build + unit tests combinations
12651268

@@ -1571,7 +1574,7 @@ rhel-8 arm neon:
15711574
ENABLE_ZEROMQ: "False"
15721575
ENABLE_DPDK: "True"
15731576
COMPILER: [gcc, clang]
1574-
DPDK_VERSION: ["22.11.2", "23.07"]
1577+
DPDK_VERSION: ["22.11.3", "23.11"]
15751578

15761579
ubuntu-20.04 amd64 avx2 dpdk:
15771580
extends: .build_and_unit
@@ -1709,22 +1712,23 @@ check-affinity-manager-nocpu:
17091712
artifacts: true
17101713
rules:
17111714
- if: $CI_DESCRIPTION =~ /Nightly/
1715+
timeout: 15 minutes
17121716
script:
17131717
- cd build/apps/gnb
1714-
- taskset -c 0-2 "./gnb" 2>&1 || true
17151718
- |
17161719
error_found=false
1717-
for (( i=1; i<=8; i++ ))
1720+
for (( i=3; i<=10; i++ ))
17181721
do
1719-
echo "Checking for number of CPU = $i"
1720-
output=$(taskset -c 0-$i "./gnb" 2>&1 || true)
1722+
echo "Checking for number of CPU = $((i-2))"
1723+
output=$(taskset -c 2-$i bash -c "./gnb log --filename=stdout" 2>&1 || true)
1724+
echo "$output"
17211725
17221726
if [[ "$output" == *"nof_cores_for_non_prio_threads"* ]]; then
17231727
error_found=true
17241728
echo "**********************************************************************************"
17251729
echo $output
17261730
echo "**********************************************************************************"
1727-
echo "Error for number of CPU = $i"
1731+
echo "Error for number of CPU = $((i-2))"
17281732
echo -e "\n\n\n\n\n"
17291733
fi
17301734
done
@@ -1740,6 +1744,7 @@ custom-build:
17401744
extends: .build_and_unit
17411745
rules:
17421746
- if: $ON_WEB
1747+
- if: $ON_API
17431748
interruptible: false # Web jobs are standalone
17441749
variables:
17451750
ENABLE_ZEROMQ: ""

0 commit comments

Comments
 (0)