Build failure of network:osmocom:nightly/open5gs in Debian_10/i586
Visit https://build.opensuse.org/package/live_build_log/network:osmocom:nightly/open5gs/Debian_10/i586 Package network:osmocom:nightly/open5gs failed to build in Debian_10/i586 Check out the package for editing: osc checkout network:osmocom:nightly open5gs Last lines of build log: decls -Wimplicit-fallthrough=5 -Wendif-labels -Wstrict-aliasing=3 -Wwrite-strings -Werror=overflow -Werror=shift-count-overflow -Werror=shift-overflow=2 -Wdate-time -Wnested-externs -Wunused -Wduplicated-branches -Wmisleading-indentation -Wno-sign-compare -Wno-unused-parameter -ffast-math -fdiagnostics-show-option -fstack-protector -fstack-protector-strong --param=ssp-buffer-size=4 -ffunction-sections -fdata-sections -g -O2 -fdebug-prefix-map=/usr/src/packages/BUILD=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -pthread -MD -MQ 'src/udr/e340f29@@udr@sta/nudr-handler.c.o' -MF 'src/udr/e340f29@@udr@sta/nudr-handler.c.o.d' -o 'src/udr/e340f29@@udr@sta/nudr-handler.c.o' -c ../src/udr/nudr-handler.c [ 652s] [1924/2112] cc -Isrc/udr/e340f29@@udr@sta -Isrc/udr -I../src/udr -Ilib/app -I../lib/app -Ilib -I../lib -Ilib/core -I../lib/core -Ilib/dbi -I../lib/dbi -Ilib/crypt -I../lib/crypt -Ilib/sbi -I../lib/sbi -Ilib/sbi/openapi -I../lib/sbi/openapi -I/usr/include/libmongoc-1.0 -I/usr/include/libbson-1.0 -I/usr/include/p11-kit-1 -I/usr/include/i386-linux-gnu -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -std=gnu89 -Wextra -Wlogical-op -Werror=missing-include-dirs -Werror=pointer-arith -Werror=init-self -Wfloat-equal -Wsuggest-attribute=noreturn -Werror=missing-prototypes -Werror=missing-declarations -Werror=implicit-function-declaration -Werror=return-type -Werror=incompatible-pointer-types -Werror=format=2 -Wstrict-prototypes -Wredundant-decls -Wimplicit-fallthrough=5 -Wendif-labels -Wstrict-aliasing=3 -Wwrite-strings -Werror=overflow -Werror=shift-count-overflow -Werror=shift-overflow=2 -Wdate-time -Wnested-externs -Wunused -Wduplicated-branches -Wmisleading-indentation -Wno-sign-compare -Wno-unused-parameter -ffast-math -fdiagnostics-show-option -fstack-protector -fstack-protector-strong --param=ssp-buffer-size=4 -ffunction-sections -fdata-sections -g -O2 -fdebug-prefix-map=/usr/src/packages/BUILD=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -pthread -MD -MQ 'src/udr/e340f29@@udr@sta/nnrf-handler.c.o' -MF 'src/udr/e340f29@@udr@sta/nnrf-handler.c.o.d' -o 'src/udr/e340f29@@udr@sta/nnrf-handler.c.o' -c ../src/udr/nnrf-handler.c [ 652s] [1925/2112] cc -o src/nrf/open5gs-nrfd 'src/nrf/f570ec2@@open5gs-nrfd@exe/app.c.o' 'src/nrf/f570ec2@@open5gs-nrfd@exe/.._main.c.o' -Wl,--no-undefined -Wl,--as-needed -g -O2 -fdebug-prefix-map=/usr/src/packages/BUILD=. -fstack-protector-strong -Wformat -Werror=format-security -Wl,-z,relro -Wl,-z,now -Wl,--start-group src/nrf/libnrf.a lib/ipfw/libogsipfw.so.1.2.5 lib/app/libogsapp.so.1.2.5 lib/core/libogscore.so.1.2.5 lib/dbi/libogsdbi.so.1.2.5 lib/crypt/libogscrypt.so.1.2.5 lib/sbi/libogssbi.so.1.2.5 lib/sbi/openapi/libogssbi-openapi.so.1.2.5 /usr/lib/i386-linux-gnu/libyaml.so /usr/lib/gcc/i686-linux-gnu/8/../../../i386-linux-gnu/libmongoc-1.0.so /usr/lib/gcc/i686-linux-gnu/8/../../../i386-linux-gnu/libbson-1.0.so -lgnutls /usr/lib/i386-linux-gnu/libmicrohttpd.so /usr/lib/i386-linux-gnu/libcurl.so -lgnutls -Wl,--end-group -pthread '-Wl,-rpath,$ORIGIN/:$ORIGIN/../../lib/ipfw:$ORIGIN/../../lib/app:$ORIGIN/../../lib/core:$ORIGIN/../../lib/dbi:$ORIGIN/../../lib/crypt:$ORIGIN/../../lib/sbi:$ORIGIN/../../lib/sbi/openapi' -Wl,-rpath-link,/usr/src/packages/BUILD/obj-i686-linux-gnu/src/nrf:/usr/src/packages/BUILD/obj-i686-linux-gnu/lib/ipfw:/usr/src/packages/BUILD/obj-i686-linux-gnu/lib/app:/usr/src/packages/BUILD/obj-i686-linux-gnu/lib/core:/usr/src/packages/BUILD/obj-i686-linux-gnu/lib/dbi:/usr/src/packages/BUILD/obj-i686-linux-gnu/lib/crypt:/usr/src/packages/BUILD/obj-i686-linux-gnu/lib/sbi:/usr/src/packages/BUILD/obj-i686-linux-gnu/lib/sbi/openapi [ 652s] [1926/2112] cc -Isrc/udm/3eca12a@@udm@sta -Isrc/udm -I../src/udm -Ilib/app -I../lib/app -Ilib -I../lib -Ilib/core -I../lib/core -Ilib/crypt -I../lib/crypt -Ilib/sbi -I../lib/sbi -Ilib/sbi/openapi -I../lib/sbi/openapi -I/usr/include/p11-kit-1 -I/usr/include/i386-linux-gnu -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -std=gnu89 -Wextra -Wlogical-op -Werror=missing-include-dirs -Werror=pointer-arith -Werror=init-self -Wfloat-equal -Wsuggest-attribute=noreturn -Werror=missing-prototypes -Werror=missing-declarations -Werror=implicit-function-declaration -Werror=return-type -Werror=incompatible-pointer-types -Werror=format=2 -Wstrict-prototypes -Wredundant-decls -Wimplicit-fallthrough=5 -Wendif-labels -Wstrict-aliasing=3 -Wwrite-strings -Werror=overflow -Werror=shift-count-overflow -Werror=shift-overflow=2 -Wdate-time -Wnested-externs -Wunused -Wduplicated-branches
Build failure of network:osmocom:nightly/open5gs in xUbuntu_18.04/i586
Visit https://build.opensuse.org/package/live_build_log/network:osmocom:nightly/open5gs/xUbuntu_18.04/i586 Package network:osmocom:nightly/open5gs failed to build in xUbuntu_18.04/i586 Check out the package for editing: osc checkout network:osmocom:nightly open5gs Last lines of build log: [ 196s] [1936/2112] cc -Isrc/udm/udm@sta -Isrc/udm -I../src/udm -Ilib/app -I../lib/app -Ilib -I../lib -Ilib/core -I../lib/core -Ilib/crypt -I../lib/crypt -Ilib/sbi -I../lib/sbi -Ilib/sbi/openapi -I../lib/sbi/openapi -I/usr/include/p11-kit-1 -I/usr/include/i386-linux-gnu -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -std=gnu89 -Wextra -Wlogical-op -Werror=missing-include-dirs -Werror=pointer-arith -Werror=init-self -Wfloat-equal -Wsuggest-attribute=noreturn -Werror=missing-prototypes -Werror=missing-declarations -Werror=implicit-function-declaration -Werror=return-type -Werror=incompatible-pointer-types -Werror=format=2 -Wstrict-prototypes -Wredundant-decls -Wimplicit-fallthrough=5 -Wendif-labels -Wstrict-aliasing=3 -Wwrite-strings -Werror=overflow -Werror=shift-count-overflow -Werror=shift-overflow=2 -Wdate-time -Wnested-externs -Wunused -Wduplicated-branches -Wmisleading-indentation -Wno-sign-compare -Wno-unused-parameter -ffast-math -fdiagnostics-show-option -fstack-protector -fstack-protector-strong --param=ssp-buffer-size=4 -ffunction-sections -fdata-sections -g -O2 -fdebug-prefix-map=/usr/src/packages/BUILD=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -pthread -MD -MQ 'src/udm/udm@sta/event.c.o' -MF 'src/udm/udm@sta/event.c.o.d' -o 'src/udm/udm@sta/event.c.o' -c ../src/udm/event.c [ 197s] [1937/2112] cc -Isrc/udm/udm@sta -Isrc/udm -I../src/udm -Ilib/app -I../lib/app -Ilib -I../lib -Ilib/core -I../lib/core -Ilib/crypt -I../lib/crypt -Ilib/sbi -I../lib/sbi -Ilib/sbi/openapi -I../lib/sbi/openapi -I/usr/include/p11-kit-1 -I/usr/include/i386-linux-gnu -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -std=gnu89 -Wextra -Wlogical-op -Werror=missing-include-dirs -Werror=pointer-arith -Werror=init-self -Wfloat-equal -Wsuggest-attribute=noreturn -Werror=missing-prototypes -Werror=missing-declarations -Werror=implicit-function-declaration -Werror=return-type -Werror=incompatible-pointer-types -Werror=format=2 -Wstrict-prototypes -Wredundant-decls -Wimplicit-fallthrough=5 -Wendif-labels -Wstrict-aliasing=3 -Wwrite-strings -Werror=overflow -Werror=shift-count-overflow -Werror=shift-overflow=2 -Wdate-time -Wnested-externs -Wunused -Wduplicated-branches -Wmisleading-indentation -Wno-sign-compare -Wno-unused-parameter -ffast-math -fdiagnostics-show-option -fstack-protector -fstack-protector-strong --param=ssp-buffer-size=4 -ffunction-sections -fdata-sections -g -O2 -fdebug-prefix-map=/usr/src/packages/BUILD=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -pthread -MD -MQ 'src/udm/udm@sta/context.c.o' -MF 'src/udm/udm@sta/context.c.o.d' -o 'src/udm/udm@sta/context.c.o' -c ../src/udm/context.c [ 197s] FAILED: src/udm/udm@sta/context.c.o [ 197s] cc -Isrc/udm/udm@sta -Isrc/udm -I../src/udm -Ilib/app -I../lib/app -Ilib -I../lib -Ilib/core -I../lib/core -Ilib/crypt -I../lib/crypt -Ilib/sbi -I../lib/sbi -Ilib/sbi/openapi -I../lib/sbi/openapi -I/usr/include/p11-kit-1 -I/usr/include/i386-linux-gnu -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -std=gnu89 -Wextra -Wlogical-op -Werror=missing-include-dirs -Werror=pointer-arith -Werror=init-self -Wfloat-equal -Wsuggest-attribute=noreturn -Werror=missing-prototypes -Werror=missing-declarations -Werror=implicit-function-declaration -Werror=return-type -Werror=incompatible-pointer-types -Werror=format=2 -Wstrict-prototypes -Wredundant-decls -Wimplicit-fallthrough=5 -Wendif-labels -Wstrict-aliasing=3 -Wwrite-strings -Werror=overflow -Werror=shift-count-overflow -Werror=shift-overflow=2 -Wdate-time -Wnested-externs -Wunused -Wduplicated-branches -Wmisleading-indentation -Wno-sign-compare -Wno-unused-parameter -ffast-math -fdiagnostics-show-option -fstack-protector -fstack-protector-strong --param=ssp-buffer-size=4 -ffunction-sections -fdata-sections -g -O2 -fdebug-prefix-map=/usr/src/packages/BUILD=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -pthread -MD -MQ 'src/udm/udm@sta/context.c.o' -MF 'src/udm/udm@sta/context.c.o.d' -o 'src/udm/udm@sta/context.c.o' -c ../src/udm/context.c [ 197s] ../src/udm/context.c: In function ‘udm_ue_add’: [ 197s] ../src/udm/context.c:129:38: error: format ‘%ld’ expects argument of type ‘long int’, but argument 2 has type ‘int’ [-Werror=format=] [ 197s] udm_ue->ctx_id = ogs_msprintf("%ld", ogs_pool_index(_ue_pool, udm_ue)); [ 197s] ~~^ [ 197s] %d [ 197s] cc1: some warnings being treated as errors [ 197s] [1938/2112] cc
Build failure of network:osmocom:nightly/open5gs in xUbuntu_18.10/i586
Visit https://build.opensuse.org/package/live_build_log/network:osmocom:nightly/open5gs/xUbuntu_18.10/i586 Package network:osmocom:nightly/open5gs failed to build in xUbuntu_18.10/i586 Check out the package for editing: osc checkout network:osmocom:nightly open5gs Last lines of build log: Werror=missing-prototypes -Werror=missing-declarations -Werror=implicit-function-declaration -Werror=return-type -Werror=incompatible-pointer-types -Werror=format=2 -Wstrict-prototypes -Wredundant-decls -Wimplicit-fallthrough=5 -Wendif-labels -Wstrict-aliasing=3 -Wwrite-strings -Werror=overflow -Werror=shift-count-overflow -Werror=shift-overflow=2 -Wdate-time -Wnested-externs -Wunused -Wduplicated-branches -Wmisleading-indentation -Wno-sign-compare -Wno-unused-parameter -ffast-math -fdiagnostics-show-option -fstack-protector -fstack-protector-strong --param=ssp-buffer-size=4 -ffunction-sections -fdata-sections -g -O2 -fdebug-prefix-map=/usr/src/packages/BUILD=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -pthread -MD -MQ 'src/udr/src@udr@@udr@sta/timer.c.o' -MF 'src/udr/src@udr@@udr@sta/timer.c.o.d' -o 'src/udr/src@udr@@udr@sta/timer.c.o' -c ../src/udr/timer.c [ 204s] [1920/2112] cc -Isrc/udm/src@udm@@udm@sta -Isrc/udm -I../src/udm -Ilib/app -I../lib/app -Ilib -I../lib -Ilib/core -I../lib/core -Ilib/crypt -I../lib/crypt -Ilib/sbi -I../lib/sbi -Ilib/sbi/openapi -I../lib/sbi/openapi -I/usr/include/p11-kit-1 -I/usr/include/i386-linux-gnu -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -std=gnu89 -Wextra -Wlogical-op -Werror=missing-include-dirs -Werror=pointer-arith -Werror=init-self -Wfloat-equal -Wsuggest-attribute=noreturn -Werror=missing-prototypes -Werror=missing-declarations -Werror=implicit-function-declaration -Werror=return-type -Werror=incompatible-pointer-types -Werror=format=2 -Wstrict-prototypes -Wredundant-decls -Wimplicit-fallthrough=5 -Wendif-labels -Wstrict-aliasing=3 -Wwrite-strings -Werror=overflow -Werror=shift-count-overflow -Werror=shift-overflow=2 -Wdate-time -Wnested-externs -Wunused -Wduplicated-branches -Wmisleading-indentation -Wno-sign-compare -Wno-unused-parameter -ffast-math -fdiagnostics-show-option -fstack-protector -fstack-protector-strong --param=ssp-buffer-size=4 -ffunction-sections -fdata-sections -g -O2 -fdebug-prefix-map=/usr/src/packages/BUILD=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -pthread -MD -MQ 'src/udm/src@udm@@udm@sta/nnrf-handler.c.o' -MF 'src/udm/src@udm@@udm@sta/nnrf-handler.c.o.d' -o 'src/udm/src@udm@@udm@sta/nnrf-handler.c.o' -c ../src/udm/nnrf-handler.c [ 204s] [1921/2112] cc -Isrc/udr/src@udr@@udr@sta -Isrc/udr -I../src/udr -Ilib/app -I../lib/app -Ilib -I../lib -Ilib/core -I../lib/core -Ilib/dbi -I../lib/dbi -Ilib/crypt -I../lib/crypt -Ilib/sbi -I../lib/sbi -Ilib/sbi/openapi -I../lib/sbi/openapi -I/usr/include/libmongoc-1.0 -I/usr/include/libbson-1.0 -I/usr/include/p11-kit-1 -I/usr/include/i386-linux-gnu -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -std=gnu89 -Wextra -Wlogical-op -Werror=missing-include-dirs -Werror=pointer-arith -Werror=init-self -Wfloat-equal -Wsuggest-attribute=noreturn -Werror=missing-prototypes -Werror=missing-declarations -Werror=implicit-function-declaration -Werror=return-type -Werror=incompatible-pointer-types -Werror=format=2 -Wstrict-prototypes -Wredundant-decls -Wimplicit-fallthrough=5 -Wendif-labels -Wstrict-aliasing=3 -Wwrite-strings -Werror=overflow -Werror=shift-count-overflow -Werror=shift-overflow=2 -Wdate-time -Wnested-externs -Wunused -Wduplicated-branches -Wmisleading-indentation -Wno-sign-compare -Wno-unused-parameter -ffast-math -fdiagnostics-show-option -fstack-protector -fstack-protector-strong --param=ssp-buffer-size=4 -ffunction-sections -fdata-sections -g -O2 -fdebug-prefix-map=/usr/src/packages/BUILD=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -pthread -MD -MQ 'src/udr/src@udr@@udr@sta/context.c.o' -MF 'src/udr/src@udr@@udr@sta/context.c.o.d' -o 'src/udr/src@udr@@udr@sta/context.c.o' -c ../src/udr/context.c [ 204s] [1922/2112] cc -Isrc/udm/src@udm@@udm@sta -Isrc/udm -I../src/udm -Ilib/app -I../lib/app -Ilib -I../lib -Ilib/core -I../lib/core -Ilib/crypt -I../lib/crypt -Ilib/sbi -I../lib/sbi -Ilib/sbi/openapi -I../lib/sbi/openapi -I/usr/include/p11-kit-1 -I/usr/include/i386-linux-gnu -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -std=gnu89 -Wextra -Wlogical-op -Werror=missing-include-dirs -Werror=pointer-arith -Werror=init-self -Wfloat-equal -Wsuggest-attribute=noreturn -Werror=missing-prototypes -Werror=missing-declarations -Werror=implicit-function-declaration -Werror=return-type -Werror=incompatible-pointer-types -Werror=format=2 -Wstrict-prototypes -Wredundant-decls -Wimplicit-fallthrough=5 -Wendif-labels -Wstrict-aliasing=3 -Wwrite-strings -Werror=overflow
Build failure of network:osmocom:latest/libusrp in Debian_Testing/x86_64
Visit https://build.opensuse.org/package/live_build_log/network:osmocom:latest/libusrp/Debian_Testing/x86_64 Package network:osmocom:latest/libusrp failed to build in Debian_Testing/x86_64 Check out the package for editing: osc checkout network:osmocom:latest libusrp Last lines of build log: [ 378s] touch libfx2.lib [ 378s] for obj in delay.rel fx2utils.rel i2c.rel isr.rel timer.rel usb_common.rel; do basename $obj .rel >> libfx2.lib ; done [ 378s] make[4]: Leaving directory '/usr/src/packages/BUILD/firmware/lib' [ 378s] Making all in src [ 378s] make[4]: Entering directory '/usr/src/packages/BUILD/firmware/src' [ 378s] Making all in common [ 378s] make[5]: Entering directory '/usr/src/packages/BUILD/firmware/src/common' [ 378s] srcdir=. ./edit-gpif ./gpif.c usrp_gpif.c usrp_gpif_inline.h [ 378s] /usr/bin/env: 'python': No such file or directory [ 378s] make[5]: *** [Makefile:523: usrp_gpif.c] Error 127 [ 378s] make[5]: Leaving directory '/usr/src/packages/BUILD/firmware/src/common' [ 378s] make[4]: *** [Makefile:405: all-recursive] Error 1 [ 378s] make[4]: Leaving directory '/usr/src/packages/BUILD/firmware/src' [ 378s] make[3]: *** [Makefile:405: all-recursive] Error 1 [ 378s] make[3]: Leaving directory '/usr/src/packages/BUILD/firmware' [ 378s] make[2]: *** [Makefile:626: all-recursive] Error 1 [ 378s] make[2]: Leaving directory '/usr/src/packages/BUILD' [ 378s] make[1]: *** [Makefile:547: all] Error 2 [ 378s] make[1]: Leaving directory '/usr/src/packages/BUILD' [ 378s] dh_auto_build: error: make -j1 returned exit code 2 [ 378s] make: *** [debian/rules:13: build] Error 25 [ 378s] dpkg-buildpackage: error: debian/rules build subprocess returned exit status 2 [ 378s] ### VM INTERACTION START ### [ 381s] [ 369.669101] sysrq: SysRq : Power Off [ 381s] [ 369.685101] reboot: Power down [ 381s] ### VM INTERACTION END ### [ 381s] [ 381s] build82 failed "build libusrp_3.4.4.dsc" at Fri Jun 12 20:23:06 UTC 2020. [ 381s] -- Configure notifications at https://build.opensuse.org/my/subscriptions openSUSE Build Service (https://build.opensuse.org/)
Change in osmo-gsm-tester[master]: iperf3: increase extra timeout to 30s
pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-gsm-tester/+/18800 ) Change subject: iperf3: increase extra timeout to 30s .. Patch Set 1: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/c/osmo-gsm-tester/+/18800 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-gsm-tester Gerrit-Branch: master Gerrit-Change-Id: I80b732a060356aa98882ff0e8b5debaf623ba0fb Gerrit-Change-Number: 18800 Gerrit-PatchSet: 1 Gerrit-Owner: srs_andre Gerrit-Reviewer: pespin Gerrit-CC: Jenkins Builder Gerrit-Comment-Date: Fri, 12 Jun 2020 20:14:44 + Gerrit-HasComments: No Gerrit-Has-Labels: Yes Gerrit-MessageType: comment
Change in osmo-gsm-tester[master]: iperf3: increase extra timeout to 30s
srs_andre has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-gsm-tester/+/18800 ) Change subject: iperf3: increase extra timeout to 30s .. iperf3: increase extra timeout to 30s 10s was too short and has still caused tests to fail because they were stopped just before the iperf finished. 30s seems to be enought and has passed multiple times so far Change-Id: I80b732a060356aa98882ff0e8b5debaf623ba0fb --- M src/osmo_gsm_tester/obj/iperf3.py 1 file changed, 1 insertion(+), 1 deletion(-) git pull ssh://gerrit.osmocom.org:29418/osmo-gsm-tester refs/changes/00/18800/1 diff --git a/src/osmo_gsm_tester/obj/iperf3.py b/src/osmo_gsm_tester/obj/iperf3.py index ee62159..13fd455 100644 --- a/src/osmo_gsm_tester/obj/iperf3.py +++ b/src/osmo_gsm_tester/obj/iperf3.py @@ -250,7 +250,7 @@ proc = self.prepare_test_proc_locally(dir, netns, time_sec, proto == IPerf3Client.PROTO_UDP, bitrate) else: proc = self.prepare_test_proc_remotely(dir, netns, time_sec, proto == IPerf3Client.PROTO_UDP, bitrate) -proc.set_default_wait_timeout(time_sec + 10) # leave 10 extra sec for remote run, ctrl conn establishment, etc. +proc.set_default_wait_timeout(time_sec + 30) # leave 30 extra sec for remote run, ctrl conn establishment, etc. return proc def prepare_test_proc_remotely(self, dir, netns, time_sec, use_udp, bitrate): -- To view, visit https://gerrit.osmocom.org/c/osmo-gsm-tester/+/18800 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-gsm-tester Gerrit-Branch: master Gerrit-Change-Id: I80b732a060356aa98882ff0e8b5debaf623ba0fb Gerrit-Change-Number: 18800 Gerrit-PatchSet: 1 Gerrit-Owner: srs_andre Gerrit-MessageType: newchange
Build failure of network:osmocom:nightly/open5gs in Debian_10/armv7l
Visit https://build.opensuse.org/package/live_build_log/network:osmocom:nightly/open5gs/Debian_10/armv7l Package network:osmocom:nightly/open5gs failed to build in Debian_10/armv7l Check out the package for editing: osc checkout network:osmocom:nightly open5gs Last lines of build log: [ 1227s] [1927/2112] cc -Isrc/udr/e340f29@@udr@sta -Isrc/udr -I../src/udr -Ilib/app -I../lib/app -Ilib -I../lib -Ilib/core -I../lib/core -Ilib/dbi -I../lib/dbi -Ilib/crypt -I../lib/crypt -Ilib/sbi -I../lib/sbi -Ilib/sbi/openapi -I../lib/sbi/openapi -I/usr/include/libmongoc-1.0 -I/usr/include/libbson-1.0 -I/usr/include/p11-kit-1 -I/usr/include/arm-linux-gnueabihf -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -std=gnu89 -Wextra -Wlogical-op -Werror=missing-include-dirs -Werror=pointer-arith -Werror=init-self -Wfloat-equal -Wsuggest-attribute=noreturn -Werror=missing-prototypes -Werror=missing-declarations -Werror=implicit-function-declaration -Werror=return-type -Werror=incompatible-pointer-types -Werror=format=2 -Wstrict-prototypes -Wredundant-decls -Wimplicit-fallthrough=5 -Wendif-labels -Wstrict-aliasing=3 -Wwrite-strings -Werror=overflow -Werror=shift-count-overflow -Werror=shift-overflow=2 -Wdate-time -Wnested-externs -Wunused -Wduplicated-branches -Wmisleading-indentation -Wno-sign-compare -Wno-unused-parameter -ffast-math -fdiagnostics-show-option -fstack-protector -fstack-protector-strong --param=ssp-buffer-size=4 -ffunction-sections -fdata-sections -g -O2 -fdebug-prefix-map=/usr/src/packages/BUILD=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -pthread -MD -MQ 'src/udr/e340f29@@udr@sta/nudr-handler.c.o' -MF 'src/udr/e340f29@@udr@sta/nudr-handler.c.o.d' -o 'src/udr/e340f29@@udr@sta/nudr-handler.c.o' -c ../src/udr/nudr-handler.c [ 1228s] [1928/2112] cc -Isrc/udr/e340f29@@udr@sta -Isrc/udr -I../src/udr -Ilib/app -I../lib/app -Ilib -I../lib -Ilib/core -I../lib/core -Ilib/dbi -I../lib/dbi -Ilib/crypt -I../lib/crypt -Ilib/sbi -I../lib/sbi -Ilib/sbi/openapi -I../lib/sbi/openapi -I/usr/include/libmongoc-1.0 -I/usr/include/libbson-1.0 -I/usr/include/p11-kit-1 -I/usr/include/arm-linux-gnueabihf -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -std=gnu89 -Wextra -Wlogical-op -Werror=missing-include-dirs -Werror=pointer-arith -Werror=init-self -Wfloat-equal -Wsuggest-attribute=noreturn -Werror=missing-prototypes -Werror=missing-declarations -Werror=implicit-function-declaration -Werror=return-type -Werror=incompatible-pointer-types -Werror=format=2 -Wstrict-prototypes -Wredundant-decls -Wimplicit-fallthrough=5 -Wendif-labels -Wstrict-aliasing=3 -Wwrite-strings -Werror=overflow -Werror=shift-count-overflow -Werror=shift-overflow=2 -Wdate-time -Wnested-externs -Wunused -Wduplicated-branches -Wmisleading-indentation -Wno-sign-compare -Wno-unused-parameter -ffast-math -fdiagnostics-show-option -fstack-protector -fstack-protector-strong --param=ssp-buffer-size=4 -ffunction-sections -fdata-sections -g -O2 -fdebug-prefix-map=/usr/src/packages/BUILD=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -pthread -MD -MQ 'src/udr/e340f29@@udr@sta/sbi-path.c.o' -MF 'src/udr/e340f29@@udr@sta/sbi-path.c.o.d' -o 'src/udr/e340f29@@udr@sta/sbi-path.c.o' -c ../src/udr/sbi-path.c [ 1229s] [1929/2112] cc -Isrc/udr/e340f29@@udr@sta -Isrc/udr -I../src/udr -Ilib/app -I../lib/app -Ilib -I../lib -Ilib/core -I../lib/core -Ilib/dbi -I../lib/dbi -Ilib/crypt -I../lib/crypt -Ilib/sbi -I../lib/sbi -Ilib/sbi/openapi -I../lib/sbi/openapi -I/usr/include/libmongoc-1.0 -I/usr/include/libbson-1.0 -I/usr/include/p11-kit-1 -I/usr/include/arm-linux-gnueabihf -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -std=gnu89 -Wextra -Wlogical-op -Werror=missing-include-dirs -Werror=pointer-arith -Werror=init-self -Wfloat-equal -Wsuggest-attribute=noreturn -Werror=missing-prototypes -Werror=missing-declarations -Werror=implicit-function-declaration -Werror=return-type -Werror=incompatible-pointer-types -Werror=format=2 -Wstrict-prototypes -Wredundant-decls -Wimplicit-fallthrough=5 -Wendif-labels -Wstrict-aliasing=3 -Wwrite-strings -Werror=overflow -Werror=shift-count-overflow -Werror=shift-overflow=2 -Wdate-time -Wnested-externs -Wunused -Wduplicated-branches -Wmisleading-indentation -Wno-sign-compare -Wno-unused-parameter -ffast-math -fdiagnostics-show-option -fstack-protector -fstack-protector-strong --param=ssp-buffer-size=4 -ffunction-sections -fdata-sections -g -O2 -fdebug-prefix-map=/usr/src/packages/BUILD=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -pthread -MD -MQ 'src/udr/e340f29@@udr@sta/udr-sm.c.o' -MF 'src/udr/e340f29@@udr@sta/udr-sm.c.o.d' -o 'src/udr/e340f29@@udr@sta/udr-sm.c.o' -c ../src/udr/udr-sm.c [ 1229s] [1930/2112] cc -Isrc/udr/e340f29@@udr@sta -Isrc/udr -I../src/udr -Ilib/app -I../lib/app -Ilib -I../lib
Change in osmo-mgw[master]: osmo-mgw: refactor endpoint and trunk handling
pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-mgw/+/18644 ) Change subject: osmo-mgw: refactor endpoint and trunk handling .. Patch Set 7: Code-Review+1 (2 comments) https://gerrit.osmocom.org/c/osmo-mgw/+/18644/7/src/libosmo-mgcp/mgcp_endp.c File src/libosmo-mgcp/mgcp_endp.c: https://gerrit.osmocom.org/c/osmo-mgw/+/18644/7/src/libosmo-mgcp/mgcp_endp.c@115 PS7, Line 115: default: As a general note, it's nowadays also good practice to not define default in switch(enum), because compilers catch not-handled cases and provides a warning/error, so it's useful when adding new types, the compiler will tell you everywhere where you need to update the code. https://gerrit.osmocom.org/c/osmo-mgw/+/18644/7/src/libosmo-mgcp/mgcp_vty.c File src/libosmo-mgcp/mgcp_vty.c: https://gerrit.osmocom.org/c/osmo-mgw/+/18644/7/src/libosmo-mgcp/mgcp_vty.c@300 PS7, Line 300: This extra whitespace should be removed. -- To view, visit https://gerrit.osmocom.org/c/osmo-mgw/+/18644 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-mgw Gerrit-Branch: master Gerrit-Change-Id: Ia8cf4d6caf05a4e13f1f507dc68cbabb7e6239aa Gerrit-Change-Number: 18644 Gerrit-PatchSet: 7 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge Gerrit-Reviewer: neels Gerrit-Reviewer: pespin Gerrit-Comment-Date: Fri, 12 Jun 2020 17:10:28 + Gerrit-HasComments: Yes Gerrit-Has-Labels: Yes Gerrit-MessageType: comment
Change in osmo-mgw[master]: trunk: get rid of virt_trunk pointer
pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-mgw/+/18590 ) Change subject: trunk: get rid of virt_trunk pointer .. Patch Set 11: Code-Review+1 -- To view, visit https://gerrit.osmocom.org/c/osmo-mgw/+/18590 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-mgw Gerrit-Branch: master Gerrit-Change-Id: I81934fbd211b225ab7920e78510729c8e22607b3 Gerrit-Change-Number: 18590 Gerrit-PatchSet: 11 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge Gerrit-Reviewer: neels Gerrit-Reviewer: pespin Gerrit-Comment-Date: Fri, 12 Jun 2020 17:02:44 + Gerrit-HasComments: No Gerrit-Has-Labels: Yes Gerrit-MessageType: comment
Change in osmo-gsm-tester[master]: Implement per-test timeout guard
Hello Jenkins Builder, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/osmo-gsm-tester/+/18799 to look at the new patch set (#4). Change subject: Implement per-test timeout guard .. Implement per-test timeout guard Timeout value can be specified by test in suite.conf: config: suite: : : timeout: 2 # 2 seconds timeout Change-Id: I522f51f77f8be64ebfdb5d5e07ba92baf82d7706 --- M doc/manuals/chapters/config.adoc M selftest/suite_test/suite_test.ok M selftest/suite_test/suite_test.py M selftest/suite_test/suitedirA/test_suite/suite.conf A selftest/suite_test/suitedirA/test_suite/test_timeout.py M src/osmo_gsm_tester/core/suite.py M src/osmo_gsm_tester/core/test.py M src/osmo_gsm_tester/testenv.py 8 files changed, 80 insertions(+), 20 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-gsm-tester refs/changes/99/18799/4 -- To view, visit https://gerrit.osmocom.org/c/osmo-gsm-tester/+/18799 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-gsm-tester Gerrit-Branch: master Gerrit-Change-Id: I522f51f77f8be64ebfdb5d5e07ba92baf82d7706 Gerrit-Change-Number: 18799 Gerrit-PatchSet: 4 Gerrit-Owner: pespin Gerrit-Reviewer: Jenkins Builder Gerrit-MessageType: newpatchset
Change in osmo-gsm-tester[master]: Implement per-test timeout guard
Hello Jenkins Builder, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/osmo-gsm-tester/+/18799 to look at the new patch set (#3). Change subject: Implement per-test timeout guard .. Implement per-test timeout guard Timeout value can be specified by test in suite.conf: config: suite: : : timeout: 2 # 2 seconds timeout Change-Id: I522f51f77f8be64ebfdb5d5e07ba92baf82d7706 --- M doc/manuals/chapters/config.adoc M selftest/suite_test/suite_test.ok M selftest/suite_test/suite_test.py M selftest/suite_test/suitedirA/test_suite/suite.conf A selftest/suite_test/suitedirA/test_suite/test_timeout.py M src/osmo_gsm_tester/core/suite.py M src/osmo_gsm_tester/core/test.py M src/osmo_gsm_tester/testenv.py 8 files changed, 80 insertions(+), 20 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-gsm-tester refs/changes/99/18799/3 -- To view, visit https://gerrit.osmocom.org/c/osmo-gsm-tester/+/18799 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-gsm-tester Gerrit-Branch: master Gerrit-Change-Id: I522f51f77f8be64ebfdb5d5e07ba92baf82d7706 Gerrit-Change-Number: 18799 Gerrit-PatchSet: 3 Gerrit-Owner: pespin Gerrit-Reviewer: Jenkins Builder Gerrit-MessageType: newpatchset
Build failure of network:osmocom:nightly/open5gs in Raspbian_10/armv7l
Visit https://build.opensuse.org/package/live_build_log/network:osmocom:nightly/open5gs/Raspbian_10/armv7l Package network:osmocom:nightly/open5gs failed to build in Raspbian_10/armv7l Check out the package for editing: osc checkout network:osmocom:nightly open5gs Last lines of build log: [ 1307s] [1927/2112] cc -Isrc/udr/e340f29@@udr@sta -Isrc/udr -I../src/udr -Ilib/app -I../lib/app -Ilib -I../lib -Ilib/core -I../lib/core -Ilib/dbi -I../lib/dbi -Ilib/crypt -I../lib/crypt -Ilib/sbi -I../lib/sbi -Ilib/sbi/openapi -I../lib/sbi/openapi -I/usr/include/libmongoc-1.0 -I/usr/include/libbson-1.0 -I/usr/include/p11-kit-1 -I/usr/include/arm-linux-gnueabihf -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -std=gnu89 -Wextra -Wlogical-op -Werror=missing-include-dirs -Werror=pointer-arith -Werror=init-self -Wfloat-equal -Wsuggest-attribute=noreturn -Werror=missing-prototypes -Werror=missing-declarations -Werror=implicit-function-declaration -Werror=return-type -Werror=incompatible-pointer-types -Werror=format=2 -Wstrict-prototypes -Wredundant-decls -Wimplicit-fallthrough=5 -Wendif-labels -Wstrict-aliasing=3 -Wwrite-strings -Werror=overflow -Werror=shift-count-overflow -Werror=shift-overflow=2 -Wdate-time -Wnested-externs -Wunused -Wduplicated-branches -Wmisleading-indentation -Wno-sign-compare -Wno-unused-parameter -ffast-math -fdiagnostics-show-option -fstack-protector -fstack-protector-strong --param=ssp-buffer-size=4 -ffunction-sections -fdata-sections -g -O2 -fdebug-prefix-map=/usr/src/packages/BUILD=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -pthread -MD -MQ 'src/udr/e340f29@@udr@sta/nudr-handler.c.o' -MF 'src/udr/e340f29@@udr@sta/nudr-handler.c.o.d' -o 'src/udr/e340f29@@udr@sta/nudr-handler.c.o' -c ../src/udr/nudr-handler.c [ 1308s] [1928/2112] cc -Isrc/udr/e340f29@@udr@sta -Isrc/udr -I../src/udr -Ilib/app -I../lib/app -Ilib -I../lib -Ilib/core -I../lib/core -Ilib/dbi -I../lib/dbi -Ilib/crypt -I../lib/crypt -Ilib/sbi -I../lib/sbi -Ilib/sbi/openapi -I../lib/sbi/openapi -I/usr/include/libmongoc-1.0 -I/usr/include/libbson-1.0 -I/usr/include/p11-kit-1 -I/usr/include/arm-linux-gnueabihf -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -std=gnu89 -Wextra -Wlogical-op -Werror=missing-include-dirs -Werror=pointer-arith -Werror=init-self -Wfloat-equal -Wsuggest-attribute=noreturn -Werror=missing-prototypes -Werror=missing-declarations -Werror=implicit-function-declaration -Werror=return-type -Werror=incompatible-pointer-types -Werror=format=2 -Wstrict-prototypes -Wredundant-decls -Wimplicit-fallthrough=5 -Wendif-labels -Wstrict-aliasing=3 -Wwrite-strings -Werror=overflow -Werror=shift-count-overflow -Werror=shift-overflow=2 -Wdate-time -Wnested-externs -Wunused -Wduplicated-branches -Wmisleading-indentation -Wno-sign-compare -Wno-unused-parameter -ffast-math -fdiagnostics-show-option -fstack-protector -fstack-protector-strong --param=ssp-buffer-size=4 -ffunction-sections -fdata-sections -g -O2 -fdebug-prefix-map=/usr/src/packages/BUILD=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -pthread -MD -MQ 'src/udr/e340f29@@udr@sta/sbi-path.c.o' -MF 'src/udr/e340f29@@udr@sta/sbi-path.c.o.d' -o 'src/udr/e340f29@@udr@sta/sbi-path.c.o' -c ../src/udr/sbi-path.c [ 1309s] [1929/2112] cc -Isrc/udr/e340f29@@udr@sta -Isrc/udr -I../src/udr -Ilib/app -I../lib/app -Ilib -I../lib -Ilib/core -I../lib/core -Ilib/dbi -I../lib/dbi -Ilib/crypt -I../lib/crypt -Ilib/sbi -I../lib/sbi -Ilib/sbi/openapi -I../lib/sbi/openapi -I/usr/include/libmongoc-1.0 -I/usr/include/libbson-1.0 -I/usr/include/p11-kit-1 -I/usr/include/arm-linux-gnueabihf -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -std=gnu89 -Wextra -Wlogical-op -Werror=missing-include-dirs -Werror=pointer-arith -Werror=init-self -Wfloat-equal -Wsuggest-attribute=noreturn -Werror=missing-prototypes -Werror=missing-declarations -Werror=implicit-function-declaration -Werror=return-type -Werror=incompatible-pointer-types -Werror=format=2 -Wstrict-prototypes -Wredundant-decls -Wimplicit-fallthrough=5 -Wendif-labels -Wstrict-aliasing=3 -Wwrite-strings -Werror=overflow -Werror=shift-count-overflow -Werror=shift-overflow=2 -Wdate-time -Wnested-externs -Wunused -Wduplicated-branches -Wmisleading-indentation -Wno-sign-compare -Wno-unused-parameter -ffast-math -fdiagnostics-show-option -fstack-protector -fstack-protector-strong --param=ssp-buffer-size=4 -ffunction-sections -fdata-sections -g -O2 -fdebug-prefix-map=/usr/src/packages/BUILD=. -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -pthread -MD -MQ 'src/udr/e340f29@@udr@sta/udr-sm.c.o' -MF 'src/udr/e340f29@@udr@sta/udr-sm.c.o.d' -o 'src/udr/e340f29@@udr@sta/udr-sm.c.o' -c ../src/udr/udr-sm.c [ 1309s] [1930/2112] cc -Isrc/udr/e340f29@@udr@sta -Isrc/udr -I../src/udr -Ilib/app -I../lib/app -Ilib -I../lib
Change in osmo-gsm-tester[master]: Implement per-test timeout guard
pespin has uploaded a new patch set (#2). ( https://gerrit.osmocom.org/c/osmo-gsm-tester/+/18799 ) Change subject: Implement per-test timeout guard .. Implement per-test timeout guard Timeout value can be specified by test in suite.conf: config: suite: : : timeout: 2 # 2 seconds timeout Change-Id: I522f51f77f8be64ebfdb5d5e07ba92baf82d7706 --- M selftest/suite_test/suite_test.ok M selftest/suite_test/suite_test.py M selftest/suite_test/suitedirA/test_suite/suite.conf A selftest/suite_test/suitedirA/test_suite/test_timeout.py M src/osmo_gsm_tester/core/suite.py M src/osmo_gsm_tester/core/test.py M src/osmo_gsm_tester/testenv.py 7 files changed, 66 insertions(+), 20 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-gsm-tester refs/changes/99/18799/2 -- To view, visit https://gerrit.osmocom.org/c/osmo-gsm-tester/+/18799 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-gsm-tester Gerrit-Branch: master Gerrit-Change-Id: I522f51f77f8be64ebfdb5d5e07ba92baf82d7706 Gerrit-Change-Number: 18799 Gerrit-PatchSet: 2 Gerrit-Owner: pespin Gerrit-MessageType: newpatchset
Change in osmo-gsm-tester[master]: Implement per-test timeout guard
pespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-gsm-tester/+/18799 ) Change subject: Implement per-test timeout guard .. Implement per-test timeout guard Timeout value can be specified by test in suite.conf: config: suite: : : timeout: 2 # 2 seconds timeout Change-Id: I522f51f77f8be64ebfdb5d5e07ba92baf82d7706 --- M selftest/suite_test/suite_test.py M selftest/suite_test/suitedirA/test_suite/suite.conf A selftest/suite_test/suitedirA/test_suite/test_timeout.py M src/osmo_gsm_tester/core/suite.py M src/osmo_gsm_tester/core/test.py M src/osmo_gsm_tester/testenv.py 6 files changed, 30 insertions(+), 5 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-gsm-tester refs/changes/99/18799/1 diff --git a/selftest/suite_test/suite_test.py b/selftest/suite_test/suite_test.py index 260b9c4..9708037 100755 --- a/selftest/suite_test/suite_test.py +++ b/selftest/suite_test/suite_test.py @@ -102,7 +102,7 @@ s = suite.SuiteRun(trial, 'test_suite', s_def, [sc]) s.reserve_resources() print(repr(s.reserved_resources)) -results = s.run_tests('test_suite_params.py') +results = s.run_tests(['test_suite_params.py', 'test_timeout.py']) print(report.suite_to_text(s)) print('- test with template overlay') diff --git a/selftest/suite_test/suitedirA/test_suite/suite.conf b/selftest/suite_test/suitedirA/test_suite/suite.conf index ff4899a..0426ea7 100644 --- a/selftest/suite_test/suitedirA/test_suite/suite.conf +++ b/selftest/suite_test/suitedirA/test_suite/suite.conf @@ -15,3 +15,9 @@ one_bool_parameter: 'bool_str' second_list_parameter: ['uint'] + +config: + suite: +test_suite: + test_timeout: +timeout: 1 # timeout in 1 second diff --git a/selftest/suite_test/suitedirA/test_suite/test_timeout.py b/selftest/suite_test/suitedirA/test_suite/test_timeout.py new file mode 100644 index 000..eeddb70 --- /dev/null +++ b/selftest/suite_test/suitedirA/test_suite/test_timeout.py @@ -0,0 +1,6 @@ +from osmo_gsm_tester.testenv import * + +timeout = int(tenv.config_test_specific()['timeout']) +print('starting test and waiting to receive Timeout after %d seconds' % timeout) +sleep(10) +print('test failed, we expected timeout after %d seconds' % timeout) diff --git a/src/osmo_gsm_tester/core/suite.py b/src/osmo_gsm_tester/core/suite.py index 9b9062d..aa09cd6 100644 --- a/src/osmo_gsm_tester/core/suite.py +++ b/src/osmo_gsm_tester/core/suite.py @@ -44,6 +44,8 @@ self.suite_dir = suite_dir self.conf = None self._schema = None +self.test_basenames = [] +self.load_test_basenames() self.read_conf() def read_conf(self): @@ -54,13 +56,17 @@ SuiteDefinition.CONF_FILENAME)) # Drop schema part since it's dynamically defining content, makes no sense to validate it. self._schema = self.conf.pop('schema', {}) +# Add per-test 'timeout' attribute: +d = {t.rstrip('.py'):{'timeout': schema.DURATION} for t in self.test_basenames} +#self.log('dictionary is: %r' % repr(d)) +schema.combine(self._schema, d) +# Convert config file format to proper schema format and register it: sdef = schema.config_to_schema_def(self._schema, "%s." % self._suite_name) schema.register_config_schema('suite', sdef) +# Finally validate the file: schema.validate(self.conf, schema.get_all_schema()) -self.load_test_basenames() def load_test_basenames(self): -self.test_basenames = [] for basename in sorted(os.listdir(self.suite_dir)): if not basename.endswith('.py'): continue diff --git a/src/osmo_gsm_tester/core/test.py b/src/osmo_gsm_tester/core/test.py index 45dfd41..2fa4fe9 100644 --- a/src/osmo_gsm_tester/core/test.py +++ b/src/osmo_gsm_tester/core/test.py @@ -35,12 +35,12 @@ PASS = 'pass' FAIL = 'FAIL' -def __init__(self, suite_run, test_basename, test_specific_config): +def __init__(self, suite_run, test_basename, config_test_specific): self.basename = test_basename super().__init__(log.C_TST, self.basename) self._run_dir = None self.suite_run = suite_run -self._config_test_specific = test_specific_config +self._config_test_specific = config_test_specific self.path = os.path.join(self.suite_run.definition.suite_dir, self.basename) self.status = Test.UNKNOWN self.start_timestamp = 0 @@ -49,6 +49,7 @@ self.fail_message = None self.log_targets = [] self._report_stdout = None +self.timeout = int(config_test_specific['timeout']) if 'timeout' in config_test_specific else None def module_name(self): 'Return test name without trailing .py' @@ -110,6 +111,10 @@ 'time elapsed since test was started'
Change in osmo-gsm-tester[master]: Refactor test specific config parsing & generation
pespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-gsm-tester/+/18798 ) Change subject: Refactor test specific config parsing & generation .. Refactor test specific config parsing & generation The dictionary is generated once during test creation at suite startup. Change-Id: I4de511d64ccf65d2ec6eec45dcf28529b74c5d26 --- M selftest/suite_test/suite_test.ok M src/osmo_gsm_tester/core/suite.py M src/osmo_gsm_tester/core/test.py M src/osmo_gsm_tester/testenv.py 4 files changed, 24 insertions(+), 8 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-gsm-tester refs/changes/98/18798/1 diff --git a/selftest/suite_test/suite_test.ok b/selftest/suite_test/suite_test.ok index 3264fe2..c7c76d7 100644 --- a/selftest/suite_test/suite_test.ok +++ b/selftest/suite_test/suite_test.ok @@ -27,6 +27,8 @@ - times: '2' - run hello world test +tst test_suite: DBG: {combining='config'} +tst {combining_scenarios='config'}: DBG: {definition_conf={}} [test_suite↪{combining_scenarios='config'}] - trial test_suite @@ -179,6 +181,9 @@ FAIL: test_fail_raise.py (N.N sec) ExpectedFail: This failure is expected skip: test_suite_params.py - test with half empty scenario +tst test_suite: DBG: {combining='config'} [suite.py:[LINENR]] +tst {combining_scenarios='config'}: DBG: {definition_conf={}} [test_suite↪{combining_scenarios='config'}] [suite.py:[LINENR]] +tst {combining_scenarios='config', scenario='foo'}: DBG: {conf={}, scenario='foo'} [test_suite↪{combining_scenarios='config', scenario='foo'}] [suite.py:[LINENR]] - trial test_suite @@ -265,6 +270,9 @@ skip: test_fail_raise.py skip: test_suite_params.py - test with scenario +tst test_suite: DBG: {combining='config'} [suite.py:[LINENR]] +tst {combining_scenarios='config'}: DBG: {definition_conf={}} [test_suite↪{combining_scenarios='config'}] [suite.py:[LINENR]] +tst {combining_scenarios='config', scenario='foo'}: DBG: {conf={}, scenario='foo'} [test_suite↪{combining_scenarios='config', scenario='foo'}] [suite.py:[LINENR]] - trial test_suite @@ -351,6 +359,9 @@ skip: test_fail_raise.py skip: test_suite_params.py - test with scenario and modifiers +tst test_suite: DBG: {combining='config'} [suite.py:[LINENR]] +tst {combining_scenarios='config'}: DBG: {definition_conf={}} [test_suite↪{combining_scenarios='config'}] [suite.py:[LINENR]] +tst {combining_scenarios='config', scenario='foo'}: DBG: {conf={}, scenario='foo'} [test_suite↪{combining_scenarios='config', scenario='foo'}] [suite.py:[LINENR]] tst test_suite: reserving resources in [PATH]/selftest/suite_test/test_work/state_dir ... [suite.py:[LINENR]] tst test_suite: DBG: {combining='resources'} [suite.py:[LINENR]] tst {combining_scenarios='resources'}: DBG: {definition_conf={bts=[{'label': 'sysmoCell 5000'}, {'label': 'sysmoCell 5000'}, {'type': 'sysmo'}], ip_address=[{}], modem=[{}, {}]}} [test_suite↪{combining_scenarios='resources'}] [suite.py:[LINENR]] @@ -483,6 +494,9 @@ skip: test_fail_raise.py skip: test_suite_params.py - test with suite-specific config +tst test_suite: DBG: {combining='config'} [suite.py:[LINENR]] +tst {combining_scenarios='config'}: DBG: {definition_conf={}} [test_suite↪{combining_scenarios='config'}] [suite.py:[LINENR]] +tst {combining_scenarios='config', scenario='foo'}: DBG: {conf={suite={test_suite={some_suite_global_param='heyho', test_suite_params={one_bool_parameter='true', second_list_parameter=['23', '45'], scenario='foo'} [test_suite↪{combining_scenarios='config', scenario='foo'}] [suite.py:[LINENR]] tst test_suite: reserving resources in [PATH]/selftest/suite_test/test_work/state_dir ... [suite.py:[LINENR]] tst test_suite: DBG: {combining='resources'} [suite.py:[LINENR]] tst {combining_scenarios='resources'}: DBG: {definition_conf={bts=[{'label': 'sysmoCell 5000'}, {'label': 'sysmoCell 5000'}, {'type': 'sysmo'}], ip_address=[{}], modem=[{}, {}]}} [test_suite↪{combining_scenarios='resources'}] [suite.py:[LINENR]] @@ -598,9 +612,6 @@ trial test_suite test_suite_params.py -- tst test_suite_params.py:[LINENR]: starting test [test_suite↪test_suite_params.py:[LINENR]] [test_suite_params.py:[LINENR]] -tst test_suite: DBG: {combining='config'} [suite.py:[LINENR]] -tst {combining_scenarios='config'}: DBG: {definition_conf={}} [test_suite↪{combining_scenarios='config'}] [suite.py:[LINENR]] -tst {combining_scenarios='config', scenario='foo'}: DBG: {conf={suite={test_suite={some_suite_global_param='heyho', test_suite_params={one_bool_parameter='true', second_list_parameter=['23', '45'], scenario='foo'}
Change in osmo-mgw[master]: osmo-mgw: refactor endpoint and trunk handling
dexter has abandoned this change. ( https://gerrit.osmocom.org/c/osmo-mgw/+/18372 ) Change subject: osmo-mgw: refactor endpoint and trunk handling .. Abandoned This is a duplicate -- To view, visit https://gerrit.osmocom.org/c/osmo-mgw/+/18372 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-mgw Gerrit-Branch: master Gerrit-Change-Id: Ice8aaf03faa2fd99074f8665eea3a696d30c5eb3 Gerrit-Change-Number: 18372 Gerrit-PatchSet: 7 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: dexter Gerrit-Reviewer: neels Gerrit-Reviewer: pespin Gerrit-CC: laforge Gerrit-MessageType: abandon
Change in osmo-mgw[master]: trunk: get rid of virt_trunk pointer
Hello pespin, neels, laforge, Jenkins Builder, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/osmo-mgw/+/18590 to look at the new patch set (#11). Change subject: trunk: get rid of virt_trunk pointer .. trunk: get rid of virt_trunk pointer The virtual trunk is a pre-configured trunk that always exists. It is kept separate from the trunk list using a separate pointer. This makes thinks unecessarly complicated. Lets organize the trunk in the trunk list like any other trunk, except that we automatically create it on startup and assign it always the trunk id number 0. Change-Id: I81934fbd211b225ab7920e78510729c8e22607b3 Related: OS#2659 --- M include/osmocom/mgcp/mgcp.h M include/osmocom/mgcp/mgcp_trunk.h M src/libosmo-mgcp/mgcp_osmux.c M src/libosmo-mgcp/mgcp_protocol.c M src/libosmo-mgcp/mgcp_trunk.c M src/libosmo-mgcp/mgcp_vty.c M tests/mgcp/mgcp_test.c 7 files changed, 143 insertions(+), 105 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-mgw refs/changes/90/18590/11 -- To view, visit https://gerrit.osmocom.org/c/osmo-mgw/+/18590 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-mgw Gerrit-Branch: master Gerrit-Change-Id: I81934fbd211b225ab7920e78510729c8e22607b3 Gerrit-Change-Number: 18590 Gerrit-PatchSet: 11 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge Gerrit-Reviewer: neels Gerrit-Reviewer: pespin Gerrit-MessageType: newpatchset
Change in osmo-mgw[master]: osmo-mgw: refactor endpoint and trunk handling
Hello pespin, neels, laforge, Jenkins Builder, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/osmo-mgw/+/18644 to look at the new patch set (#7). Change subject: osmo-mgw: refactor endpoint and trunk handling .. osmo-mgw: refactor endpoint and trunk handling The trunk and endpoint handling in osmo-mgw is still very complex and implemented in various places (mostly mgcp_protocol.c). Also we use still integers for endpoint identification, which is not flexible enough to address timeslots/subslots on an E1 trunk. Some refactoring is needed. - get rid of integers as endpoint identifiers, use strings instead and find the endpoint based on its string name on the trunk. - identify the trunk based on the trunk prefix given in the endpoint name. - refactor trunk and endpoint allocation. Aggregate functionality in in mgcp_endp.c and mgcp_trunk.c. Also remove non-reusable code that relates to the still exisiting, but unfinished E1 trunk support. - refactor rate counters, put them into a separate module and do no longer allocate them per trunk. Allocate them globally instead. Change-Id: Ia8cf4d6caf05a4e13f1f507dc68cbabb7e6239aa Related: OS#2659 --- M include/osmocom/mgcp/Makefile.am M include/osmocom/mgcp/mgcp.h M include/osmocom/mgcp/mgcp_common.h M include/osmocom/mgcp/mgcp_endp.h M include/osmocom/mgcp/mgcp_internal.h A include/osmocom/mgcp/mgcp_ratectr.h A include/osmocom/mgcp/mgcp_trunk.h M src/libosmo-mgcp/Makefile.am M src/libosmo-mgcp/mgcp_codec.c M src/libosmo-mgcp/mgcp_conn.c M src/libosmo-mgcp/mgcp_endp.c M src/libosmo-mgcp/mgcp_msg.c M src/libosmo-mgcp/mgcp_network.c M src/libosmo-mgcp/mgcp_osmux.c M src/libosmo-mgcp/mgcp_protocol.c A src/libosmo-mgcp/mgcp_ratectr.c M src/libosmo-mgcp/mgcp_sdp.c A src/libosmo-mgcp/mgcp_trunk.c M src/libosmo-mgcp/mgcp_vty.c M src/osmo-mgw/mgw_main.c M tests/mgcp/mgcp_test.c 21 files changed, 938 insertions(+), 628 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-mgw refs/changes/44/18644/7 -- To view, visit https://gerrit.osmocom.org/c/osmo-mgw/+/18644 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-mgw Gerrit-Branch: master Gerrit-Change-Id: Ia8cf4d6caf05a4e13f1f507dc68cbabb7e6239aa Gerrit-Change-Number: 18644 Gerrit-PatchSet: 7 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge Gerrit-Reviewer: neels Gerrit-Reviewer: pespin Gerrit-MessageType: newpatchset
Change in osmo-bsc[master]: add osmo-bsc --vty-ref-xml: dump VTY ref XML to stdout
Hello fixeria, Jenkins Builder, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/osmo-bsc/+/18347 to look at the new patch set (#5). Change subject: add osmo-bsc --vty-ref-xml: dump VTY ref XML to stdout .. add osmo-bsc --vty-ref-xml: dump VTY ref XML to stdout Add only a long option to not clutter the cmdline namespace. To add a long option without a short letter is slightly complex: use the 'flag' and 'val' mechanism as in 'man 3 getopt' to write an option index to long_option. Depends: Ic74bbdb6dc5ea05f03c791cc70184861e39cd492 (libosmocore) Change-Id: I316efedb2c1652791434ecf14a1e261367cd2fb7 --- M src/osmo-bsc/osmo_bsc_main.c 1 file changed, 12 insertions(+), 0 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-bsc refs/changes/47/18347/5 -- To view, visit https://gerrit.osmocom.org/c/osmo-bsc/+/18347 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bsc Gerrit-Branch: master Gerrit-Change-Id: I316efedb2c1652791434ecf14a1e261367cd2fb7 Gerrit-Change-Number: 18347 Gerrit-PatchSet: 5 Gerrit-Owner: neels Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria Gerrit-Reviewer: neels Gerrit-CC: laforge Gerrit-MessageType: newpatchset
Change in osmo-bsc[master]: osmo-bsc main: exit on cmdline option error
neels has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-bsc/+/18797 ) Change subject: osmo-bsc main: exit on cmdline option error .. osmo-bsc main: exit on cmdline option error Change-Id: I7c3432790a77ae9081d2c458ee9f598e435e089d --- M src/osmo-bsc/osmo_bsc_main.c 1 file changed, 3 insertions(+), 2 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-bsc refs/changes/97/18797/1 diff --git a/src/osmo-bsc/osmo_bsc_main.c b/src/osmo-bsc/osmo_bsc_main.c index 0e5b4e6..9eaaf2a 100644 --- a/src/osmo-bsc/osmo_bsc_main.c +++ b/src/osmo-bsc/osmo_bsc_main.c @@ -173,8 +173,9 @@ rf_ctrl = optarg; break; default: - /* ignore */ - break; + /* catch unknown options *as well as* missing arguments. */ + fprintf(stderr, "Error in command line options. Exiting.\n"); + exit(-1); } } -- To view, visit https://gerrit.osmocom.org/c/osmo-bsc/+/18797 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bsc Gerrit-Branch: master Gerrit-Change-Id: I7c3432790a77ae9081d2c458ee9f598e435e089d Gerrit-Change-Number: 18797 Gerrit-PatchSet: 1 Gerrit-Owner: neels Gerrit-MessageType: newchange
Change in osmo-bsc[master]: manuals: generate vty reference xml at build time
Hello fixeria, Jenkins Builder, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/osmo-bsc/+/18374 to look at the new patch set (#3). Change subject: manuals: generate vty reference xml at build time .. manuals: generate vty reference xml at build time Move 'doc' subdir further down to "make sure" the osmo-bsc binary is built before the docs. Remove bsc_vty_reference.xml from the source tree. In manuals/Makefile.am use the new BUILT_REFERENCE_XML feature recently added to osmo-gsm-manuals, and add a build target to generate the XML using the new osmo-bsc --vty-ref-xml cmdline switch. Depends: I613d692328050a036d05b49a436ab495fc2087ba (osmo-gsm-manuals) Change-Id: I5dc872149154e1a949bb6a2b9bbc1461e0fc51f6 --- M Makefile.am M doc/manuals/Makefile.am D doc/manuals/vty/bsc_vty_reference.xml 3 files changed, 7 insertions(+), 5,096 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-bsc refs/changes/74/18374/3 -- To view, visit https://gerrit.osmocom.org/c/osmo-bsc/+/18374 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bsc Gerrit-Branch: master Gerrit-Change-Id: I5dc872149154e1a949bb6a2b9bbc1461e0fc51f6 Gerrit-Change-Number: 18374 Gerrit-PatchSet: 3 Gerrit-Owner: neels Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria Gerrit-Reviewer: neels Gerrit-CC: pespin Gerrit-MessageType: newpatchset
Change in osmo-gsm-tester[master]: Remove all references to defaults: timeout: from suite.conf
pespin has submitted this change. ( https://gerrit.osmocom.org/c/osmo-gsm-tester/+/18793 ) Change subject: Remove all references to defaults: timeout: from suite.conf .. Remove all references to defaults: timeout: from suite.conf This feature is not really implemented and maybe never was. In any case, it makes sense to have that working per-test so we can specify different values per test in case it's needed. Change-Id: I3c1b95c10e974da87ec9abd25578d8bcc0bc55a3 --- M doc/examples/4g_srsLTE/suites/4g/suite.conf M doc/manuals/chapters/config.adoc M selftest/suite_test/suite_test.ok M selftest/suite_test/suitedirA/test_suite/suite.conf M selftest/suite_test/suitedirB/suiteB/suite.conf M selftest/suite_test/suitedirB/suiteC/suite.conf M src/osmo_gsm_tester/core/schema.py M sysmocom/suites/4g/suite.conf M sysmocom/suites/encryption/suite.conf M sysmocom/suites/nitb_debug/suite.conf M sysmocom/suites/nitb_netreg/suite.conf M sysmocom/suites/nitb_netreg_mass/suite.conf M sysmocom/suites/nitb_smpp/suite.conf M sysmocom/suites/nitb_sms/suite.conf M sysmocom/suites/nitb_ussd/suite.conf M sysmocom/suites/smpp/suite.conf 16 files changed, 1 insertion(+), 35 deletions(-) Approvals: Jenkins Builder: Verified laforge: Looks good to me, but someone else must approve pespin: Looks good to me, approved diff --git a/doc/examples/4g_srsLTE/suites/4g/suite.conf b/doc/examples/4g_srsLTE/suites/4g/suite.conf index e439e99..0b0177a 100644 --- a/doc/examples/4g_srsLTE/suites/4g/suite.conf +++ b/doc/examples/4g_srsLTE/suites/4g/suite.conf @@ -8,5 +8,3 @@ features: - 4g -defaults: - timeout: 180s diff --git a/doc/manuals/chapters/config.adoc b/doc/manuals/chapters/config.adoc index b4e4a95..118f056 100644 --- a/doc/manuals/chapters/config.adoc +++ b/doc/manuals/chapters/config.adoc @@ -190,9 +190,6 @@ a_suite_test_foo: one_test_parameter_for_test_foo: 'str' another_test_parameter_for_test_foo: ['bool_str'] - -defaults: - timeout: 50s [[scenarios_dir]] @@ -647,9 +644,6 @@ <> file. Content in this section follows the <> schema. -//TODO: defaults.timeout should be change in code to be config.test_timeout or similar -//TODO: 'config' should be split into its own schema and validate defaults.conf - === Example Setup {app-name} comes with an example official setup which is the one used to run diff --git a/selftest/suite_test/suite_test.ok b/selftest/suite_test/suite_test.ok index 9c9f5cc..3264fe2 100644 --- a/selftest/suite_test/suite_test.ok +++ b/selftest/suite_test/suite_test.ok @@ -15,8 +15,6 @@ cnf [PATH]/selftest/suite_test/suitedirA/empty_dir/suite.conf: ERR: FileNotFoundError: [Errno 2] No such file or directory: '[PATH]/selftest/suite_test/suitedirA/empty_dir/suite.conf' [empty_dir↪[PATH]/selftest/suite_test/suitedirA/empty_dir/suite.conf] - valid suite dir cnf test_suite: DBG: reading suite.conf -defaults: - timeout: 60s resources: bts: - label: sysmoCell 5000 diff --git a/selftest/suite_test/suitedirA/test_suite/suite.conf b/selftest/suite_test/suitedirA/test_suite/suite.conf index 4b70be8..ff4899a 100644 --- a/selftest/suite_test/suitedirA/test_suite/suite.conf +++ b/selftest/suite_test/suitedirA/test_suite/suite.conf @@ -15,5 +15,3 @@ one_bool_parameter: 'bool_str' second_list_parameter: ['uint'] -defaults: - timeout: 60s diff --git a/selftest/suite_test/suitedirB/suiteB/suite.conf b/selftest/suite_test/suitedirB/suiteB/suite.conf index 3645cd9..a4d0951 100644 --- a/selftest/suite_test/suitedirB/suiteB/suite.conf +++ b/selftest/suite_test/suitedirB/suiteB/suite.conf @@ -1,4 +1,2 @@ resources: -defaults: - timeout: 60s diff --git a/selftest/suite_test/suitedirB/suiteC/suite.conf b/selftest/suite_test/suitedirB/suiteC/suite.conf index 44be3fc..33639a1 100644 --- a/selftest/suite_test/suitedirB/suiteC/suite.conf +++ b/selftest/suite_test/suitedirB/suiteC/suite.conf @@ -2,5 +2,3 @@ ip_address: - addr: 10.42.42.2 # stp -defaults: - timeout: 60s diff --git a/src/osmo_gsm_tester/core/schema.py b/src/osmo_gsm_tester/core/schema.py index 70b4c8c..9a346cd 100644 --- a/src/osmo_gsm_tester/core/schema.py +++ b/src/osmo_gsm_tester/core/schema.py @@ -430,7 +430,7 @@ global _ALL_SCHEMA if _ALL_SCHEMA is None: want_schema = get_want_schema() -_ALL_SCHEMA = util.dict_add({ 'defaults.timeout': STR }, +_ALL_SCHEMA = util.dict_add( dict([('config.%s' % key, val) for key, val in _CONFIG_SCHEMA.items()]), dict([('resources.%s' % key, val) for key, val in want_schema.items()]), dict([('modifiers.%s' % key, val) for key, val in want_schema.items()])) diff --git a/sysmocom/suites/4g/suite.conf b/sysmocom/suites/4g/suite.conf index fbd81b6..49031a2 100644 --- a/sysmocom/suites/4g/suite.conf +++ b/sysmocom/suites/4g/suite.conf @@ -13,5 +13,3 @@ duration:
Change in osmo-gsm-tester[master]: test: Move duration time calculation to helper function
pespin has submitted this change. ( https://gerrit.osmocom.org/c/osmo-gsm-tester/+/18796 ) Change subject: test: Move duration time calculation to helper function .. test: Move duration time calculation to helper function Change-Id: Ica2e7d92f37d18a4f8832f38d9f9f3baba8be09f --- M src/osmo_gsm_tester/core/test.py 1 file changed, 6 insertions(+), 2 deletions(-) Approvals: Jenkins Builder: Verified laforge: Looks good to me, approved diff --git a/src/osmo_gsm_tester/core/test.py b/src/osmo_gsm_tester/core/test.py index 47e1f42..7347229 100644 --- a/src/osmo_gsm_tester/core/test.py +++ b/src/osmo_gsm_tester/core/test.py @@ -105,9 +105,13 @@ return '%s:%s' % (self._name, l) return super().name() +def elapsed_time(self): +'time elapsed since test was started' +return time.time() - self.start_timestamp + def set_fail(self, fail_type, fail_message, tb_str=None, src=4): self.status = Test.FAIL -self.duration = time.time() - self.start_timestamp +self.duration = self.elapsed_time() self.fail_type = fail_type self.fail_message = fail_message @@ -123,7 +127,7 @@ def set_pass(self): self.status = Test.PASS -self.duration = time.time() - self.start_timestamp +self.duration = self.elapsed_time() self.log('Test passed (%.1f sec)' % self.duration) def set_skip(self): -- To view, visit https://gerrit.osmocom.org/c/osmo-gsm-tester/+/18796 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-gsm-tester Gerrit-Branch: master Gerrit-Change-Id: Ica2e7d92f37d18a4f8832f38d9f9f3baba8be09f Gerrit-Change-Number: 18796 Gerrit-PatchSet: 1 Gerrit-Owner: pespin Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge Gerrit-Reviewer: pespin Gerrit-MessageType: merged
Change in osmo-gsm-tester[master]: Remove all references to defaults: timeout: from suite.conf
pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-gsm-tester/+/18793 ) Change subject: Remove all references to defaults: timeout: from suite.conf .. Patch Set 1: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/c/osmo-gsm-tester/+/18793 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-gsm-tester Gerrit-Branch: master Gerrit-Change-Id: I3c1b95c10e974da87ec9abd25578d8bcc0bc55a3 Gerrit-Change-Number: 18793 Gerrit-PatchSet: 1 Gerrit-Owner: pespin Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge Gerrit-Reviewer: pespin Gerrit-Comment-Date: Fri, 12 Jun 2020 15:18:27 + Gerrit-HasComments: No Gerrit-Has-Labels: Yes Gerrit-MessageType: comment
Change in osmo-bsc[master]: MSC pooling: implement NAS node selection by NRI from TMSI
laforge has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-bsc/+/18766 ) Change subject: MSC pooling: implement NAS node selection by NRI from TMSI .. Patch Set 2: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/c/osmo-bsc/+/18766 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bsc Gerrit-Branch: master Gerrit-Change-Id: Ifbdea197b26e88751a391c8a80c41f04e7d5e047 Gerrit-Change-Number: 18766 Gerrit-PatchSet: 2 Gerrit-Owner: neels Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge Gerrit-Reviewer: pespin Gerrit-Comment-Date: Fri, 12 Jun 2020 14:56:33 + Gerrit-HasComments: No Gerrit-Has-Labels: Yes Gerrit-MessageType: comment
Change in docker-playground[master]: bsc: adjust osmo-bsc.cfg for MSC pooling tests
laforge has posted comments on this change. ( https://gerrit.osmocom.org/c/docker-playground/+/18775 ) Change subject: bsc: adjust osmo-bsc.cfg for MSC pooling tests .. Patch Set 1: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/c/docker-playground/+/18775 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: docker-playground Gerrit-Branch: master Gerrit-Change-Id: I353a2023d41d9f083acdd61da11109cb5a002f9b Gerrit-Change-Number: 18775 Gerrit-PatchSet: 1 Gerrit-Owner: neels Gerrit-Reviewer: laforge Gerrit-Reviewer: pespin Gerrit-Comment-Date: Fri, 12 Jun 2020 14:55:07 + Gerrit-HasComments: No Gerrit-Has-Labels: Yes Gerrit-MessageType: comment
Change in osmo-bsc[master]: refactor bsc_find_msc()'s round-robin
neels has submitted this change. ( https://gerrit.osmocom.org/c/osmo-bsc/+/18505 ) Change subject: refactor bsc_find_msc()'s round-robin .. refactor bsc_find_msc()'s round-robin Prepare for MSC pooling by NRI. Before introducing actual NRI decoding and MSC matching, fix the bsc_find_msc() implementation. (Indicate the places relevant for NRI by "TODO" comments). bsc_find_msc() puts an MSC to the end of the internal list of MSCs when it was used. This has problems: - Modifying the list affects VTY output, e.g. 'show running-config' and 'show mscs' change their order in which MSCs are shown, depending on how often a round-robin selection has taken place. - Emergency calls and normal calls potentially pick quite different sets of eligible MSCs. When the round-robin choices between these sets affect each other, the choice is not balanced. For example, if only the first MSC is allow_emerg == true, every emergency call would reset the round-robin state to the first MSC in the list, also for normal calls. If there are regular emergency calls, normal calls will then tend to load more onto the first few MSCs after those picked for emergency calls. Fix: Never affect the ordering of MSCs in the internal list of MSCs. Instead, keep a "next_nr" MSC index and determine the next round-robin target like that. Keep a separate "next_emerg_nr" MSC index so that emergency call round-robin does no longer cause normal round-robin to skip MSCs. Further problems in current bsc_find_msc(): - The "blind:" label should also do round-robin. - The "paging:" part should not attempt to use disconnected MSCs. - Both should also heed NRI matches (when they are added). Fix: instead of code dup, determine Paging Response matching with an earlier Paging Request right at the start. If that yields no usable MSC, continue into the normal NRI and round-robin selection. The loop in this patch is inspired by the upcoming implementation of MSC pooling by NRI, as indicated by the two TODO comments. The point is that, in the presence of an NRI from a TMSI identity, we always need to iterate all of the MSCs to find possible NRI matches. The two round-robin sets (Emergency and non-Emergency) are determined in the same loop iteration for cases that have no or match no NRI, or where a matching MSC is currently disconnected. Change-Id: Idf71f07ba5a17d5b870dc1a5a2875b6fedb61291 --- M include/osmocom/bsc/gsm_data.h M src/osmo-bsc/gsm_08_08.c 2 files changed, 71 insertions(+), 60 deletions(-) Approvals: Jenkins Builder: Verified laforge: Looks good to me, approved pespin: Looks good to me, but someone else must approve diff --git a/include/osmocom/bsc/gsm_data.h b/include/osmocom/bsc/gsm_data.h index 1e7e88f..52ff5e4 100644 --- a/include/osmocom/bsc/gsm_data.h +++ b/include/osmocom/bsc/gsm_data.h @@ -1651,6 +1651,10 @@ /* msc configuration */ struct llist_head mscs; + uint8_t mscs_round_robin_next_nr; + /* Emergency calls potentially select a different set of MSCs, so to not mess up the normal round-robin +* behavior, emergency calls need a separate round-robin counter. */ + uint8_t mscs_round_robin_next_emerg_nr; /* rf ctl related bits */ int mid_call_timeout; diff --git a/src/osmo-bsc/gsm_08_08.c b/src/osmo-bsc/gsm_08_08.c index d8e33d6..a252203 100644 --- a/src/osmo-bsc/gsm_08_08.c +++ b/src/osmo-bsc/gsm_08_08.c @@ -36,6 +36,9 @@ #include +#define LOG_COMPL_L3(pdisc, mtype, loglevel, format, args...) \ + LOGP(DRSL, loglevel, "%s %s: " format, gsm48_pdisc_name(pdisc), gsm48_pdisc_msgtype_name(pdisc, mtype), ##args) + /* Check if we have a proper connection to the MSC */ static bool msc_connected(struct gsm_subscriber_connection *conn) { @@ -159,6 +162,21 @@ return subscr; } +static bool is_msc_usable(struct bsc_msc_data *msc, bool is_emerg) +{ + if (is_emerg && !msc->allow_emerg) + return false; + if (!a_reset_conn_ready(msc)) + return false; + return true; +} + +/* Decide which MSC to forward this Complete Layer 3 request to. + * a) If the subscriber was previously paged from a particular MSC, that MSC shall receive the Paging Response. + * b) If the message contains an NRI indicating a particular MSC and the MSC is connected, that MSC shall handle this + *conn. + * c) All other cases distribute the messages across connected MSCs in a round-robin fashion. + */ static struct bsc_msc_data *bsc_find_msc(struct gsm_subscriber_connection *conn, struct msgb *msg) { @@ -166,9 +184,13 @@ struct gsm48_hdr *gh; int8_t pdisc; uint8_t mtype; - struct bsc_msc_data *msc, *pag_msc; + struct bsc_msc_data *msc; + struct bsc_msc_data *msc_target = NULL; + struct bsc_msc_data *msc_round_robin_next = NULL; + struct bsc_msc_data
Change in docker-playground[master]: BSC_Tests.cfg: adjust cfg for multiple MSCs
laforge has posted comments on this change. ( https://gerrit.osmocom.org/c/docker-playground/+/18774 ) Change subject: BSC_Tests.cfg: adjust cfg for multiple MSCs .. Patch Set 1: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/c/docker-playground/+/18774 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: docker-playground Gerrit-Branch: master Gerrit-Change-Id: I1986e4ef43beee161c82193694421b56136c1afe Gerrit-Change-Number: 18774 Gerrit-PatchSet: 1 Gerrit-Owner: neels Gerrit-Reviewer: laforge Gerrit-Reviewer: pespin Gerrit-Comment-Date: Fri, 12 Jun 2020 14:55:03 + Gerrit-HasComments: No Gerrit-Has-Labels: Yes Gerrit-MessageType: comment
Change in docker-playground[master]: MSC_Tests.cfg: tweak comments
laforge has posted comments on this change. ( https://gerrit.osmocom.org/c/docker-playground/+/18776 ) Change subject: MSC_Tests.cfg: tweak comments .. Patch Set 1: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/c/docker-playground/+/18776 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: docker-playground Gerrit-Branch: master Gerrit-Change-Id: If5f9cff03f078987c5b9051f8d63c239bf92ddb7 Gerrit-Change-Number: 18776 Gerrit-PatchSet: 1 Gerrit-Owner: neels Gerrit-Reviewer: laforge Gerrit-Reviewer: pespin Gerrit-Comment-Date: Fri, 12 Jun 2020 14:54:49 + Gerrit-HasComments: No Gerrit-Has-Labels: Yes Gerrit-MessageType: comment
Change in docker-playground[master]: debian-stretch-jenkins/Dockerfile: Install source-highlight
laforge has posted comments on this change. ( https://gerrit.osmocom.org/c/docker-playground/+/18771 ) Change subject: debian-stretch-jenkins/Dockerfile: Install source-highlight .. Patch Set 1: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/c/docker-playground/+/18771 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: docker-playground Gerrit-Branch: master Gerrit-Change-Id: I8427179f7cfc0c9150e5327803ca89adffedb8f1 Gerrit-Change-Number: 18771 Gerrit-PatchSet: 1 Gerrit-Owner: pespin Gerrit-Reviewer: daniel Gerrit-Reviewer: laforge Gerrit-Reviewer: neels Gerrit-Reviewer: pespin Gerrit-Comment-Date: Fri, 12 Jun 2020 14:54:31 + Gerrit-HasComments: No Gerrit-Has-Labels: Yes Gerrit-MessageType: comment
Change in docker-playground[master]: debian-stretch-jenkins/Dockerfile: Install source-highlight
laforge has submitted this change. ( https://gerrit.osmocom.org/c/docker-playground/+/18771 ) Change subject: debian-stretch-jenkins/Dockerfile: Install source-highlight .. debian-stretch-jenkins/Dockerfile: Install source-highlight It is needed by some user manuals using code snippet syntax higlhlighting, such as osmo-gsm-tester one: """ [source,python] sleep(3) # sleep for 3 seconds """ asciidoc: WARNING: test_api.adoc: line 19: filter non-zero exit code: source-highlight -f xhtml -s python: returned 127 asciidoc: WARNING: test_api.adoc: line 19: no output from filter: source-highlight -f xhtml -s python Change-Id: I8427179f7cfc0c9150e5327803ca89adffedb8f1 --- M debian-stretch-jenkins/Dockerfile 1 file changed, 1 insertion(+), 0 deletions(-) Approvals: laforge: Looks good to me, approved pespin: Verified diff --git a/debian-stretch-jenkins/Dockerfile b/debian-stretch-jenkins/Dockerfile index e519f26..158f7d7 100644 --- a/debian-stretch-jenkins/Dockerfile +++ b/debian-stretch-jenkins/Dockerfile @@ -103,6 +103,7 @@ rsync \ sdcc \ sqlite3 \ + source-highlight \ stow \ sudo \ systemd \ -- To view, visit https://gerrit.osmocom.org/c/docker-playground/+/18771 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: docker-playground Gerrit-Branch: master Gerrit-Change-Id: I8427179f7cfc0c9150e5327803ca89adffedb8f1 Gerrit-Change-Number: 18771 Gerrit-PatchSet: 2 Gerrit-Owner: pespin Gerrit-Reviewer: daniel Gerrit-Reviewer: laforge Gerrit-Reviewer: neels Gerrit-Reviewer: pespin Gerrit-MessageType: merged
Change in osmo-ttcn3-hacks[master]: bsc: undup pars.sccp_addr_msc and _bsc
laforge has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/18794 ) Change subject: bsc: undup pars.sccp_addr_msc and _bsc .. Patch Set 1: Code-Review+1 -- To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/18794 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-ttcn3-hacks Gerrit-Branch: master Gerrit-Change-Id: Iae81ca58001455099218ce769a97dc6402832490 Gerrit-Change-Number: 18794 Gerrit-PatchSet: 1 Gerrit-Owner: neels Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge Gerrit-Comment-Date: Fri, 12 Jun 2020 14:54:00 + Gerrit-HasComments: No Gerrit-Has-Labels: Yes Gerrit-MessageType: comment
Change in osmo-bts[master]: abis.c: Grab reference to e1inp_line_get if already created
laforge has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-bts/+/18732 ) Change subject: abis.c: Grab reference to e1inp_line_get if already created .. Patch Set 2: Code-Review+1 -- To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/18732 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bts Gerrit-Branch: master Gerrit-Change-Id: Ib84636663be2df33d497131c780b010b57f17e32 Gerrit-Change-Number: 18732 Gerrit-PatchSet: 2 Gerrit-Owner: pespin Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: daniel Gerrit-Reviewer: laforge Gerrit-Reviewer: neels Gerrit-Reviewer: pespin Gerrit-Comment-Date: Fri, 12 Jun 2020 14:54:21 + Gerrit-HasComments: No Gerrit-Has-Labels: Yes Gerrit-MessageType: comment
Change in osmo-ttcn3-hacks[master]: bsc: add MSC pooling tests
laforge has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/18763 ) Change subject: bsc: add MSC pooling tests .. Patch Set 4: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/18763 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-ttcn3-hacks Gerrit-Branch: master Gerrit-Change-Id: I21cbab193cd0de2e5692665442eae113d5f61904 Gerrit-Change-Number: 18763 Gerrit-PatchSet: 4 Gerrit-Owner: neels Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge Gerrit-Reviewer: neels Gerrit-Reviewer: pespin Gerrit-Comment-Date: Fri, 12 Jun 2020 14:53:31 + Gerrit-HasComments: No Gerrit-Has-Labels: Yes Gerrit-MessageType: comment
Change in osmo-gsm-tester[master]: Remove all references to defaults: timeout: from suite.conf
laforge has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-gsm-tester/+/18793 ) Change subject: Remove all references to defaults: timeout: from suite.conf .. Patch Set 1: Code-Review+1 -- To view, visit https://gerrit.osmocom.org/c/osmo-gsm-tester/+/18793 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-gsm-tester Gerrit-Branch: master Gerrit-Change-Id: I3c1b95c10e974da87ec9abd25578d8bcc0bc55a3 Gerrit-Change-Number: 18793 Gerrit-PatchSet: 1 Gerrit-Owner: pespin Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge Gerrit-Comment-Date: Fri, 12 Jun 2020 14:52:48 + Gerrit-HasComments: No Gerrit-Has-Labels: Yes Gerrit-MessageType: comment
Change in libosmocore[master]: tlv.h: add msgb_tvl_put() to add a TvLV without the value part
laforge has submitted this change. ( https://gerrit.osmocom.org/c/libosmocore/+/18634 ) Change subject: tlv.h: add msgb_tvl_put() to add a TvLV without the value part .. tlv.h: add msgb_tvl_put() to add a TvLV without the value part So far, we have msgb_tl_put(), which allows putting the TL header of a TLV, without the value part. Add the same for a variable-size length TvLV: put a TvL header of a TvLV without the value part. In a subsequent patch, osmo_mobile_identity will be introduced, which will allow writing the encoded MI directly to the end of a msgb. For BSSGP_IE_IMSI, which is a TvLV, it would hence be simplest to write only the TvL first. Change-Id: I02cca5182fe42e40b63680a2fd470f03bcc11076 --- M include/osmocom/gsm/tlv.h 1 file changed, 45 insertions(+), 0 deletions(-) Approvals: Jenkins Builder: Verified pespin: Looks good to me, but someone else must approve laforge: Looks good to me, approved diff --git a/include/osmocom/gsm/tlv.h b/include/osmocom/gsm/tlv.h index bb0e8fc..254c21b 100644 --- a/include/osmocom/gsm/tlv.h +++ b/include/osmocom/gsm/tlv.h @@ -111,6 +111,14 @@ return buf + len; } +/*! put (append) a TL field (a TLV field but omitting the value part). */ +static inline uint8_t *tl_put(uint8_t *buf, uint8_t tag, uint8_t len) +{ + *buf++ = tag; + *buf++ = len; + return buf; +} + /*! put (append) a TLV16 field */ static inline uint8_t *tlv16_put(uint8_t *buf, uint8_t tag, uint8_t len, const uint16_t *val) @@ -132,6 +140,15 @@ return buf + len*2; } +/*! put (append) a TL16 field. */ +static inline uint8_t *tl16_put(uint8_t *buf, uint8_t tag, uint16_t len) +{ + *buf++ = tag; + *buf++ = len >> 8; + *buf++ = len & 0xff; + return buf; +} + /*! put (append) a TL16V field */ static inline uint8_t *t16lv_put(uint8_t *buf, uint16_t tag, uint8_t len, const uint8_t *val) @@ -158,6 +175,23 @@ return ret; } +/*! put (append) a TvL field (a TvLV with variable-size length, where the value part's length is already known, but will + * be put() later). + * \returns pointer to the value's start position. + */ +static inline uint8_t *tvl_put(uint8_t *buf, uint8_t tag, uint16_t len) +{ + uint8_t *ret; + + if (len <= TVLV_MAX_ONEBYTE) { + ret = tl_put(buf, tag, len); + buf[1] |= 0x80; + } else + ret = tl16_put(buf, tag, len); + + return ret; +} + /*! put (append) a variable-length tag or variable-length length * */ static inline uint8_t *vt_gan_put(uint8_t *buf, uint16_t tag) { @@ -215,6 +249,17 @@ return t16lv_put(buf, tag, len, val); } +/*! put (append) a TvL field to \ref msgb, i.e. a TvLV with variable-size length, where the value's length is already + * known, but will be put() later. The value section is not yet reserved, only tag and variable-length are put in the + * msgb. + * \returns pointer to the value's start position and end of the msgb. + */ +static inline uint8_t *msgb_tvl_put(struct msgb *msg, uint8_t tag, uint16_t len) +{ + uint8_t *buf = msgb_put(msg, TVLV_GROSS_LEN(len)); + return tvl_put(buf, tag, len); +} + /*! put (append) a TvLV field to \ref msgb */ static inline uint8_t *msgb_tvlv_put(struct msgb *msg, uint8_t tag, uint16_t len, const uint8_t *val) -- To view, visit https://gerrit.osmocom.org/c/libosmocore/+/18634 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: libosmocore Gerrit-Branch: master Gerrit-Change-Id: I02cca5182fe42e40b63680a2fd470f03bcc11076 Gerrit-Change-Number: 18634 Gerrit-PatchSet: 6 Gerrit-Owner: neels Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge Gerrit-Reviewer: pespin Gerrit-MessageType: merged
Change in libosmocore[master]: osmo_bcd2str: also validate start_nibble parameter
laforge has submitted this change. ( https://gerrit.osmocom.org/c/libosmocore/+/18795 ) Change subject: osmo_bcd2str: also validate start_nibble parameter .. osmo_bcd2str: also validate start_nibble parameter If start_nibble were passed negative, we'd end up accessing invalid memory. Safeguard against that. Change-Id: Ied3c1e02c3a01d868e08195cbd8dfa52d2c19ac3 --- M src/utils.c 1 file changed, 1 insertion(+), 1 deletion(-) Approvals: Jenkins Builder: Verified laforge: Looks good to me, approved diff --git a/src/utils.c b/src/utils.c index 038288c..18e105f 100644 --- a/src/utils.c +++ b/src/utils.c @@ -154,7 +154,7 @@ int nibble_i; int rc = 0; - if (!dst || dst_size < 1) + if (!dst || dst_size < 1 || start_nibble < 0) return -ENOMEM; for (nibble_i = start_nibble; nibble_i < end_nibble && dst < dst_end; nibble_i++, dst++) { -- To view, visit https://gerrit.osmocom.org/c/libosmocore/+/18795 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: libosmocore Gerrit-Branch: master Gerrit-Change-Id: Ied3c1e02c3a01d868e08195cbd8dfa52d2c19ac3 Gerrit-Change-Number: 18795 Gerrit-PatchSet: 1 Gerrit-Owner: neels Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge Gerrit-MessageType: merged
Change in libosmocore[master]: osmo_bcd2str: also validate start_nibble parameter
laforge has posted comments on this change. ( https://gerrit.osmocom.org/c/libosmocore/+/18795 ) Change subject: osmo_bcd2str: also validate start_nibble parameter .. Patch Set 1: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/c/libosmocore/+/18795 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: libosmocore Gerrit-Branch: master Gerrit-Change-Id: Ied3c1e02c3a01d868e08195cbd8dfa52d2c19ac3 Gerrit-Change-Number: 18795 Gerrit-PatchSet: 1 Gerrit-Owner: neels Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge Gerrit-Comment-Date: Fri, 12 Jun 2020 14:51:49 + Gerrit-HasComments: No Gerrit-Has-Labels: Yes Gerrit-MessageType: comment
Change in osmo-gsm-tester[master]: test: Move duration time calculation to helper function
laforge has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-gsm-tester/+/18796 ) Change subject: test: Move duration time calculation to helper function .. Patch Set 1: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/c/osmo-gsm-tester/+/18796 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-gsm-tester Gerrit-Branch: master Gerrit-Change-Id: Ica2e7d92f37d18a4f8832f38d9f9f3baba8be09f Gerrit-Change-Number: 18796 Gerrit-PatchSet: 1 Gerrit-Owner: pespin Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge Gerrit-Comment-Date: Fri, 12 Jun 2020 14:51:35 + Gerrit-HasComments: No Gerrit-Has-Labels: Yes Gerrit-MessageType: comment
Change in libosmocore[master]: add osmo_mobile_identity API
laforge has posted comments on this change. ( https://gerrit.osmocom.org/c/libosmocore/+/18507 ) Change subject: add osmo_mobile_identity API .. Patch Set 9: Code-Review+1 -- To view, visit https://gerrit.osmocom.org/c/libosmocore/+/18507 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: libosmocore Gerrit-Branch: master Gerrit-Change-Id: Ic3f969e739654c1e8c387aedeeba5cce07fe2307 Gerrit-Change-Number: 18507 Gerrit-PatchSet: 9 Gerrit-Owner: neels Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: dexter Gerrit-Reviewer: fixeria Gerrit-Reviewer: laforge Gerrit-Reviewer: neels Gerrit-Reviewer: osmith Gerrit-Reviewer: pespin Gerrit-Comment-Date: Fri, 12 Jun 2020 14:51:09 + Gerrit-HasComments: No Gerrit-Has-Labels: Yes Gerrit-MessageType: comment
Change in libosmocore[master]: add osmo_mobile_identity API
neels has posted comments on this change. ( https://gerrit.osmocom.org/c/libosmocore/+/18507 ) Change subject: add osmo_mobile_identity API .. Patch Set 9: (1 comment) https://gerrit.osmocom.org/c/libosmocore/+/18507/7/src/utils.c File src/utils.c: https://gerrit.osmocom.org/c/libosmocore/+/18507/7/src/utils.c@194 PS7, Line 194: osmo_str2bcd > JFYI, we already have gsm48_decode_bcd_number2() doing something similar. […] actually gsm48_decode_bcd_number2() would be using osmo_bcd2str, not this function. But a difference there is the use of bcd_num_digits[] returning '0'-'9','*', '#', 'a', 'b', 'c', '\0', while osmo_bcd2str() returns digits '0'-'9', 'a'-'f' -- To view, visit https://gerrit.osmocom.org/c/libosmocore/+/18507 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: libosmocore Gerrit-Branch: master Gerrit-Change-Id: Ic3f969e739654c1e8c387aedeeba5cce07fe2307 Gerrit-Change-Number: 18507 Gerrit-PatchSet: 9 Gerrit-Owner: neels Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: dexter Gerrit-Reviewer: fixeria Gerrit-Reviewer: laforge Gerrit-Reviewer: neels Gerrit-Reviewer: osmith Gerrit-Reviewer: pespin Gerrit-Comment-Date: Fri, 12 Jun 2020 14:47:31 + Gerrit-HasComments: Yes Gerrit-Has-Labels: No Comment-In-Reply-To: fixeria Gerrit-MessageType: comment
Change in osmo-gsm-tester[master]: test: Move duration time calculation to helper function
pespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-gsm-tester/+/18796 ) Change subject: test: Move duration time calculation to helper function .. test: Move duration time calculation to helper function Change-Id: Ica2e7d92f37d18a4f8832f38d9f9f3baba8be09f --- M src/osmo_gsm_tester/core/test.py 1 file changed, 6 insertions(+), 2 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-gsm-tester refs/changes/96/18796/1 diff --git a/src/osmo_gsm_tester/core/test.py b/src/osmo_gsm_tester/core/test.py index 47e1f42..7347229 100644 --- a/src/osmo_gsm_tester/core/test.py +++ b/src/osmo_gsm_tester/core/test.py @@ -105,9 +105,13 @@ return '%s:%s' % (self._name, l) return super().name() +def elapsed_time(self): +'time elapsed since test was started' +return time.time() - self.start_timestamp + def set_fail(self, fail_type, fail_message, tb_str=None, src=4): self.status = Test.FAIL -self.duration = time.time() - self.start_timestamp +self.duration = self.elapsed_time() self.fail_type = fail_type self.fail_message = fail_message @@ -123,7 +127,7 @@ def set_pass(self): self.status = Test.PASS -self.duration = time.time() - self.start_timestamp +self.duration = self.elapsed_time() self.log('Test passed (%.1f sec)' % self.duration) def set_skip(self): -- To view, visit https://gerrit.osmocom.org/c/osmo-gsm-tester/+/18796 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-gsm-tester Gerrit-Branch: master Gerrit-Change-Id: Ica2e7d92f37d18a4f8832f38d9f9f3baba8be09f Gerrit-Change-Number: 18796 Gerrit-PatchSet: 1 Gerrit-Owner: pespin Gerrit-MessageType: newchange
Change in libosmocore[master]: osmo_bcd2str: also validate start_nibble parameter
neels has uploaded this change for review. ( https://gerrit.osmocom.org/c/libosmocore/+/18795 ) Change subject: osmo_bcd2str: also validate start_nibble parameter .. osmo_bcd2str: also validate start_nibble parameter If start_nibble were passed negative, we'd end up accessing invalid memory. Safeguard against that. Change-Id: Ied3c1e02c3a01d868e08195cbd8dfa52d2c19ac3 --- M src/utils.c 1 file changed, 1 insertion(+), 1 deletion(-) git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/95/18795/1 diff --git a/src/utils.c b/src/utils.c index 038288c..18e105f 100644 --- a/src/utils.c +++ b/src/utils.c @@ -154,7 +154,7 @@ int nibble_i; int rc = 0; - if (!dst || dst_size < 1) + if (!dst || dst_size < 1 || start_nibble < 0) return -ENOMEM; for (nibble_i = start_nibble; nibble_i < end_nibble && dst < dst_end; nibble_i++, dst++) { -- To view, visit https://gerrit.osmocom.org/c/libosmocore/+/18795 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: libosmocore Gerrit-Branch: master Gerrit-Change-Id: Ied3c1e02c3a01d868e08195cbd8dfa52d2c19ac3 Gerrit-Change-Number: 18795 Gerrit-PatchSet: 1 Gerrit-Owner: neels Gerrit-MessageType: newchange
Change in libosmocore[master]: add osmo_mobile_identity API
Hello dexter, fixeria, pespin, laforge, osmith, Jenkins Builder, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/libosmocore/+/18507 to look at the new patch set (#8). Change subject: add osmo_mobile_identity API .. add osmo_mobile_identity API Implement better API around 3GPP TS 24.008 Mobile Identity coding. struct osmo_mobile_identity is a decoded representation of the raw Mobile Identity, with a string representation as well as dedicated raw uint32_t TMSI. The aim is to remove all uncertainty about decoded buffer sizes / data types. I have patches ready for all osmo programs, completely replacing the Mobile Identity coding with this new API. Hence deprecate the old MI API. New API functions provide properly size-checking implementations of: - decoding a raw MI from a bunch of MI octets; - locating and decoding MI from a full 3GPP TS 24.008 Complete Layer 3 msgb; - encoding to a buffer; - encoding to the end of a msgb. Other than the old gsm48_generate_mid(), omit a TLV tag and length from encoding. Many callers manually stripped the tag and value after calling gsm48_generate_mid(). The aim is to leave writing a TL to the caller entirely, especially since some callers need to use a TvL, i.e. support a variable-size length of 8 or 16 bit. New validity checks so far not implemented anywhere else: - stricter validation of number of digits of IMSI, IMEI, IMEI-SV MI. - stricter on filler nibbles to be 0xf. Rationale: While implementing osmo-bsc's MSC pooling feature in osmo-bsc, this API will be used to reduce the number of times a Mobile Identity is extracted from a raw RSL message. Extracting the Mobile Identity from messages has numerous duplicate implementations across our code with various levels of specialization. https://xkcd.com/927/ To name a few: - libosmocore: gsm48_mi_to_string(), osmo_mi_name_buf() - osmo-bsc: extract_sub() - osmo-msc: mm_rx_loc_upd_req(), cm_serv_reuse_conn(), gsm48_rx_mm_serv_req(), vlr_proc_acc_req() We have existing functions to produce a human readable string from a Mobile Identity, more or less awkward: - gsm48_mi_to_string() decodes a TMSI as a decimal number. These days we use hexadecimal TMSI everywhere. - osmo_mi_name_buf() decodes the BCD digits from a raw MI every time, so we'd need to pass around the raw message bytes. Also, osmo_mi_name_buf() has the wrong signature, it should return a length like snprintf(). - osmo-bsc's extract_sub() first uses gsm48_mi_to_string() which encodes the raw uint32_t TMSI to a string, and then calls strtoul() via tmsi_from_string() to code those back to a raw uint32_t. Each of the above implementations employ their own size overflow checks, each invoke osmo_bcd2str() and implement their own TMSI osmo_load32be() handling. Too much code dup, let's hope that each and every one is correct. In osmo-bsc, I am now implementing MSC pooling, and need to extract NRI bits from a TMSI Mobile Identity. Since none of the above functions are general enough to be re-used, I found myself again copy-pasting Mobile Identity code: locating the MI in a 24.008 message with proper size checks, decoding MI octets. This time I would like it to become a generally re-usable API. Change-Id: Ic3f969e739654c1e8c387aedeeba5cce07fe2307 --- M include/osmocom/core/utils.h M include/osmocom/gsm/gsm48.h M src/gb/gprs_bssgp.c M src/gb/gprs_bssgp_bss.c M src/gsm/gsm0808.c M src/gsm/gsm29118.c M src/gsm/gsm48.c M src/gsm/libosmogsm.map M src/utils.c M tests/gsm0408/gsm0408_test.c M tests/gsm0408/gsm0408_test.ok M tests/utils/utils_test.c M tests/utils/utils_test.ok 13 files changed, 1,166 insertions(+), 151 deletions(-) git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/07/18507/8 -- To view, visit https://gerrit.osmocom.org/c/libosmocore/+/18507 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: libosmocore Gerrit-Branch: master Gerrit-Change-Id: Ic3f969e739654c1e8c387aedeeba5cce07fe2307 Gerrit-Change-Number: 18507 Gerrit-PatchSet: 8 Gerrit-Owner: neels Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: dexter Gerrit-Reviewer: fixeria Gerrit-Reviewer: laforge Gerrit-Reviewer: neels Gerrit-Reviewer: osmith Gerrit-Reviewer: pespin Gerrit-MessageType: newpatchset
Change in osmo-ttcn3-hacks[master]: bsc: add MSC pooling tests
pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/18763 ) Change subject: bsc: add MSC pooling tests .. Patch Set 4: Code-Review+1 -- To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/18763 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-ttcn3-hacks Gerrit-Branch: master Gerrit-Change-Id: I21cbab193cd0de2e5692665442eae113d5f61904 Gerrit-Change-Number: 18763 Gerrit-PatchSet: 4 Gerrit-Owner: neels Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: neels Gerrit-Reviewer: pespin Gerrit-Comment-Date: Fri, 12 Jun 2020 14:25:10 + Gerrit-HasComments: No Gerrit-Has-Labels: Yes Gerrit-MessageType: comment
Change in osmo-ttcn3-hacks[master]: bsc: allow multiple MSCs
pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/18760 ) Change subject: bsc: allow multiple MSCs .. Patch Set 4: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/18760 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-ttcn3-hacks Gerrit-Branch: master Gerrit-Change-Id: Ibb36695b7c31f7b04eec6c5d59522fc0779b3c2f Gerrit-Change-Number: 18760 Gerrit-PatchSet: 4 Gerrit-Owner: neels Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria Gerrit-Reviewer: laforge Gerrit-Reviewer: pespin Gerrit-Comment-Date: Fri, 12 Jun 2020 14:22:23 + Gerrit-HasComments: No Gerrit-Has-Labels: Yes Gerrit-MessageType: comment
Change in osmo-ttcn3-hacks[master]: bsc: add MSC pooling tests
Hello pespin, Jenkins Builder, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/18763 to look at the new patch set (#4). Change subject: bsc: add MSC pooling tests .. bsc: add MSC pooling tests The MSC pooling feature is implemented in osmo-bsc Ifbdea197b26e88751a391c8a80c41f04e7d5e047. A VTY command ('mscpool roundrobin next') that allows deterministic testing is added in I2155d906505a26744966f442ffb1e87a6a9b494c. osmo-bsc.cfg changes needed for these tests to succeed are in docker-playground I1986e4ef43beee161c82193694421b56136c1afe The new tests will fail until the above have been merged. Change-Id: I21cbab193cd0de2e5692665442eae113d5f61904 --- M bsc/BSC_Tests.ttcn M bsc/MSC_ConnectionHandler.ttcn M library/L3_Templates.ttcn 3 files changed, 609 insertions(+), 4 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/63/18763/4 -- To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/18763 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-ttcn3-hacks Gerrit-Branch: master Gerrit-Change-Id: I21cbab193cd0de2e5692665442eae113d5f61904 Gerrit-Change-Number: 18763 Gerrit-PatchSet: 4 Gerrit-Owner: neels Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: neels Gerrit-Reviewer: pespin Gerrit-MessageType: newpatchset
Change in osmo-ttcn3-hacks[master]: bsc: undup pars.sccp_addr_msc and _bsc
neels has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/18794 ) Change subject: bsc: undup pars.sccp_addr_msc and _bsc .. bsc: undup pars.sccp_addr_msc and _bsc Handover testing required passing MSC and BSC addresses to f_tc_* functions and added pars.handover.sccp_addr_msc and .handover.sccp_addr_bsc. MSC pool tests added a separate sub-record pars.mscpool which also contains these two fields. Move them both up one level, to form a single pair of pars.sccp_addr_msc and pars.sccp_addr_bsc. This eliminates the pars.handover sub-record. Change-Id: Iae81ca58001455099218ce769a97dc6402832490 --- M bsc/BSC_Tests.ttcn M bsc/MSC_ConnectionHandler.ttcn 2 files changed, 25 insertions(+), 32 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/94/18794/1 diff --git a/bsc/BSC_Tests.ttcn b/bsc/BSC_Tests.ttcn index 9d48d62..1d2d312 100644 --- a/bsc/BSC_Tests.ttcn +++ b/bsc/BSC_Tests.ttcn @@ -3313,7 +3313,7 @@ f_MscConnHdlr_init(g_pars.media_nr, "127.0.0.2", "127.0.0.3", FR_AMR); activate(as_Media()); - BSSAP.send(ts_BSSAP_Conn_Req(g_pars.handover.sccp_addr_bsc, g_pars.handover.sccp_addr_msc, + BSSAP.send(ts_BSSAP_Conn_Req(g_pars.sccp_addr_bsc, g_pars.sccp_addr_msc, f_gen_handover_req())); BSSAP.receive(RAN_Conn_Prim:MSC_CONN_PRIM_CONF_IND); @@ -3368,8 +3368,8 @@ f_init(1, true); f_sleep(1.0); - pars.handover.sccp_addr_msc := g_bssap[0].sccp_addr_own; - pars.handover.sccp_addr_bsc := g_bssap[0].sccp_addr_peer; + pars.sccp_addr_msc := g_bssap[0].sccp_addr_own; + pars.sccp_addr_bsc := g_bssap[0].sccp_addr_peer; vc_conn := f_start_handler(refers(f_tc_ho_into_this_bsc), pars); vc_conn.done; @@ -3385,7 +3385,7 @@ f_MscConnHdlr_init(g_pars.media_nr, "127.0.0.2", "127.0.0.3", FR_AMR); activate(as_Media()); - BSSAP.send(ts_BSSAP_Conn_Req(g_pars.handover.sccp_addr_bsc, g_pars.handover.sccp_addr_msc, + BSSAP.send(ts_BSSAP_Conn_Req(g_pars.sccp_addr_bsc, g_pars.sccp_addr_msc, f_gen_handover_req())); BSSAP.receive(RAN_Conn_Prim:MSC_CONN_PRIM_CONF_IND); @@ -3441,8 +3441,8 @@ f_init(1, true); f_sleep(1.0); - pars.handover.sccp_addr_msc := g_bssap[0].sccp_addr_own; - pars.handover.sccp_addr_bsc := g_bssap[0].sccp_addr_peer; + pars.sccp_addr_msc := g_bssap[0].sccp_addr_own; + pars.sccp_addr_bsc := g_bssap[0].sccp_addr_peer; vc_conn := f_start_handler(refers(f_tc_ho_in_fail_msc_clears), pars); vc_conn.done; @@ -3463,7 +3463,7 @@ f_MscConnHdlr_init(g_pars.media_nr, "127.0.0.2", "127.0.0.3", FR_AMR); activate(as_Media()); - BSSAP.send(ts_BSSAP_Conn_Req(g_pars.handover.sccp_addr_bsc, g_pars.handover.sccp_addr_msc, + BSSAP.send(ts_BSSAP_Conn_Req(g_pars.sccp_addr_bsc, g_pars.sccp_addr_msc, f_gen_handover_req())); BSSAP.receive(RAN_Conn_Prim:MSC_CONN_PRIM_CONF_IND); @@ -3521,8 +3521,8 @@ f_init(1, true); f_sleep(1.0); - pars.handover.sccp_addr_msc := g_bssap[0].sccp_addr_own; - pars.handover.sccp_addr_bsc := g_bssap[0].sccp_addr_peer; + pars.sccp_addr_msc := g_bssap[0].sccp_addr_own; + pars.sccp_addr_bsc := g_bssap[0].sccp_addr_peer; vc_conn := f_start_handler(refers(f_tc_ho_in_fail_msc_clears_after_ho_detect), pars); vc_conn.done; @@ -3539,7 +3539,7 @@ f_MscConnHdlr_init(g_pars.media_nr, "127.0.0.2", "127.0.0.3", FR_AMR); activate(as_Media()); - BSSAP.send(ts_BSSAP_Conn_Req(g_pars.handover.sccp_addr_bsc, g_pars.handover.sccp_addr_msc, + BSSAP.send(ts_BSSAP_Conn_Req(g_pars.sccp_addr_bsc, g_pars.sccp_addr_msc, f_gen_handover_req())); BSSAP.receive(RAN_Conn_Prim:MSC_CONN_PRIM_CONF_IND); @@ -3602,8 +3602,8 @@ f_init(1, true); f_sleep(1.0); - pars.handover.sccp_addr_msc := g_bssap[0].sccp_addr_own; - pars.handover.sccp_addr_bsc := g_bssap[0].sccp_addr_peer; + pars.sccp_addr_msc := g_bssap[0].sccp_addr_own; + pars.sccp_addr_bsc := g_bssap[0].sccp_addr_peer; vc_conn := f_start_handler(refers(f_tc_ho_in_fail_no_detect), pars); vc_conn.done; @@ -3620,7 +3620,7 @@ f_MscConnHdlr_init(g_pars.media_nr, "127.0.0.2", "127.0.0.3", FR_AMR); activate(as_Media()); - BSSAP.send(ts_BSSAP_Conn_Req(g_pars.handover.sccp_addr_bsc, g_pars.handover.sccp_addr_msc, + BSSAP.send(ts_BSSAP_Conn_Req(g_pars.sccp_addr_bsc, g_pars.sccp_addr_msc, f_gen_handover_req())); BSSAP.receive(RAN_Conn_Prim:MSC_CONN_PRIM_CONF_IND); @@ -3673,8 +3673,8 @@ f_init(1, true); f_sleep(1.0); - pars.handover.sccp_addr_msc :=
Change in osmo-ttcn3-hacks[master]: bsc: allow multiple MSCs
Hello fixeria, pespin, laforge, Jenkins Builder, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/18760 to look at the new patch set (#4). Change subject: bsc: allow multiple MSCs .. bsc: allow multiple MSCs Similar to the MSC tests, have several g_bssap and mp_bssap_cfg. Prepare for MSC pool tests. Replace g_bssap with a g_bssap[NUM_MSC] array. Replace mp_bssap_cfg with an mp_bssap_cfg[NUM_MSC] array. Requires patch I1986e4ef43beee161c82193694421b56136c1afe in docker-playground to match the new required BSC_Tests.cfg format. Related: OS#3682 Change-Id: Ibb36695b7c31f7b04eec6c5d59522fc0779b3c2f --- M bsc/BSC_Tests.ttcn M bsc/BSC_Tests_LCLS.ttcn M bsc/MSC_ConnectionHandler.ttcn 3 files changed, 119 insertions(+), 75 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/60/18760/4 -- To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/18760 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-ttcn3-hacks Gerrit-Branch: master Gerrit-Change-Id: Ibb36695b7c31f7b04eec6c5d59522fc0779b3c2f Gerrit-Change-Number: 18760 Gerrit-PatchSet: 4 Gerrit-Owner: neels Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria Gerrit-Reviewer: laforge Gerrit-Reviewer: pespin Gerrit-MessageType: newpatchset
Change in osmo-gsm-tester[master]: Remove all references to defaults: timeout: from suite.conf
pespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-gsm-tester/+/18793 ) Change subject: Remove all references to defaults: timeout: from suite.conf .. Remove all references to defaults: timeout: from suite.conf This feature is not really implemented and maybe never was. In any case, it makes sense to have that working per-test so we can specify different values per test in case it's needed. Change-Id: I3c1b95c10e974da87ec9abd25578d8bcc0bc55a3 --- M doc/examples/4g_srsLTE/suites/4g/suite.conf M doc/manuals/chapters/config.adoc M selftest/suite_test/suite_test.ok M selftest/suite_test/suitedirA/test_suite/suite.conf M selftest/suite_test/suitedirB/suiteB/suite.conf M selftest/suite_test/suitedirB/suiteC/suite.conf M src/osmo_gsm_tester/core/schema.py M sysmocom/suites/4g/suite.conf M sysmocom/suites/encryption/suite.conf M sysmocom/suites/nitb_debug/suite.conf M sysmocom/suites/nitb_netreg/suite.conf M sysmocom/suites/nitb_netreg_mass/suite.conf M sysmocom/suites/nitb_smpp/suite.conf M sysmocom/suites/nitb_sms/suite.conf M sysmocom/suites/nitb_ussd/suite.conf M sysmocom/suites/smpp/suite.conf 16 files changed, 1 insertion(+), 35 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-gsm-tester refs/changes/93/18793/1 diff --git a/doc/examples/4g_srsLTE/suites/4g/suite.conf b/doc/examples/4g_srsLTE/suites/4g/suite.conf index e439e99..0b0177a 100644 --- a/doc/examples/4g_srsLTE/suites/4g/suite.conf +++ b/doc/examples/4g_srsLTE/suites/4g/suite.conf @@ -8,5 +8,3 @@ features: - 4g -defaults: - timeout: 180s diff --git a/doc/manuals/chapters/config.adoc b/doc/manuals/chapters/config.adoc index b4e4a95..118f056 100644 --- a/doc/manuals/chapters/config.adoc +++ b/doc/manuals/chapters/config.adoc @@ -190,9 +190,6 @@ a_suite_test_foo: one_test_parameter_for_test_foo: 'str' another_test_parameter_for_test_foo: ['bool_str'] - -defaults: - timeout: 50s [[scenarios_dir]] @@ -647,9 +644,6 @@ <> file. Content in this section follows the <> schema. -//TODO: defaults.timeout should be change in code to be config.test_timeout or similar -//TODO: 'config' should be split into its own schema and validate defaults.conf - === Example Setup {app-name} comes with an example official setup which is the one used to run diff --git a/selftest/suite_test/suite_test.ok b/selftest/suite_test/suite_test.ok index 9c9f5cc..3264fe2 100644 --- a/selftest/suite_test/suite_test.ok +++ b/selftest/suite_test/suite_test.ok @@ -15,8 +15,6 @@ cnf [PATH]/selftest/suite_test/suitedirA/empty_dir/suite.conf: ERR: FileNotFoundError: [Errno 2] No such file or directory: '[PATH]/selftest/suite_test/suitedirA/empty_dir/suite.conf' [empty_dir↪[PATH]/selftest/suite_test/suitedirA/empty_dir/suite.conf] - valid suite dir cnf test_suite: DBG: reading suite.conf -defaults: - timeout: 60s resources: bts: - label: sysmoCell 5000 diff --git a/selftest/suite_test/suitedirA/test_suite/suite.conf b/selftest/suite_test/suitedirA/test_suite/suite.conf index 4b70be8..ff4899a 100644 --- a/selftest/suite_test/suitedirA/test_suite/suite.conf +++ b/selftest/suite_test/suitedirA/test_suite/suite.conf @@ -15,5 +15,3 @@ one_bool_parameter: 'bool_str' second_list_parameter: ['uint'] -defaults: - timeout: 60s diff --git a/selftest/suite_test/suitedirB/suiteB/suite.conf b/selftest/suite_test/suitedirB/suiteB/suite.conf index 3645cd9..a4d0951 100644 --- a/selftest/suite_test/suitedirB/suiteB/suite.conf +++ b/selftest/suite_test/suitedirB/suiteB/suite.conf @@ -1,4 +1,2 @@ resources: -defaults: - timeout: 60s diff --git a/selftest/suite_test/suitedirB/suiteC/suite.conf b/selftest/suite_test/suitedirB/suiteC/suite.conf index 44be3fc..33639a1 100644 --- a/selftest/suite_test/suitedirB/suiteC/suite.conf +++ b/selftest/suite_test/suitedirB/suiteC/suite.conf @@ -2,5 +2,3 @@ ip_address: - addr: 10.42.42.2 # stp -defaults: - timeout: 60s diff --git a/src/osmo_gsm_tester/core/schema.py b/src/osmo_gsm_tester/core/schema.py index 70b4c8c..9a346cd 100644 --- a/src/osmo_gsm_tester/core/schema.py +++ b/src/osmo_gsm_tester/core/schema.py @@ -430,7 +430,7 @@ global _ALL_SCHEMA if _ALL_SCHEMA is None: want_schema = get_want_schema() -_ALL_SCHEMA = util.dict_add({ 'defaults.timeout': STR }, +_ALL_SCHEMA = util.dict_add( dict([('config.%s' % key, val) for key, val in _CONFIG_SCHEMA.items()]), dict([('resources.%s' % key, val) for key, val in want_schema.items()]), dict([('modifiers.%s' % key, val) for key, val in want_schema.items()])) diff --git a/sysmocom/suites/4g/suite.conf b/sysmocom/suites/4g/suite.conf index fbd81b6..49031a2 100644 --- a/sysmocom/suites/4g/suite.conf +++ b/sysmocom/suites/4g/suite.conf @@ -13,5 +13,3 @@ duration: 'duration' threshold: 'uint'
Change in osmo-gsm-tester[master]: iperf3: Fix iperf3cli.launch_sync() when configured to run more than ...
pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-gsm-tester/+/18792 ) Change subject: iperf3: Fix iperf3cli.launch_sync() when configured to run more than 300 sec .. Patch Set 1: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/c/osmo-gsm-tester/+/18792 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-gsm-tester Gerrit-Branch: master Gerrit-Change-Id: I7f6c5078f648013515919aa35ebcdb3ef157b5e4 Gerrit-Change-Number: 18792 Gerrit-PatchSet: 1 Gerrit-Owner: pespin Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: pespin Gerrit-Comment-Date: Fri, 12 Jun 2020 14:02:02 + Gerrit-HasComments: No Gerrit-Has-Labels: Yes Gerrit-MessageType: comment
Change in osmo-gsm-tester[master]: iperf3: Fix iperf3cli.launch_sync() when configured to run more than ...
pespin has submitted this change. ( https://gerrit.osmocom.org/c/osmo-gsm-tester/+/18792 ) Change subject: iperf3: Fix iperf3cli.launch_sync() when configured to run more than 300 sec .. iperf3: Fix iperf3cli.launch_sync() when configured to run more than 300 sec process object always used timeout=300 while runnig wth launch_sync(). Let's allow replacing that value beforehand so that iperf3 can pre-configure the process object and caller doesn't need to care about calculating expected time. Change-Id: I7f6c5078f648013515919aa35ebcdb3ef157b5e4 --- M src/osmo_gsm_tester/core/process.py M src/osmo_gsm_tester/obj/iperf3.py 2 files changed, 14 insertions(+), 3 deletions(-) Approvals: Jenkins Builder: Verified pespin: Looks good to me, approved diff --git a/src/osmo_gsm_tester/core/process.py b/src/osmo_gsm_tester/core/process.py index 8954674..1823a20 100644 --- a/src/osmo_gsm_tester/core/process.py +++ b/src/osmo_gsm_tester/core/process.py @@ -125,11 +125,14 @@ class Process(log.Origin): +DEFAULT_WAIT_TIMEOUT = 300 # seconds + def __init__(self, name, run_dir, popen_args, **popen_kwargs): super().__init__(log.C_RUN, name) self.process_obj = None self.result = None self.killed = None +self.default_wait_timeout = Process.DEFAULT_WAIT_TIMEOUT self.name_str = name self.run_dir = run_dir self.popen_args = popen_args @@ -143,6 +146,10 @@ env[key] = value self.popen_kwargs['env'] = env +def set_default_wait_timeout(self, timeout): +assert timeout +self.default_wait_timeout = timeout + def make_output_log(self, name): ''' create a non-existing log output file in run_dir to pipe stdout and @@ -346,7 +353,9 @@ self.poll() return self.result is not None -def wait(self, timeout=300): +def wait(self, timeout=None): +if timeout is None: +timeout = self.default_wait_timeout MainLoop.wait(self.terminated, timeout=timeout) def stdin_write(self, cmd): diff --git a/src/osmo_gsm_tester/obj/iperf3.py b/src/osmo_gsm_tester/obj/iperf3.py index 70fceff..ee62159 100644 --- a/src/osmo_gsm_tester/obj/iperf3.py +++ b/src/osmo_gsm_tester/obj/iperf3.py @@ -247,9 +247,11 @@ self.run_dir = util.Dir(self.testenv.test().get_run_dir().new_dir(self.name())) self.log_file = self.run_dir.new_file(IPerf3Client.LOGFILE) if self.runs_locally(): -return self.prepare_test_proc_locally(dir, netns, time_sec, proto == IPerf3Client.PROTO_UDP, bitrate) +proc = self.prepare_test_proc_locally(dir, netns, time_sec, proto == IPerf3Client.PROTO_UDP, bitrate) else: -return self.prepare_test_proc_remotely(dir, netns, time_sec, proto == IPerf3Client.PROTO_UDP, bitrate) +proc = self.prepare_test_proc_remotely(dir, netns, time_sec, proto == IPerf3Client.PROTO_UDP, bitrate) +proc.set_default_wait_timeout(time_sec + 10) # leave 10 extra sec for remote run, ctrl conn establishment, etc. +return proc def prepare_test_proc_remotely(self, dir, netns, time_sec, use_udp, bitrate): self.rem_host = remote.RemoteHost(self.run_dir, self._run_node.ssh_user(), self._run_node.ssh_addr()) -- To view, visit https://gerrit.osmocom.org/c/osmo-gsm-tester/+/18792 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-gsm-tester Gerrit-Branch: master Gerrit-Change-Id: I7f6c5078f648013515919aa35ebcdb3ef157b5e4 Gerrit-Change-Number: 18792 Gerrit-PatchSet: 1 Gerrit-Owner: pespin Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: pespin Gerrit-MessageType: merged
Change in osmo-gsm-tester[master]: iperf3: Fix iperf3cli.launch_sync() when configured to run more than ...
pespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-gsm-tester/+/18792 ) Change subject: iperf3: Fix iperf3cli.launch_sync() when configured to run more than 300 sec .. iperf3: Fix iperf3cli.launch_sync() when configured to run more than 300 sec process object always used timeout=300 while runnig wth launch_sync(). Let's allow replacing that value beforehand so that iperf3 can pre-configure the process object and caller doesn't need to care about calculating expected time. Change-Id: I7f6c5078f648013515919aa35ebcdb3ef157b5e4 --- M src/osmo_gsm_tester/core/process.py M src/osmo_gsm_tester/obj/iperf3.py 2 files changed, 14 insertions(+), 3 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-gsm-tester refs/changes/92/18792/1 diff --git a/src/osmo_gsm_tester/core/process.py b/src/osmo_gsm_tester/core/process.py index 8954674..1823a20 100644 --- a/src/osmo_gsm_tester/core/process.py +++ b/src/osmo_gsm_tester/core/process.py @@ -125,11 +125,14 @@ class Process(log.Origin): +DEFAULT_WAIT_TIMEOUT = 300 # seconds + def __init__(self, name, run_dir, popen_args, **popen_kwargs): super().__init__(log.C_RUN, name) self.process_obj = None self.result = None self.killed = None +self.default_wait_timeout = Process.DEFAULT_WAIT_TIMEOUT self.name_str = name self.run_dir = run_dir self.popen_args = popen_args @@ -143,6 +146,10 @@ env[key] = value self.popen_kwargs['env'] = env +def set_default_wait_timeout(self, timeout): +assert timeout +self.default_wait_timeout = timeout + def make_output_log(self, name): ''' create a non-existing log output file in run_dir to pipe stdout and @@ -346,7 +353,9 @@ self.poll() return self.result is not None -def wait(self, timeout=300): +def wait(self, timeout=None): +if timeout is None: +timeout = self.default_wait_timeout MainLoop.wait(self.terminated, timeout=timeout) def stdin_write(self, cmd): diff --git a/src/osmo_gsm_tester/obj/iperf3.py b/src/osmo_gsm_tester/obj/iperf3.py index 70fceff..ee62159 100644 --- a/src/osmo_gsm_tester/obj/iperf3.py +++ b/src/osmo_gsm_tester/obj/iperf3.py @@ -247,9 +247,11 @@ self.run_dir = util.Dir(self.testenv.test().get_run_dir().new_dir(self.name())) self.log_file = self.run_dir.new_file(IPerf3Client.LOGFILE) if self.runs_locally(): -return self.prepare_test_proc_locally(dir, netns, time_sec, proto == IPerf3Client.PROTO_UDP, bitrate) +proc = self.prepare_test_proc_locally(dir, netns, time_sec, proto == IPerf3Client.PROTO_UDP, bitrate) else: -return self.prepare_test_proc_remotely(dir, netns, time_sec, proto == IPerf3Client.PROTO_UDP, bitrate) +proc = self.prepare_test_proc_remotely(dir, netns, time_sec, proto == IPerf3Client.PROTO_UDP, bitrate) +proc.set_default_wait_timeout(time_sec + 10) # leave 10 extra sec for remote run, ctrl conn establishment, etc. +return proc def prepare_test_proc_remotely(self, dir, netns, time_sec, use_udp, bitrate): self.rem_host = remote.RemoteHost(self.run_dir, self._run_node.ssh_user(), self._run_node.ssh_addr()) -- To view, visit https://gerrit.osmocom.org/c/osmo-gsm-tester/+/18792 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-gsm-tester Gerrit-Branch: master Gerrit-Change-Id: I7f6c5078f648013515919aa35ebcdb3ef157b5e4 Gerrit-Change-Number: 18792 Gerrit-PatchSet: 1 Gerrit-Owner: pespin Gerrit-MessageType: newchange
Change in osmo-ttcn3-hacks[master]: move type RAN_Configurations to RAN_Adapter.ttcnpp
pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/18759 ) Change subject: move type RAN_Configurations to RAN_Adapter.ttcnpp .. Patch Set 3: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/18759 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-ttcn3-hacks Gerrit-Branch: master Gerrit-Change-Id: If8f7fd50a88302af645ab337a907d8f0ad79a306 Gerrit-Change-Number: 18759 Gerrit-PatchSet: 3 Gerrit-Owner: neels Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria Gerrit-Reviewer: laforge Gerrit-Reviewer: pespin Gerrit-Comment-Date: Fri, 12 Jun 2020 13:39:31 + Gerrit-HasComments: No Gerrit-Has-Labels: Yes Gerrit-MessageType: comment
Change in osmo-ttcn3-hacks[master]: bsc: add MSC pooling tests
pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/18763 ) Change subject: bsc: add MSC pooling tests .. Patch Set 3: (1 comment) https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/18763/1/bsc/BSC_Tests.ttcn File bsc/BSC_Tests.ttcn: https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/18763/1/bsc/BSC_Tests.ttcn@4490 PS1, Line 4490: private function f_perform_clear_on_RSL1() runs on MSC_ConnHdlr { > I sure tried that. If you can show me how to pass a port as parameter I'll be > happy to comply. There's plenty of examples in library. Check for instance: """ function f_rtpem_connect(RTPEM_CTRL_PT pt, in HostName remote_host, in PortNumber remote_port) { pt.call(RTPEM_connect:{remote_host, remote_port}) { [] pt.getreply(RTPEM_connect:{remote_host, remote_port}) {}; } } """ -- To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/18763 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-ttcn3-hacks Gerrit-Branch: master Gerrit-Change-Id: I21cbab193cd0de2e5692665442eae113d5f61904 Gerrit-Change-Number: 18763 Gerrit-PatchSet: 3 Gerrit-Owner: neels Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: neels Gerrit-Reviewer: pespin Gerrit-Comment-Date: Fri, 12 Jun 2020 13:38:57 + Gerrit-HasComments: Yes Gerrit-Has-Labels: No Comment-In-Reply-To: pespin Comment-In-Reply-To: neels Gerrit-MessageType: comment
Change in osmo-ttcn3-hacks[master]: bsc: add MSC pooling tests
Hello pespin, Jenkins Builder, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/18763 to look at the new patch set (#3). Change subject: bsc: add MSC pooling tests .. bsc: add MSC pooling tests The MSC pooling feature is implemented in osmo-bsc Ifbdea197b26e88751a391c8a80c41f04e7d5e047. A VTY command ('mscpool roundrobin next') that allows deterministic testing is added in I2155d906505a26744966f442ffb1e87a6a9b494c. osmo-bsc.cfg changes needed for these tests to succeed are in docker-playground I1986e4ef43beee161c82193694421b56136c1afe The new tests will fail until the above have been merged. Change-Id: I21cbab193cd0de2e5692665442eae113d5f61904 --- M bsc/BSC_Tests.ttcn M bsc/MSC_ConnectionHandler.ttcn M library/L3_Templates.ttcn 3 files changed, 804 insertions(+), 3 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/63/18763/3 -- To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/18763 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-ttcn3-hacks Gerrit-Branch: master Gerrit-Change-Id: I21cbab193cd0de2e5692665442eae113d5f61904 Gerrit-Change-Number: 18763 Gerrit-PatchSet: 3 Gerrit-Owner: neels Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: neels Gerrit-Reviewer: pespin Gerrit-MessageType: newpatchset
Change in osmo-ttcn3-hacks[master]: move type RAN_Configurations to RAN_Adapter.ttcnpp
Hello fixeria, pespin, laforge, Jenkins Builder, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/18759 to look at the new patch set (#3). Change subject: move type RAN_Configurations to RAN_Adapter.ttcnpp .. move type RAN_Configurations to RAN_Adapter.ttcnpp So far used only in MSC_Tests.ttcn, but soon to be used also in BSC_Tests.ttcn. Change-Id: If8f7fd50a88302af645ab337a907d8f0ad79a306 --- M library/RAN_Adapter.ttcnpp M msc/MSC_Tests.ttcn 2 files changed, 1 insertion(+), 1 deletion(-) git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/59/18759/3 -- To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/18759 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-ttcn3-hacks Gerrit-Branch: master Gerrit-Change-Id: If8f7fd50a88302af645ab337a907d8f0ad79a306 Gerrit-Change-Number: 18759 Gerrit-PatchSet: 3 Gerrit-Owner: neels Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria Gerrit-Reviewer: laforge Gerrit-Reviewer: pespin Gerrit-MessageType: newpatchset
Change in osmo-ttcn3-hacks[master]: bsc: allow multiple MSCs
Hello fixeria, pespin, laforge, Jenkins Builder, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/18760 to look at the new patch set (#3). Change subject: bsc: allow multiple MSCs .. bsc: allow multiple MSCs Similar to the MSC tests, have several g_bssap and mp_bssap_cfg. Prepare for MSC pool tests. Replace g_bssap with a g_bssap[NUM_MSC] array. Replace mp_bssap_cfg with an mp_bssap_cfg[NUM_MSC] array. Requires patch I1986e4ef43beee161c82193694421b56136c1afe in docker-playground to match the new required BSC_Tests.cfg format. Related: OS#3682 Change-Id: Ibb36695b7c31f7b04eec6c5d59522fc0779b3c2f --- M bsc/BSC_Tests.ttcn M bsc/BSC_Tests_LCLS.ttcn M bsc/MSC_ConnectionHandler.ttcn 3 files changed, 119 insertions(+), 75 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/60/18760/3 -- To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/18760 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-ttcn3-hacks Gerrit-Branch: master Gerrit-Change-Id: Ibb36695b7c31f7b04eec6c5d59522fc0779b3c2f Gerrit-Change-Number: 18760 Gerrit-PatchSet: 3 Gerrit-Owner: neels Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria Gerrit-Reviewer: laforge Gerrit-Reviewer: pespin Gerrit-MessageType: newpatchset
Change in osmo-ttcn3-hacks[master]: bsc: add MSC pooling tests
neels has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/18763 ) Change subject: bsc: add MSC pooling tests .. Patch Set 2: (2 comments) https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/18763/1/bsc/BSC_Tests.ttcn File bsc/BSC_Tests.ttcn: https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/18763/1/bsc/BSC_Tests.ttcn@4461 PS1, Line 4461: return int2oct( oct2int('4223'O) + bit2int( (int2bit(nri_v, 32) << ( 24 - nri_bitlen)) ), > You are missing using base_tmsi instead of hardcoded value here. oof! https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/18763/1/bsc/BSC_Tests.ttcn@4490 PS1, Line 4490: private function f_perform_clear_on_RSL1() runs on MSC_ConnHdlr { > Merge RSL1 and RSL2 functions, simply pass the port as a parameter. I sure tried that. If you can show me how to pass a port as parameter I'll be happy to comply. -- To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/18763 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-ttcn3-hacks Gerrit-Branch: master Gerrit-Change-Id: I21cbab193cd0de2e5692665442eae113d5f61904 Gerrit-Change-Number: 18763 Gerrit-PatchSet: 2 Gerrit-Owner: neels Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: neels Gerrit-Reviewer: pespin Gerrit-Comment-Date: Fri, 12 Jun 2020 13:32:16 + Gerrit-HasComments: Yes Gerrit-Has-Labels: No Comment-In-Reply-To: pespin Gerrit-MessageType: comment
Change in osmo-ttcn3-hacks[master]: RSL_Emulation: fix rx of tr_RSL_PAGING_CMD()
neels has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/18761 ) Change subject: RSL_Emulation: fix rx of tr_RSL_PAGING_CMD() .. Patch Set 2: (1 comment) https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/18761/1/library/RSL_Emulation.ttcn File library/RSL_Emulation.ttcn: https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/18761/1/library/RSL_Emulation.ttcn@551 PS1, Line 551: if (ispresent(ConnectionTable[i].comp_ref) and ConnectionTable[i].comp_ref != null) { > Is this ispresent() really needed? I think they may have been an error here > and the same thing you a […] I was also thinking about this aspect and decided that simply checking both is safest and least effort to fix the problem ATM. -- To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/18761 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-ttcn3-hacks Gerrit-Branch: master Gerrit-Change-Id: Iaf7730153a3a19e448a33298c3e12212a55929d5 Gerrit-Change-Number: 18761 Gerrit-PatchSet: 2 Gerrit-Owner: neels Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria Gerrit-Reviewer: laforge Gerrit-Reviewer: neels Gerrit-CC: pespin Gerrit-Comment-Date: Fri, 12 Jun 2020 13:27:27 + Gerrit-HasComments: Yes Gerrit-Has-Labels: No Comment-In-Reply-To: pespin Gerrit-MessageType: comment
Change in osmo-bts[master]: abis.c: Grab reference to e1inp_line_get if already created
Hello daniel, neels, Jenkins Builder, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/c/osmo-bts/+/18732 to look at the new patch set (#2). Change subject: abis.c: Grab reference to e1inp_line_get if already created .. abis.c: Grab reference to e1inp_line_get if already created Since we are returning the pointer, it should always be grabbing a reference (find doesn't do it). In practice it's not much important since it is always created and not found. Change-Id: Ib84636663be2df33d497131c780b010b57f17e32 --- M src/common/abis.c 1 file changed, 4 insertions(+), 2 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-bts refs/changes/32/18732/2 -- To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/18732 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bts Gerrit-Branch: master Gerrit-Change-Id: Ib84636663be2df33d497131c780b010b57f17e32 Gerrit-Change-Number: 18732 Gerrit-PatchSet: 2 Gerrit-Owner: pespin Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: daniel Gerrit-Reviewer: neels Gerrit-Reviewer: pespin Gerrit-MessageType: newpatchset
Change in osmo-mgw[master]: trunk: parse E1 trunk number
neels has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-mgw/+/18752 ) Change subject: trunk: parse E1 trunk number .. Patch Set 2: (1 comment) https://gerrit.osmocom.org/c/osmo-mgw/+/18752/2/src/libosmo-mgcp/mgcp_trunk.c File src/libosmo-mgcp/mgcp_trunk.c: https://gerrit.osmocom.org/c/osmo-mgw/+/18752/2/src/libosmo-mgcp/mgcp_trunk.c@138 PS2, Line 138: prefix_len = sizeof(MGCP_ENDPOINT_PREFIX_E1_TRUNK) - 1; > I guess that's perfectly fine, since a string constant is simply a array of > chars with length known […] yes (the atoi() below is my -1 reason) -- To view, visit https://gerrit.osmocom.org/c/osmo-mgw/+/18752 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-mgw Gerrit-Branch: master Gerrit-Change-Id: Ifdaab953544151e73b58cc3e95d21afdb40765f4 Gerrit-Change-Number: 18752 Gerrit-PatchSet: 2 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: neels Gerrit-CC: pespin Gerrit-Comment-Date: Fri, 12 Jun 2020 13:16:02 + Gerrit-HasComments: Yes Gerrit-Has-Labels: No Comment-In-Reply-To: pespin Comment-In-Reply-To: neels Gerrit-MessageType: comment
Change in osmo-gsm-tester[master]: rfemu: add max attenuation getter
pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-gsm-tester/+/18791 ) Change subject: rfemu: add max attenuation getter .. Patch Set 1: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/c/osmo-gsm-tester/+/18791 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-gsm-tester Gerrit-Branch: master Gerrit-Change-Id: I35f7cb188790c59bbf2450f78c663fbc9440e406 Gerrit-Change-Number: 18791 Gerrit-PatchSet: 1 Gerrit-Owner: srs_andre Gerrit-Reviewer: pespin Gerrit-Comment-Date: Fri, 12 Jun 2020 13:15:01 + Gerrit-HasComments: No Gerrit-Has-Labels: Yes Gerrit-MessageType: comment
Change in osmo-gsm-tester[master]: epc: add method to call process on EPC in a non-blocking fashion
pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-gsm-tester/+/18789 ) Change subject: epc: add method to call process on EPC in a non-blocking fashion .. Patch Set 1: Code-Review-1 (1 comment) https://gerrit.osmocom.org/c/osmo-gsm-tester/+/18789/1/src/osmo_gsm_tester/obj/epc.py File src/osmo_gsm_tester/obj/epc.py: https://gerrit.osmocom.org/c/osmo-gsm-tester/+/18789/1/src/osmo_gsm_tester/obj/epc.py@79 PS1, Line 79: def run_wait(self, name, popen_args, sync=True): Better simply return the proc object to the test and use whatever you want there. Feel free to rename it to "prepare_process" or alike. -- To view, visit https://gerrit.osmocom.org/c/osmo-gsm-tester/+/18789 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-gsm-tester Gerrit-Branch: master Gerrit-Change-Id: Ia6372e55a8829f722e40db537d9dfd63a94d1be9 Gerrit-Change-Number: 18789 Gerrit-PatchSet: 1 Gerrit-Owner: srs_andre Gerrit-Reviewer: pespin Gerrit-CC: Jenkins Builder Gerrit-Comment-Date: Fri, 12 Jun 2020 13:13:36 + Gerrit-HasComments: Yes Gerrit-Has-Labels: Yes Gerrit-MessageType: comment
Change in docker-playground[master]: debian-stretch-jenkins/Dockerfile: Install source-highlight
neels has posted comments on this change. ( https://gerrit.osmocom.org/c/docker-playground/+/18771 ) Change subject: debian-stretch-jenkins/Dockerfile: Install source-highlight .. Patch Set 1: so what's the effect, colored source snippets? (IMHO we don't need formatting in the source snippets) -- To view, visit https://gerrit.osmocom.org/c/docker-playground/+/18771 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: docker-playground Gerrit-Branch: master Gerrit-Change-Id: I8427179f7cfc0c9150e5327803ca89adffedb8f1 Gerrit-Change-Number: 18771 Gerrit-PatchSet: 1 Gerrit-Owner: pespin Gerrit-Reviewer: daniel Gerrit-Reviewer: neels Gerrit-Reviewer: pespin Gerrit-Comment-Date: Fri, 12 Jun 2020 13:12:32 + Gerrit-HasComments: No Gerrit-Has-Labels: No Gerrit-MessageType: comment
Change in osmo-gsm-tester[master]: enb_amarisoft: fix typo
pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-gsm-tester/+/18790 ) Change subject: enb_amarisoft: fix typo .. Patch Set 1: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/c/osmo-gsm-tester/+/18790 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-gsm-tester Gerrit-Branch: master Gerrit-Change-Id: Ie898da5eae10af96c2bca6c2413bdff4a5160e9f Gerrit-Change-Number: 18790 Gerrit-PatchSet: 1 Gerrit-Owner: srs_andre Gerrit-Reviewer: pespin Gerrit-Comment-Date: Fri, 12 Jun 2020 13:11:39 + Gerrit-HasComments: No Gerrit-Has-Labels: Yes Gerrit-MessageType: comment
Change in osmo-gsm-tester[master]: enb_amarisoft: fix typo
srs_andre has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-gsm-tester/+/18790 ) Change subject: enb_amarisoft: fix typo .. enb_amarisoft: fix typo Change-Id: Ie898da5eae10af96c2bca6c2413bdff4a5160e9f --- M src/osmo_gsm_tester/obj/enb_amarisoft.py 1 file changed, 1 insertion(+), 1 deletion(-) git pull ssh://gerrit.osmocom.org:29418/osmo-gsm-tester refs/changes/90/18790/1 diff --git a/src/osmo_gsm_tester/obj/enb_amarisoft.py b/src/osmo_gsm_tester/obj/enb_amarisoft.py index f6f2cb0..8b4ecae 100644 --- a/src/osmo_gsm_tester/obj/enb_amarisoft.py +++ b/src/osmo_gsm_tester/obj/enb_amarisoft.py @@ -223,7 +223,7 @@ if cell_list is None or len(cell_list) < cell + 1: raise log.Error('cell_list attribute or subitem not found!') rfemu_cfg = cell_list[cell].get('dl_rfemu', None) -if rfemu_cfg is None: # craft amarisfot by default: +if rfemu_cfg is None: # craft amarisoft by default: rfemu_cfg = {'type': 'amarisoftctl', 'addr': self.addr(), 'ports': [9001] -- To view, visit https://gerrit.osmocom.org/c/osmo-gsm-tester/+/18790 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-gsm-tester Gerrit-Branch: master Gerrit-Change-Id: Ie898da5eae10af96c2bca6c2413bdff4a5160e9f Gerrit-Change-Number: 18790 Gerrit-PatchSet: 1 Gerrit-Owner: srs_andre Gerrit-MessageType: newchange
Change in osmo-bts[master]: abis.c: Grab reference to e1inp_line_get if already created
neels has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-bts/+/18732 ) Change subject: abis.c: Grab reference to e1inp_line_get if already created .. Patch Set 1: Code-Review+2 (1 comment) https://gerrit.osmocom.org/c/osmo-bts/+/18732/1/src/common/abis.c File src/common/abis.c: https://gerrit.osmocom.org/c/osmo-bts/+/18732/1/src/common/abis.c@284 PS1, Line 284: e1inp_line_get(line); /* We want a new reference for returned line*/ (whitespace) -- To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/18732 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bts Gerrit-Branch: master Gerrit-Change-Id: Ib84636663be2df33d497131c780b010b57f17e32 Gerrit-Change-Number: 18732 Gerrit-PatchSet: 1 Gerrit-Owner: pespin Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: daniel Gerrit-Reviewer: neels Gerrit-Reviewer: pespin Gerrit-Comment-Date: Fri, 12 Jun 2020 13:10:51 + Gerrit-HasComments: Yes Gerrit-Has-Labels: Yes Gerrit-MessageType: comment
Change in osmo-gsm-tester[master]: rfemu: add max attenuation getter
srs_andre has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-gsm-tester/+/18791 ) Change subject: rfemu: add max attenuation getter .. rfemu: add max attenuation getter this allows to query the maximum channel attenuation from within a test case Change-Id: I35f7cb188790c59bbf2450f78c663fbc9440e406 --- M src/osmo_gsm_tester/obj/rfemu.py M src/osmo_gsm_tester/obj/rfemu_amarisoftctrl.py M src/osmo_gsm_tester/obj/rfemu_minicircuits.py 3 files changed, 11 insertions(+), 0 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-gsm-tester refs/changes/91/18791/1 diff --git a/src/osmo_gsm_tester/obj/rfemu.py b/src/osmo_gsm_tester/obj/rfemu.py index b2add6b..ac34ee1 100644 --- a/src/osmo_gsm_tester/obj/rfemu.py +++ b/src/osmo_gsm_tester/obj/rfemu.py @@ -39,6 +39,11 @@ """Set attenuation in dB on the configured channel""" pass +@abstractmethod +def get_max_attenuation(self): +"""Get maximum channel attenuation""" +pass + def get_instance_by_type(rfemu_type, rfemu_opt): """Allocate a RFemulation child class based on type. Opts are passed to the newly created object.""" if rfemu_type == 'amarisoftctl': diff --git a/src/osmo_gsm_tester/obj/rfemu_amarisoftctrl.py b/src/osmo_gsm_tester/obj/rfemu_amarisoftctrl.py index 6ef25bb..17aa43a 100644 --- a/src/osmo_gsm_tester/obj/rfemu_amarisoftctrl.py +++ b/src/osmo_gsm_tester/obj/rfemu_amarisoftctrl.py @@ -59,5 +59,7 @@ result = self.ws.recv() self.dbg('Received CTRL msg: "%s"' % result) +def get_max_attenuation(self): +return 200 # maximum cell_gain value in Amarisoft # vim: expandtab tabstop=4 shiftwidth=4 diff --git a/src/osmo_gsm_tester/obj/rfemu_minicircuits.py b/src/osmo_gsm_tester/obj/rfemu_minicircuits.py index eea3a0e..6214040 100644 --- a/src/osmo_gsm_tester/obj/rfemu_minicircuits.py +++ b/src/osmo_gsm_tester/obj/rfemu_minicircuits.py @@ -64,4 +64,8 @@ self.dbg('Received response: "%s"' % data_str) if data_str != '1': raise log.Error('Mini-circuits attenuation device returned failure! %s' & data_str) + +def get_max_attenuation(self): +return 95 # Maximum value of the Mini-Circuits RC4DAT-6G-95 + # vim: expandtab tabstop=4 shiftwidth=4 -- To view, visit https://gerrit.osmocom.org/c/osmo-gsm-tester/+/18791 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-gsm-tester Gerrit-Branch: master Gerrit-Change-Id: I35f7cb188790c59bbf2450f78c663fbc9440e406 Gerrit-Change-Number: 18791 Gerrit-PatchSet: 1 Gerrit-Owner: srs_andre Gerrit-MessageType: newchange
Change in osmo-gsm-tester[master]: epc: add method to call process on EPC in a non-blocking fashion
srs_andre has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-gsm-tester/+/18789 ) Change subject: epc: add method to call process on EPC in a non-blocking fashion .. epc: add method to call process on EPC in a non-blocking fashion this allows to send mt pings from the EPC while doing other stuff in the background, controlling the rfemu for example Change-Id: Ia6372e55a8829f722e40db537d9dfd63a94d1be9 --- M src/osmo_gsm_tester/obj/epc.py 1 file changed, 11 insertions(+), 3 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-gsm-tester refs/changes/89/18789/1 diff --git a/src/osmo_gsm_tester/obj/epc.py b/src/osmo_gsm_tester/obj/epc.py index dfeba74..4681d5f 100644 --- a/src/osmo_gsm_tester/obj/epc.py +++ b/src/osmo_gsm_tester/obj/epc.py @@ -76,15 +76,23 @@ return epc_class(testenv, run_node) -def run_wait(self, name, popen_args): -''' Execute process on EPC node, useful for MT traffic ''' +def run_wait(self, name, popen_args, sync=True): +''' Execute process on EPC node, useful for MT traffic, blocking version ''' if self._run_node.is_local(): proc = process.Process(name, self.run_dir, popen_args) else: proc = self.rem_host.RemoteProcess(name, popen_args) -proc.launch_sync() + +if sync: +proc.launch_sync() +else: +proc.launch() return proc +def run_async(self, name, popen_args): +''' Execute process in a non-blocking fashion ''' +return self.run_wait(name, popen_args, sync=False) + ### # PUBLIC (test API included) ### -- To view, visit https://gerrit.osmocom.org/c/osmo-gsm-tester/+/18789 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-gsm-tester Gerrit-Branch: master Gerrit-Change-Id: Ia6372e55a8829f722e40db537d9dfd63a94d1be9 Gerrit-Change-Number: 18789 Gerrit-PatchSet: 1 Gerrit-Owner: srs_andre Gerrit-MessageType: newchange
Change in osmo-trx[master]: Transceiver: Implement TRXC cmd NOMTXPOWER
pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-trx/+/18586 ) Change subject: Transceiver: Implement TRXC cmd NOMTXPOWER .. Patch Set 2: Code-Review+2 +1+1=+2. I'm merging because I confused nosmo-bts-trx patchset with osmo-trx one and merge the prior, hence and osmo-bts-trx in master already requires NOMTXPOWER. -- To view, visit https://gerrit.osmocom.org/c/osmo-trx/+/18586 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-trx Gerrit-Branch: master Gerrit-Change-Id: I1d7efe56e008d8d60e23f9a85aa40809f7f84d9c Gerrit-Change-Number: 18586 Gerrit-PatchSet: 2 Gerrit-Owner: pespin Gerrit-Reviewer: Hoernchen Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: daniel Gerrit-Reviewer: fixeria Gerrit-Reviewer: fixeria Gerrit-Reviewer: laforge Gerrit-Reviewer: pespin Gerrit-Reviewer: roh Gerrit-Comment-Date: Fri, 12 Jun 2020 10:01:20 + Gerrit-HasComments: No Gerrit-Has-Labels: Yes Gerrit-MessageType: comment
Change in osmo-bts[master]: scheduler: Fix reading out of buffer during tx of dummy burst on PDCH...
pespin has submitted this change. ( https://gerrit.osmocom.org/c/osmo-bts/+/18751 ) Change subject: scheduler: Fix reading out of buffer during tx of dummy burst on PDCH TS with EGPRS enabled .. scheduler: Fix reading out of buffer during tx of dummy burst on PDCH TS with EGPRS enabled If for whatever reason (eg fn-advance too small) there's no burst available for a PDCH TS where EGPRS is enabled, a dummy burst of size GSM_BURST_LEN would be selected in _sched_dl_burst(), but the nbits length would still be set to EGPRS_BURST_LEN above by func() pointer (tx_pdtch_fn()). As a result, trx_if_send_burst() would later read EGPRS_BURST_LEN from the dummy burst of size GSM_BURST_LEN. The issue was found by ASan. See OS#4606 for more info. Fixes: OS#4606 Change-Id: Iba6ccceed5c0f1db810259768678f174d39cbf8b --- M src/common/scheduler.c 1 file changed, 2 insertions(+), 0 deletions(-) Approvals: fixeria: Looks good to me, approved Jenkins Builder: Verified diff --git a/src/common/scheduler.c b/src/common/scheduler.c index 55cb36a..021a4cd 100644 --- a/src/common/scheduler.c +++ b/src/common/scheduler.c @@ -1211,6 +1211,8 @@ trx_chan_desc[chan].name, fn, tn, bid); #endif bits = (ubit_t *) dummy_burst; + if (nbits) + *nbits = ARRAY_SIZE(dummy_burst); } return bits; -- To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/18751 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bts Gerrit-Branch: master Gerrit-Change-Id: Iba6ccceed5c0f1db810259768678f174d39cbf8b Gerrit-Change-Number: 18751 Gerrit-PatchSet: 2 Gerrit-Owner: pespin Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria Gerrit-Reviewer: pespin Gerrit-MessageType: merged
Change in osmo-trx[master]: Transceiver: Implement TRXC cmd NOMTXPOWER
pespin has submitted this change. ( https://gerrit.osmocom.org/c/osmo-trx/+/18586 ) Change subject: Transceiver: Implement TRXC cmd NOMTXPOWER .. Transceiver: Implement TRXC cmd NOMTXPOWER It allows the BTS to retrieve the nominal transmit output power value of each TRX in order to compute attenuation later on and apply it through SETPOWER or ADJPOWER TRXC commands. Change-Id: I1d7efe56e008d8d60e23f9a85aa40809f7f84d9c --- M Transceiver52M/Transceiver.cpp M Transceiver52M/device/common/radioDevice.h M Transceiver52M/device/lms/LMSDevice.cpp M Transceiver52M/device/lms/LMSDevice.h M Transceiver52M/device/uhd/UHDDevice.cpp M Transceiver52M/device/uhd/UHDDevice.h M Transceiver52M/device/usrp1/USRPDevice.cpp M Transceiver52M/device/usrp1/USRPDevice.h M Transceiver52M/radioInterface.cpp M Transceiver52M/radioInterface.h 10 files changed, 50 insertions(+), 0 deletions(-) Approvals: Jenkins Builder: Verified fixeria: Looks good to me, but someone else must approve laforge: Looks good to me, but someone else must approve pespin: Looks good to me, approved diff --git a/Transceiver52M/Transceiver.cpp b/Transceiver52M/Transceiver.cpp index 8308def..0b7ac31 100644 --- a/Transceiver52M/Transceiver.cpp +++ b/Transceiver52M/Transceiver.cpp @@ -902,6 +902,12 @@ power = mRadioInterface->setPowerAttenuation(power, chan); mStates[chan].mPower = power; sprintf(response, "RSP ADJPOWER 0 %d", power); +} else if (match_cmd(command, "NOMTXPOWER", NULL)) { +int power = mRadioInterface->getNominalTxPower(chan); +if (power > 0) + sprintf(response, "RSP NOMTXPOWER 0 %d", power); +else + sprintf(response, "RSP NOMTXPOWER 1 %d", -power); } else if (match_cmd(command, "RXTUNE", )) { // tune receiver int freqKhz; diff --git a/Transceiver52M/device/common/radioDevice.h b/Transceiver52M/device/common/radioDevice.h index 0dc38d5..8dd8f49 100644 --- a/Transceiver52M/device/common/radioDevice.h +++ b/Transceiver52M/device/common/radioDevice.h @@ -128,6 +128,9 @@ /** sets the transmit chan gain, returns the gain setting **/ virtual double setTxGain(double dB, size_t chan = 0) = 0; + /** returns the Nominal transmit output power of the transceiver in dBm, negative on error **/ + virtual int getNominalTxPower(size_t chan = 0) = 0; + /** get transmit gain */ virtual double getTxGain(size_t chan = 0) = 0; diff --git a/Transceiver52M/device/lms/LMSDevice.cpp b/Transceiver52M/device/lms/LMSDevice.cpp index 932817d..355c8e4 100644 --- a/Transceiver52M/device/lms/LMSDevice.cpp +++ b/Transceiver52M/device/lms/LMSDevice.cpp @@ -530,6 +530,14 @@ return rx_gains[chan]; } +int LMSDevice::getNominalTxPower(size_t chan) +{ + /* TODO: return value based on some experimentally generated table depending on +* band/arfcn, which is known here thanks to TXTUNE +*/ + return 23; +} + void LMSDevice::log_ant_list(bool dir_tx, size_t chan, std::ostringstream& os) { lms_name_t name_list[MAX_ANTENNA_LIST_SIZE]; /* large enough list for antenna names. */ diff --git a/Transceiver52M/device/lms/LMSDevice.h b/Transceiver52M/device/lms/LMSDevice.h index 5b6330a..78fd62a 100644 --- a/Transceiver52M/device/lms/LMSDevice.h +++ b/Transceiver52M/device/lms/LMSDevice.h @@ -179,6 +179,8 @@ /** return minimum Rx Gain **/ double minTxGain(void); + int getNominalTxPower(size_t chan = 0); + /** sets the RX path to use, returns true if successful and false otherwise */ bool setRxAntenna(const std::string & ant, size_t chan = 0); diff --git a/Transceiver52M/device/uhd/UHDDevice.cpp b/Transceiver52M/device/uhd/UHDDevice.cpp index ad56250..2970173 100644 --- a/Transceiver52M/device/uhd/UHDDevice.cpp +++ b/Transceiver52M/device/uhd/UHDDevice.cpp @@ -341,6 +341,14 @@ return tx_gains[chan]; } +int uhd_device::getNominalTxPower(size_t chan) +{ + /* TODO: return value based on some experimentally generated table depending on +* band/arfcn, which is known here thanks to TXTUNE +*/ + return 23; +} + /* Parse the UHD device tree and mboard name to find out what device we're dealing with. We need the window type so that the transceiver knows how to diff --git a/Transceiver52M/device/uhd/UHDDevice.h b/Transceiver52M/device/uhd/UHDDevice.h index 1e66246..01d71a0 100644 --- a/Transceiver52M/device/uhd/UHDDevice.h +++ b/Transceiver52M/device/uhd/UHDDevice.h @@ -100,6 +100,8 @@ double maxTxGain(void) { return tx_gain_max; } double minTxGain(void) { return tx_gain_min; } + int getNominalTxPower(size_t chan = 0); + double getTxFreq(size_t chan); double getRxFreq(size_t chan); double getRxFreq(); diff --git a/Transceiver52M/device/usrp1/USRPDevice.cpp b/Transceiver52M/device/usrp1/USRPDevice.cpp index 1a9a7e1..73117d2 100644 ---
Change in osmo-bts[master]: pcu_sock: Change log about tx PCH confirm INFO->DEBUG
pespin has submitted this change. ( https://gerrit.osmocom.org/c/osmo-bts/+/18746 ) Change subject: pcu_sock: Change log about tx PCH confirm INFO->DEBUG .. pcu_sock: Change log about tx PCH confirm INFO->DEBUG It's not something useful to see unless someone's really debugging that part, and it shows up quite frequently. Change-Id: I3c0dee36c7d34e6b1341b517ce3bcd1b275e69c1 --- M src/common/pcu_sock.c 1 file changed, 1 insertion(+), 1 deletion(-) Approvals: fixeria: Looks good to me, approved Jenkins Builder: Verified diff --git a/src/common/pcu_sock.c b/src/common/pcu_sock.c index 7ced69c..f4a8c0a 100644 --- a/src/common/pcu_sock.c +++ b/src/common/pcu_sock.c @@ -474,7 +474,7 @@ /* FIXME: allow multiple BTS */ bts = llist_entry(net->bts_list.next, struct gsm_bts, list); - LOGP(DPCU, LOGL_INFO, "Sending PCH confirm\n"); + LOGP(DPCU, LOGL_DEBUG, "Sending PCH confirm\n"); msg = pcu_msgb_alloc(PCU_IF_MSG_DATA_CNF, bts->nr); if (!msg) -- To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/18746 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bts Gerrit-Branch: master Gerrit-Change-Id: I3c0dee36c7d34e6b1341b517ce3bcd1b275e69c1 Gerrit-Change-Number: 18746 Gerrit-PatchSet: 2 Gerrit-Owner: pespin Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria Gerrit-Reviewer: pespin Gerrit-MessageType: merged
Change in osmo-bts[master]: bts-trx: Introduce helper func l1if_trx_set_nominal_power
pespin has submitted this change. ( https://gerrit.osmocom.org/c/osmo-bts/+/18588 ) Change subject: bts-trx: Introduce helper func l1if_trx_set_nominal_power .. bts-trx: Introduce helper func l1if_trx_set_nominal_power This way we wrap same logic in one place, which will be used more in next commit. Change-Id: I929fc50d544a88900d2e22317ec5ced10f15e51c --- M src/osmo-bts-trx/l1_if.c M src/osmo-bts-trx/l1_if.h M src/osmo-bts-trx/main.c M src/osmo-bts-trx/trx_vty.c 4 files changed, 10 insertions(+), 3 deletions(-) Approvals: laforge: Looks good to me, approved Jenkins Builder: Verified diff --git a/src/osmo-bts-trx/l1_if.c b/src/osmo-bts-trx/l1_if.c index d0eba2b..97f87a1 100644 --- a/src/osmo-bts-trx/l1_if.c +++ b/src/osmo-bts-trx/l1_if.c @@ -138,6 +138,13 @@ return trx_sched_set_lchan(>l1s, gsm_lchan2chan_nr(lchan), LID_SACCH, false); } +/* Sets the nominal power, in dB */ +void l1if_trx_set_nominal_power(struct gsm_bts_trx *trx, unsigned int nominal_power) +{ + trx->nominal_power = nominal_power; + trx->power_params.trx_p_max_out_mdBm = to_mdB(nominal_power); +} + static void l1if_setslot_cb(struct trx_l1h *l1h, uint8_t tn, uint8_t type, int rc) { struct phy_instance *pinst = l1h->phy_inst; diff --git a/src/osmo-bts-trx/l1_if.h b/src/osmo-bts-trx/l1_if.h index 46f2c18..5f51acb 100644 --- a/src/osmo-bts-trx/l1_if.h +++ b/src/osmo-bts-trx/l1_if.h @@ -114,6 +114,7 @@ int l1if_provision_transceiver_trx(struct trx_l1h *l1h); int l1if_provision_transceiver(struct gsm_bts *bts); int l1if_mph_time_ind(struct gsm_bts *bts, uint32_t fn); +void l1if_trx_set_nominal_power(struct gsm_bts_trx *trx, unsigned int nominal_power); static inline struct l1sched_trx *trx_l1sched_hdl(struct gsm_bts_trx *trx) { diff --git a/src/osmo-bts-trx/main.c b/src/osmo-bts-trx/main.c index 8fb67d2..fbe4c2f 100644 --- a/src/osmo-bts-trx/main.c +++ b/src/osmo-bts-trx/main.c @@ -129,7 +129,7 @@ int bts_model_trx_init(struct gsm_bts_trx *trx) { - trx->power_params.trx_p_max_out_mdBm = to_mdB(trx->bts->c0->nominal_power); + l1if_trx_set_nominal_power(trx, trx->bts->c0->nominal_power); return 0; } diff --git a/src/osmo-bts-trx/trx_vty.c b/src/osmo-bts-trx/trx_vty.c index b920c57..b3214ee 100644 --- a/src/osmo-bts-trx/trx_vty.c +++ b/src/osmo-bts-trx/trx_vty.c @@ -169,8 +169,7 @@ struct trx_l1h *l1h = pinst->u.osmotrx.hdl; int val = atoi(argv[0]); - trx->nominal_power = val; - trx->power_params.trx_p_max_out_mdBm = to_mdB(trx->nominal_power); + l1if_trx_set_nominal_power(trx, val); l1h->config.nominal_power_set_by_vty = true; return CMD_SUCCESS; -- To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/18588 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bts Gerrit-Branch: master Gerrit-Change-Id: I929fc50d544a88900d2e22317ec5ced10f15e51c Gerrit-Change-Number: 18588 Gerrit-PatchSet: 6 Gerrit-Owner: pespin Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge Gerrit-Reviewer: pespin Gerrit-MessageType: merged
Change in osmo-bts[master]: bts-trx: Rename setpower TRXC functions to describe they use power at...
pespin has submitted this change. ( https://gerrit.osmocom.org/c/osmo-bts/+/18587 ) Change subject: bts-trx: Rename setpower TRXC functions to describe they use power attenuation .. bts-trx: Rename setpower TRXC functions to describe they use power attenuation Change-Id: Iedbe8e76bce990c2330477157cd886a8fc22063c --- M src/osmo-bts-trx/l1_if.c M src/osmo-bts-trx/trx_if.c M src/osmo-bts-trx/trx_if.h 3 files changed, 7 insertions(+), 7 deletions(-) Approvals: laforge: Looks good to me, approved Jenkins Builder: Verified diff --git a/src/osmo-bts-trx/l1_if.c b/src/osmo-bts-trx/l1_if.c index ff8e293..d0eba2b 100644 --- a/src/osmo-bts-trx/l1_if.c +++ b/src/osmo-bts-trx/l1_if.c @@ -193,12 +193,12 @@ } } -static void l1if_setpower_cb(struct trx_l1h *l1h, int power_att_db, int rc) +static void l1if_setpower_att_cb(struct trx_l1h *l1h, int power_att_db, int rc) { struct phy_instance *pinst = l1h->phy_inst; struct gsm_bts_trx *trx = pinst->trx; - LOGPPHI(pinst, DL1C, LOGL_DEBUG, "l1if_setpower_cb(power_att_db=%d, rc=%d)\n", power_att_db, rc); + LOGPPHI(pinst, DL1C, LOGL_DEBUG, "l1if_setpower_att_cb(power_att_db=%d, rc=%d)\n", power_att_db, rc); power_trx_change_compl(trx, get_p_max_out_mdBm(trx) - to_mdB(power_att_db)); } @@ -818,7 +818,7 @@ struct phy_instance *pinst = trx_phy_instance(trx); struct trx_l1h *l1h = pinst->u.osmotrx.hdl; int power_att = (get_p_max_out_mdBm(trx) - p_trxout_mdBm) / 1000; - return trx_if_cmd_setpower(l1h, power_att, l1if_setpower_cb); + return trx_if_cmd_setpower_att(l1h, power_att, l1if_setpower_att_cb); } int bts_model_ts_disconnect(struct gsm_bts_trx_ts *ts) diff --git a/src/osmo-bts-trx/trx_if.c b/src/osmo-bts-trx/trx_if.c index 5e3bf91..f2e2915 100644 --- a/src/osmo-bts-trx/trx_if.c +++ b/src/osmo-bts-trx/trx_if.c @@ -303,7 +303,7 @@ } /*! Send "SETPOWER" command to TRX */ -int trx_if_cmd_setpower(struct trx_l1h *l1h, int power_att_db, trx_if_cmd_setpower_cb *cb) +int trx_if_cmd_setpower_att(struct trx_l1h *l1h, int power_att_db, trx_if_cmd_setpower_att_cb *cb) { return trx_ctrl_cmd_cb(l1h, 0, cb, "SETPOWER", "%d", power_att_db); } @@ -546,7 +546,7 @@ static int trx_ctrl_rx_rsp_setpower(struct trx_l1h *l1h, struct trx_ctrl_rsp *rsp) { - trx_if_cmd_setpower_cb *cb = (trx_if_cmd_setpower_cb*) rsp->cb; + trx_if_cmd_setpower_att_cb *cb = (trx_if_cmd_setpower_att_cb*) rsp->cb; struct phy_instance *pinst = l1h->phy_inst; int power_att; diff --git a/src/osmo-bts-trx/trx_if.h b/src/osmo-bts-trx/trx_if.h index 0630eb6..300be92 100644 --- a/src/osmo-bts-trx/trx_if.h +++ b/src/osmo-bts-trx/trx_if.h @@ -15,7 +15,7 @@ typedef void trx_if_cmd_poweronoff_cb(struct trx_l1h *l1h, bool poweronoff, int rc); typedef void trx_if_cmd_setslot_cb(struct trx_l1h *l1h, uint8_t tn, uint8_t type, int rc); -typedef void trx_if_cmd_setpower_cb(struct trx_l1h *l1h, int power_att_db, int rc); +typedef void trx_if_cmd_setpower_att_cb(struct trx_l1h *l1h, int power_att_db, int rc); void trx_if_init(struct trx_l1h *l1h); int trx_if_cmd_poweroff(struct trx_l1h *l1h, trx_if_cmd_poweronoff_cb *cb); @@ -23,7 +23,7 @@ int trx_if_cmd_settsc(struct trx_l1h *l1h, uint8_t tsc); int trx_if_cmd_setbsic(struct trx_l1h *l1h, uint8_t bsic); int trx_if_cmd_setrxgain(struct trx_l1h *l1h, int db); -int trx_if_cmd_setpower(struct trx_l1h *l1h, int power_att_db, trx_if_cmd_setpower_cb *cb); +int trx_if_cmd_setpower_att(struct trx_l1h *l1h, int power_att_db, trx_if_cmd_setpower_att_cb *cb); int trx_if_cmd_setmaxdly(struct trx_l1h *l1h, int dly); int trx_if_cmd_setmaxdlynb(struct trx_l1h *l1h, int dly); int trx_if_cmd_setslot(struct trx_l1h *l1h, uint8_t tn, uint8_t type, trx_if_cmd_setslot_cb *cb); -- To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/18587 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bts Gerrit-Branch: master Gerrit-Change-Id: Iedbe8e76bce990c2330477157cd886a8fc22063c Gerrit-Change-Number: 18587 Gerrit-PatchSet: 6 Gerrit-Owner: pespin Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: laforge Gerrit-Reviewer: pespin Gerrit-MessageType: merged
Change in osmo-bts[master]: bts-trx: Re-apply tx power if nominal power is received after POWERON
pespin has submitted this change. ( https://gerrit.osmocom.org/c/osmo-bts/+/18652 ) Change subject: bts-trx: Re-apply tx power if nominal power is received after POWERON .. bts-trx: Re-apply tx power if nominal power is received after POWERON it was perceived that sometimes based on order of events (OML attr setup and timing of RSL connections, etc.), the NOMTXPOWER for TRX!=0 can come after the RSP POWERON, and hence the target power level for TRX!=0 is not done correcty. This can be seen by running any test using the ttcn3-bts setup of docker-playgrounds.git. Change-Id: I2ec8dba61393be6edfab9e7e478e096e2d0933ad --- M src/osmo-bts-trx/l1_if.c 1 file changed, 24 insertions(+), 5 deletions(-) Approvals: laforge: Looks good to me, but someone else must approve daniel: Looks good to me, approved Jenkins Builder: Verified diff --git a/src/osmo-bts-trx/l1_if.c b/src/osmo-bts-trx/l1_if.c index 0858de2..07f6e7a 100644 --- a/src/osmo-bts-trx/l1_if.c +++ b/src/osmo-bts-trx/l1_if.c @@ -138,11 +138,34 @@ return trx_sched_set_lchan(>l1s, gsm_lchan2chan_nr(lchan), LID_SACCH, false); } +static void l1if_trx_start_power_ramp(struct gsm_bts_trx *trx) +{ + struct phy_instance *pinst = trx_phy_instance(trx); + struct trx_l1h *l1h = pinst->u.osmotrx.hdl; + + if (l1h->config.forced_max_power_red == -1) + power_ramp_start(trx, get_p_nominal_mdBm(trx), 0); + else + power_ramp_start(trx, get_p_max_out_mdBm(trx) - to_mdB(l1h->config.forced_max_power_red), 1); +} + /* Sets the nominal power, in dB */ void l1if_trx_set_nominal_power(struct gsm_bts_trx *trx, unsigned int nominal_power) { + struct phy_instance *pinst = trx_phy_instance(trx); + bool nom_pwr_changed = trx->nominal_power != nominal_power; + trx->nominal_power = nominal_power; trx->power_params.trx_p_max_out_mdBm = to_mdB(nominal_power); + + /* If TRX is not yet powered, delay ramping until it's ON */ + if (!nom_pwr_changed || !pinst->phy_link->u.osmotrx.powered) + return; + + /* We are already ON and we got new information about nominal power, so +* let's make sure we adapt the tx power to it +*/ + l1if_trx_start_power_ramp(trx); } static void l1if_getnompower_cb(struct trx_l1h *l1h, unsigned int nominal_power, int rc) @@ -197,11 +220,7 @@ /* Begin to ramp up the power on all TRX associated with this phy */ llist_for_each_entry(pinst, >instances, list) { - struct gsm_bts_trx *trx = pinst->trx; - if (l1h->config.forced_max_power_red == -1) - power_ramp_start(trx, get_p_nominal_mdBm(trx), 0); - else - power_ramp_start(trx, get_p_max_out_mdBm(trx) - to_mdB(l1h->config.forced_max_power_red), 1); + l1if_trx_start_power_ramp(pinst->trx); } } else if (rc != 0 && pinst->phy_link->state != PHY_LINK_SHUTDOWN) { trx_sched_clock_stopped(pinst->trx->bts); -- To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/18652 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bts Gerrit-Branch: master Gerrit-Change-Id: I2ec8dba61393be6edfab9e7e478e096e2d0933ad Gerrit-Change-Number: 18652 Gerrit-PatchSet: 4 Gerrit-Owner: pespin Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: daniel Gerrit-Reviewer: laforge Gerrit-Reviewer: pespin Gerrit-MessageType: merged
Change in osmo-bts[master]: bts-trx: Use TRXC cmd NOMTXPOWER to retrieve nominal tx power from os...
pespin has submitted this change. ( https://gerrit.osmocom.org/c/osmo-bts/+/18589 ) Change subject: bts-trx: Use TRXC cmd NOMTXPOWER to retrieve nominal tx power from osmo-trx .. bts-trx: Use TRXC cmd NOMTXPOWER to retrieve nominal tx power from osmo-trx Change-Id: I682211f3d664c21f923ca4a530e0464ca383b6d9 --- M src/osmo-bts-trx/l1_if.c M src/osmo-bts-trx/main.c M src/osmo-bts-trx/trx_if.c M src/osmo-bts-trx/trx_if.h 4 files changed, 49 insertions(+), 4 deletions(-) Approvals: laforge: Looks good to me, approved Jenkins Builder: Verified diff --git a/src/osmo-bts-trx/l1_if.c b/src/osmo-bts-trx/l1_if.c index 97f87a1..0858de2 100644 --- a/src/osmo-bts-trx/l1_if.c +++ b/src/osmo-bts-trx/l1_if.c @@ -145,6 +145,16 @@ trx->power_params.trx_p_max_out_mdBm = to_mdB(nominal_power); } +static void l1if_getnompower_cb(struct trx_l1h *l1h, unsigned int nominal_power, int rc) +{ + struct phy_instance *pinst = l1h->phy_inst; + struct gsm_bts_trx *trx = pinst->trx; + + LOGPPHI(pinst, DL1C, LOGL_DEBUG, "l1if_getnompower_cb(nominal_power=%u, rc=%d)\n", nominal_power, rc); + + l1if_trx_set_nominal_power(trx, nominal_power); +} + static void l1if_setslot_cb(struct trx_l1h *l1h, uint8_t tn, uint8_t type, int rc) { struct phy_instance *pinst = l1h->phy_inst; @@ -240,6 +250,13 @@ if (!l1h->config.arfcn_sent) { trx_if_cmd_rxtune(l1h, l1h->config.arfcn); trx_if_cmd_txtune(l1h, l1h->config.arfcn); + /* After TXTUNE is sent to TRX, get the tx nominal power +* (which may vary precisly on band/arfcn. Avoid sending +* it if we are forced by VTY to use a specific nominal +* power (because TRX may not support the command or +* provide broken values) */ + if (!l1h->config.nominal_power_set_by_vty) + trx_if_cmd_getnompower(l1h, l1if_getnompower_cb); l1h->config.arfcn_sent = 1; } if (!l1h->config.tsc_sent) { diff --git a/src/osmo-bts-trx/main.c b/src/osmo-bts-trx/main.c index fbe4c2f..0d2a1f7 100644 --- a/src/osmo-bts-trx/main.c +++ b/src/osmo-bts-trx/main.c @@ -104,10 +104,9 @@ bts->variant = BTS_OSMO_TRX; bts->support.ciphers = CIPHER_A5(1) | CIPHER_A5(2) | CIPHER_A5(3); - /* The nominal value is later overwritten through VTY cmd -* 'nominal-tx-power' if present. -* FIXME: In the future, we want osmo-trx to provide us with this info -* through TRXC. */ + /* The nominal value for each TRX is later overwritten through VTY cmd +* 'nominal-tx-power' if present, otherwise through TRXC cmd NOMTXPOWER. +*/ bts->c0->nominal_power = 23; osmo_bts_set_feature(bts->features, BTS_FEAT_GPRS); @@ -129,6 +128,9 @@ int bts_model_trx_init(struct gsm_bts_trx *trx) { + /* The nominal value for each TRX is later overwritten through VTY cmd +* 'nominal-tx-power' if present, otherwise through TRXC cmd NOMTXPOWER. +*/ l1if_trx_set_nominal_power(trx, trx->bts->c0->nominal_power); return 0; } diff --git a/src/osmo-bts-trx/trx_if.c b/src/osmo-bts-trx/trx_if.c index f2e2915..61f57b9 100644 --- a/src/osmo-bts-trx/trx_if.c +++ b/src/osmo-bts-trx/trx_if.c @@ -302,6 +302,12 @@ return trx_ctrl_cmd(l1h, 0, "SETRXGAIN", "%d", db); } +/*! Send "NOMTXPOWER" command to TRX */ +int trx_if_cmd_getnompower(struct trx_l1h *l1h, trx_if_cmd_getnompower_cb *cb) +{ + return trx_ctrl_cmd_cb(l1h, 1, cb, "NOMTXPOWER", ""); +} + /*! Send "SETPOWER" command to TRX */ int trx_if_cmd_setpower_att(struct trx_l1h *l1h, int power_att_db, trx_if_cmd_setpower_att_cb *cb) { @@ -544,6 +550,22 @@ return 0; } +static int trx_ctrl_rx_rsp_nomtxpower(struct trx_l1h *l1h, struct trx_ctrl_rsp *rsp) +{ + trx_if_cmd_getnompower_cb *cb = (trx_if_cmd_getnompower_cb*) rsp->cb; + struct phy_instance *pinst = l1h->phy_inst; + unsigned int nominal_power; + + if (rsp->status) + LOGPPHI(pinst, DTRX, LOGL_ERROR, "transceiver NOMTXPOWER failed with status %d\n", + rsp->status); + if (cb) { + sscanf(rsp->params, "%u", _power); + cb(l1h, nominal_power, rsp->status); + } + return 0; +} + static int trx_ctrl_rx_rsp_setpower(struct trx_l1h *l1h, struct trx_ctrl_rsp *rsp) { trx_if_cmd_setpower_att_cb *cb = (trx_if_cmd_setpower_att_cb*) rsp->cb; @@ -578,6 +600,8 @@ * so that's why we should use tcm instead of rsp. */ } else if (strcmp(tcm->cmd, "SETFORMAT") == 0) { return trx_ctrl_rx_rsp_setformat(l1h, rsp); + } else if (strcmp(tcm->cmd, "NOMTXPOWER") == 0) { + return
Change in osmo-bts[master]: bts-trx: Implement power ramping during BTS bring up
pespin has submitted this change. ( https://gerrit.osmocom.org/c/osmo-bts/+/18488 ) Change subject: bts-trx: Implement power ramping during BTS bring up .. bts-trx: Implement power ramping during BTS bring up The nominal transmit power is still only configurable manually from osmo-bts-trx VTY interface. Support to retrieve the nominal power from osmo-trx will come later. Change-Id: Ia7c353e4c199e0fc3bcab55c45a4abda2c66d2c1 --- M include/osmo-bts/tx_power.h M src/osmo-bts-trx/l1_if.c M src/osmo-bts-trx/l1_if.h M src/osmo-bts-trx/main.c M src/osmo-bts-trx/trx_if.c M src/osmo-bts-trx/trx_if.h M src/osmo-bts-trx/trx_vty.c 7 files changed, 73 insertions(+), 73 deletions(-) Approvals: laforge: Looks good to me, but someone else must approve daniel: Looks good to me, approved Jenkins Builder: Verified diff --git a/include/osmo-bts/tx_power.h b/include/osmo-bts/tx_power.h index 21887c7..10129eb 100644 --- a/include/osmo-bts/tx_power.h +++ b/include/osmo-bts/tx_power.h @@ -65,6 +65,8 @@ int get_p_target_mdBm(struct gsm_bts_trx *trx, uint8_t bs_power_ie); int get_p_target_mdBm_lchan(struct gsm_lchan *lchan); +int get_p_actual_mdBm(struct gsm_bts_trx *trx, int p_target_mdBm); + int get_p_trxout_target_mdBm(struct gsm_bts_trx *trx, uint8_t bs_power_ie); int get_p_trxout_target_mdBm_lchan(struct gsm_lchan *lchan); diff --git a/src/osmo-bts-trx/l1_if.c b/src/osmo-bts-trx/l1_if.c index b67d8fa..ff8e293 100644 --- a/src/osmo-bts-trx/l1_if.c +++ b/src/osmo-bts-trx/l1_if.c @@ -177,6 +177,15 @@ if (rc == 0 && pinst->phy_link->state != PHY_LINK_CONNECTED) { trx_sched_clock_started(pinst->trx->bts); phy_link_state_set(pinst->phy_link, PHY_LINK_CONNECTED); + + /* Begin to ramp up the power on all TRX associated with this phy */ + llist_for_each_entry(pinst, >instances, list) { + struct gsm_bts_trx *trx = pinst->trx; + if (l1h->config.forced_max_power_red == -1) + power_ramp_start(trx, get_p_nominal_mdBm(trx), 0); + else + power_ramp_start(trx, get_p_max_out_mdBm(trx) - to_mdB(l1h->config.forced_max_power_red), 1); + } } else if (rc != 0 && pinst->phy_link->state != PHY_LINK_SHUTDOWN) { trx_sched_clock_stopped(pinst->trx->bts); phy_link_state_set(pinst->phy_link, PHY_LINK_SHUTDOWN); @@ -184,6 +193,16 @@ } } +static void l1if_setpower_cb(struct trx_l1h *l1h, int power_att_db, int rc) +{ + struct phy_instance *pinst = l1h->phy_inst; + struct gsm_bts_trx *trx = pinst->trx; + + LOGPPHI(pinst, DL1C, LOGL_DEBUG, "l1if_setpower_cb(power_att_db=%d, rc=%d)\n", power_att_db, rc); + + power_trx_change_compl(trx, get_p_max_out_mdBm(trx) - to_mdB(power_att_db)); +} + /* * transceiver provisioning */ @@ -249,10 +268,6 @@ trx_if_cmd_setrxgain(l1h, l1h->config.rxgain); l1h->config.rxgain_sent = 1; } - if (l1h->config.power_valid && !l1h->config.power_sent) { - trx_if_cmd_setpower(l1h, l1h->config.power); - l1h->config.power_sent = 1; - } if (l1h->config.maxdly_valid && !l1h->config.maxdly_sent) { trx_if_cmd_setmaxdly(l1h, l1h->config.maxdly); l1h->config.maxdly_sent = 1; @@ -279,7 +294,6 @@ plink->u.osmotrx.poweronoff_sent = true; } l1h->config.rxgain_sent = 0; - l1h->config.power_sent = 0; l1h->config.maxdly_sent = 0; l1h->config.maxdlynb_sent = 0; for (tn = 0; tn < TRX_NR_TS; tn++) @@ -304,7 +318,6 @@ l1h->config.tsc_sent = 0; l1h->config.bsic_sent = 0; l1h->config.rxgain_sent = 0; - l1h->config.power_sent = 0; l1h->config.maxdly_sent = 0; l1h->config.maxdlynb_sent = 0; for (tn = 0; tn < TRX_NR_TS; tn++) @@ -408,6 +421,7 @@ { struct phy_instance *pinst = trx_phy_instance(trx); struct trx_l1h *l1h = pinst->u.osmotrx.hdl; + struct phy_link *plink = pinst->phy_link; uint16_t arfcn = trx->arfcn; if (l1h->config.arfcn != arfcn || !l1h->config.arfcn_valid) { @@ -417,12 +431,11 @@ l1if_provision_transceiver_trx(l1h); } - if (l1h->config.power_oml) { - l1h->config.power = trx->max_power_red; - l1h->config.power_valid = 1; - l1h->config.power_sent = 0; - l1if_provision_transceiver_trx(l1h); - } + /* Begin to
Change in osmo-bts[master]: pcu_sock: Change log about tx PCH confirm INFO->DEBUG
fixeria has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-bts/+/18746 ) Change subject: pcu_sock: Change log about tx PCH confirm INFO->DEBUG .. Patch Set 1: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/18746 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bts Gerrit-Branch: master Gerrit-Change-Id: I3c0dee36c7d34e6b1341b517ce3bcd1b275e69c1 Gerrit-Change-Number: 18746 Gerrit-PatchSet: 1 Gerrit-Owner: pespin Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria Gerrit-Comment-Date: Fri, 12 Jun 2020 07:02:08 + Gerrit-HasComments: No Gerrit-Has-Labels: Yes Gerrit-MessageType: comment
Change in osmo-bts[master]: osmo-bts-trx/scheduler: properly handle NOPE.ind during handover
fixeria has submitted this change. ( https://gerrit.osmocom.org/c/osmo-bts/+/18734 ) Change subject: osmo-bts-trx/scheduler: properly handle NOPE.ind during handover .. osmo-bts-trx/scheduler: properly handle NOPE.ind during handover Looking at GSMTAP during handover, I've noticed many packets on RACH looking pretty much like false positives, all with RA=0x00. I correlated GSMTAP traces with TRXD traces, and figured out that they all are triggered by NOPE indications from osmo-trx. Since a NOPE.ind carries no valid burst, all its bits are set to zero. Funny enough, this sequence is still decoded just fine as a valid RACH, so that's why we see it on GSMTAP. Later on it gets rejected by L1SAP due to bad RSSI, ToA, and/or C/I ratio. The is a side effect of [1]. In order to ensure proper Uplink measurement reporting during handover, including the time before the handover RACH is received, let's treat and handle NOPE indications as Normal Bursts. [1] Ice45d5986610d9bcef2a7e41f0a395ec779e3928 Change-Id: Ic69f3bc2b776a23374c28a6884080a54bc16ef5f Related: OS#4592 --- M src/osmo-bts-trx/scheduler_trx.c 1 file changed, 9 insertions(+), 6 deletions(-) Approvals: laforge: Looks good to me, approved Jenkins Builder: Verified diff --git a/src/osmo-bts-trx/scheduler_trx.c b/src/osmo-bts-trx/scheduler_trx.c index 8a2bb12..97b590d 100644 --- a/src/osmo-bts-trx/scheduler_trx.c +++ b/src/osmo-bts-trx/scheduler_trx.c @@ -917,8 +917,9 @@ uint16_t ber10k; int rc; - /* handle RACH, if handover RACH detection is turned on */ - if (chan_state->ho_rach_detect == 1) + /* If handover RACH detection is turned on, treat this burst as an Access Burst. +* Handle NOPE.ind as usually to ensure proper Uplink measurement reporting. */ + if (chan_state->ho_rach_detect == 1 && ~bi->flags & TRX_BI_F_NOPE_IND) return rx_rach_fn(l1t, chan, bid, bi); LOGL1S(DL1P, LOGL_DEBUG, l1t, bi->tn, chan, bi->fn, @@ -1142,8 +1143,9 @@ uint8_t is_sub = 0; uint8_t ft; - /* handle rach, if handover rach detection is turned on */ - if (chan_state->ho_rach_detect == 1) + /* If handover RACH detection is turned on, treat this burst as an Access Burst. +* Handle NOPE.ind as usually to ensure proper Uplink measurement reporting. */ + if (chan_state->ho_rach_detect == 1 && ~bi->flags & TRX_BI_F_NOPE_IND) return rx_rach_fn(l1t, chan, bid, bi); LOGL1S(DL1P, LOGL_DEBUG, l1t, bi->tn, chan, bi->fn, @@ -1384,8 +1386,9 @@ uint8_t is_sub = 0; uint8_t ft; - /* handle RACH, if handover RACH detection is turned on */ - if (chan_state->ho_rach_detect == 1) + /* If handover RACH detection is turned on, treat this burst as an Access Burst. +* Handle NOPE.ind as usually to ensure proper Uplink measurement reporting. */ + if (chan_state->ho_rach_detect == 1 && ~bi->flags & TRX_BI_F_NOPE_IND) return rx_rach_fn(l1t, chan, bid, bi); LOGL1S(DL1P, LOGL_DEBUG, l1t, bi->tn, chan, bi->fn, -- To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/18734 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bts Gerrit-Branch: master Gerrit-Change-Id: Ic69f3bc2b776a23374c28a6884080a54bc16ef5f Gerrit-Change-Number: 18734 Gerrit-PatchSet: 4 Gerrit-Owner: fixeria Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: fixeria Gerrit-Reviewer: laforge Gerrit-MessageType: merged