Change in osmocom-bb[master]: Minor Typo Fixes
Harald Welte has posted comments on this change. ( https://gerrit.osmocom.org/9209 ) Change subject: Minor Typo Fixes .. Patch Set 1: Code-Review-1 The "./configure" script is *generated* during the build process from configure.ac. We (like anyone) don't check-in generated code but simply the original input file. Please re-submit without the "configure" file. -- To view, visit https://gerrit.osmocom.org/9209 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmocom-bb Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: Ie5b1e0f23df23d5831059a1c3c9b16ee89963612 Gerrit-Change-Number: 9209 Gerrit-PatchSet: 1 Gerrit-Owner: Nikos Balkanas Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder Gerrit-Comment-Date: Thu, 17 May 2018 07:11:10 + Gerrit-HasComments: No Gerrit-HasLabels: Yes
Change in libosmocore[master]: tests: bitrev_test: Fix dynamic-stack-buffer-overflow
Harald Welte has posted comments on this change. ( https://gerrit.osmocom.org/9205 ) Change subject: tests: bitrev_test: Fix dynamic-stack-buffer-overflow .. Patch Set 1: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/9205 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: libosmocore Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I6e86d0164b7e982bf7b7449d5b3abfb3e1e5da46 Gerrit-Change-Number: 9205 Gerrit-PatchSet: 1 Gerrit-Owner: Pau Espin Pedrol Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder Gerrit-Comment-Date: Thu, 17 May 2018 07:11:56 + Gerrit-HasComments: No Gerrit-HasLabels: Yes
Change in libosmocore[master]: tests: a5_test: Print wrong buffer correctly on error
Harald Welte has posted comments on this change. ( https://gerrit.osmocom.org/9208 ) Change subject: tests: a5_test: Print wrong buffer correctly on error .. Patch Set 1: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/9208 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: libosmocore Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I364328a59da31537c6c9b969e34edd360b685081 Gerrit-Change-Number: 9208 Gerrit-PatchSet: 1 Gerrit-Owner: Pau Espin Pedrol Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Vadim Yanitskiy Gerrit-Comment-Date: Thu, 17 May 2018 07:12:21 + Gerrit-HasComments: No Gerrit-HasLabels: Yes
Change in libosmocore[master]: tests: bitrev_test: Fix dynamic-stack-buffer-overflow
Harald Welte has submitted this change and it was merged. ( https://gerrit.osmocom.org/9205 ) Change subject: tests: bitrev_test: Fix dynamic-stack-buffer-overflow .. tests: bitrev_test: Fix dynamic-stack-buffer-overflow Fixes following AddressSanitizer report: ==1983==ERROR: AddressSanitizer: dynamic-stack-buffer-overflow on address 0x7ffc245f47e6 at pc 0x7f3e2deea68c bp 0x7ffc245f4750 sp 0x7ffc245f4740 WRITE of size 1 at 0x7ffc245f47e6 thread T0 #0 0x7f3e2deea68b in osmo_nibble_shift_right libosmocore/src/bits.c:92 #1 0x55c01902e1ab in sh_chk libosmocore/tests/bits/bitrev_test.c:215 #2 0x55c01902ed8f in main libosmocore/tests/bits/bitrev_test.c:305 #3 0x7f3e2c93006a in __libc_start_main (/usr/lib/libc.so.6+0x2306a) #4 0x55c01902c059 in _start (libosmocore/tests/bits/.libs/lt-bitrev_test+0x5059) This patch can be seen as a follow-up of commit 4fd6023b0383e7efa3b7b0211104a86ff5d3d4f6, which already fixed the left-shift case in the same way. Change-Id: I6e86d0164b7e982bf7b7449d5b3abfb3e1e5da46 --- M tests/bits/bitrev_test.c M tests/bits/bitrev_test.ok 2 files changed, 3 insertions(+), 4 deletions(-) Approvals: Jenkins Builder: Verified Harald Welte: Looks good to me, approved diff --git a/tests/bits/bitrev_test.c b/tests/bits/bitrev_test.c index ed3939a..4a3c1b4 100644 --- a/tests/bits/bitrev_test.c +++ b/tests/bits/bitrev_test.c @@ -299,10 +299,11 @@ for (offs = 0; offs < 13; offs++) { sh_chk(in1, ARRAY_SIZE(in1), offs, true); sh_chk(in1, ARRAY_SIZE(in1), offs, false); - sh_chk(in2, ARRAY_SIZE(in2), offs, true); /* in2 is too short to shift left 12 nibbles */ - if (offs < 12) + if (offs < 12) { + sh_chk(in2, ARRAY_SIZE(in2), offs, true); sh_chk(in2, ARRAY_SIZE(in2), offs, false); + } } return 0; } diff --git a/tests/bits/bitrev_test.ok b/tests/bits/bitrev_test.ok index d2fb12c..580fb63 100644 --- a/tests/bits/bitrev_test.ok +++ b/tests/bits/bitrev_test.ok @@ -154,5 +154,3 @@ OUT: 0f00dcafedea [8] L IN: f00dcafedeadbeef, nibble 12: OUT: 00dcafedeadb -[6] R IN: b00bbabeface, nibble 12: - OUT: 0b00bbabefac -- To view, visit https://gerrit.osmocom.org/9205 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: libosmocore Gerrit-Branch: master Gerrit-MessageType: merged Gerrit-Change-Id: I6e86d0164b7e982bf7b7449d5b3abfb3e1e5da46 Gerrit-Change-Number: 9205 Gerrit-PatchSet: 1 Gerrit-Owner: Pau Espin Pedrol Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder
Change in libosmocore[master]: tests: gea_test: Use correct max size for key in buffer
Harald Welte has submitted this change and it was merged. ( https://gerrit.osmocom.org/9206 ) Change subject: tests: gea_test: Use correct max size for key in buffer .. tests: gea_test: Use correct max size for key in buffer Expect key sizes for GEA are 64-128 bits. Change-Id: Iaf81992a2901733b630e3046b0c4bdc1fb9a8ace --- M tests/gea/gea_test.c 1 file changed, 2 insertions(+), 2 deletions(-) Approvals: Jenkins Builder: Verified Vadim Yanitskiy: Looks good to me, but someone else must approve Harald Welte: Looks good to me, approved diff --git a/tests/gea/gea_test.c b/tests/gea/gea_test.c index ebccaaf..87020e2 100644 --- a/tests/gea/gea_test.c +++ b/tests/gea/gea_test.c @@ -23,9 +23,9 @@ static inline void test_gea(bool v4, char *kc, uint32_t iv, int dir, uint16_t len, char *res) { -uint8_t out[len], ck[256]; +uint8_t out[len], ck[16]; printf("len %d, dir %d, INPUT 0x%X -> ", len, dir, iv); -osmo_hexparse(kc, ck, len); +osmo_hexparse(kc, ck, sizeof(ck)); int t = gprs_cipher_run(out, len, v4 ? GPRS_ALGO_GEA4 : GPRS_ALGO_GEA3, ck, iv, dir); printf("%s ", t < 0 ? strerror(-t) : "OK"); -- To view, visit https://gerrit.osmocom.org/9206 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: libosmocore Gerrit-Branch: master Gerrit-MessageType: merged Gerrit-Change-Id: Iaf81992a2901733b630e3046b0c4bdc1fb9a8ace Gerrit-Change-Number: 9206 Gerrit-PatchSet: 1 Gerrit-Owner: Pau Espin Pedrol Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Vadim Yanitskiy
Change in libosmocore[master]: tests: a5_test: Print wrong buffer correctly on error
Harald Welte has submitted this change and it was merged. ( https://gerrit.osmocom.org/9208 ) Change subject: tests: a5_test: Print wrong buffer correctly on error .. tests: a5_test: Print wrong buffer correctly on error Before this patch, osmo_hexdump is called stacked in th esame printf function. As a result, the first returned buffer is overwriten by the second, which means the printed buffers will show as the same always. Change-Id: I364328a59da31537c6c9b969e34edd360b685081 --- M tests/a5/a5_test.c 1 file changed, 3 insertions(+), 1 deletion(-) Approvals: Jenkins Builder: Verified Vadim Yanitskiy: Looks good to me, but someone else must approve Harald Welte: Looks good to me, approved diff --git a/tests/a5/a5_test.c b/tests/a5/a5_test.c index 6d7cc3c..69f1035 100644 --- a/tests/a5/a5_test.c +++ b/tests/a5/a5_test.c @@ -48,7 +48,9 @@ osmo_hexparse(block, res, len); osmo_ubit2pbit(buf, out, 114); if (0 != memcmp(buf, res, len)) { - printf("FAIL\nGOT: [%d] %s\nEXP: [%d] %s\n", k, osmo_hexdump_nospc(buf, len), k, osmo_hexdump_nospc(res, len)); + printf("FAIL:\n"); + printf("GOT: [%d] %s\n", k, osmo_hexdump_nospc(buf, len)); + printf("EXP: [%d] %s\n", k, osmo_hexdump_nospc(res, len)); return false; } printf("OK\n"); -- To view, visit https://gerrit.osmocom.org/9208 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: libosmocore Gerrit-Branch: master Gerrit-MessageType: merged Gerrit-Change-Id: I364328a59da31537c6c9b969e34edd360b685081 Gerrit-Change-Number: 9208 Gerrit-PatchSet: 1 Gerrit-Owner: Pau Espin Pedrol Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Vadim Yanitskiy
Change in libosmocore[master]: tests: gea_test: Use correct max size for key in buffer
Harald Welte has posted comments on this change. ( https://gerrit.osmocom.org/9206 ) Change subject: tests: gea_test: Use correct max size for key in buffer .. Patch Set 1: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/9206 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: libosmocore Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: Iaf81992a2901733b630e3046b0c4bdc1fb9a8ace Gerrit-Change-Number: 9206 Gerrit-PatchSet: 1 Gerrit-Owner: Pau Espin Pedrol Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Vadim Yanitskiy Gerrit-Comment-Date: Thu, 17 May 2018 07:12:12 + Gerrit-HasComments: No Gerrit-HasLabels: Yes
Change in libosmocore[master]: use reasonable value if PATH_MAX is not defined
Harald Welte has posted comments on this change. ( https://gerrit.osmocom.org/9202 ) Change subject: use reasonable value if PATH_MAX is not defined .. Patch Set 1: slightly off-topic: PATH_MAX doesn't seem to be such a great idea to beg in with :/ http://insanecoding.blogspot.de/2007/11/pathmax-simply-isnt.html -- To view, visit https://gerrit.osmocom.org/9202 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: libosmocore Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: Ia884f4c96b4c4eaa1a1be256e3ccda0b4dec4099 Gerrit-Change-Number: 9202 Gerrit-PatchSet: 1 Gerrit-Owner: Thorsten Alteholz Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Pau Espin Pedrol Gerrit-Reviewer: Vadim Yanitskiy Gerrit-CC: Harald Welte Gerrit-Comment-Date: Thu, 17 May 2018 07:16:00 + Gerrit-HasComments: No Gerrit-HasLabels: No
Change in libosmocore[master]: use reasonable value if PATH_MAX is not defined
Harald Welte has posted comments on this change. ( https://gerrit.osmocom.org/9202 ) Change subject: use reasonable value if PATH_MAX is not defined .. Patch Set 1: or well, it is actually, if we are about to pass that path into a syscall: https://eklitzke.org/path-max-is-tricky (both links just general FYI, not requiring/requesting any change to the current patch) -- To view, visit https://gerrit.osmocom.org/9202 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: libosmocore Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: Ia884f4c96b4c4eaa1a1be256e3ccda0b4dec4099 Gerrit-Change-Number: 9202 Gerrit-PatchSet: 1 Gerrit-Owner: Thorsten Alteholz Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Pau Espin Pedrol Gerrit-Reviewer: Vadim Yanitskiy Gerrit-CC: Harald Welte Gerrit-Comment-Date: Thu, 17 May 2018 07:17:49 + Gerrit-HasComments: No Gerrit-HasLabels: No
Change in libosmo-sccp[master]: tests: xua_test: Fix use of wrong buffer for dest addr
Harald Welte has posted comments on this change. ( https://gerrit.osmocom.org/9198 ) Change subject: tests: xua_test: Fix use of wrong buffer for dest addr .. Patch Set 1: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/9198 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: libosmo-sccp Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: Ide7fe148cc762153330b08f66737816ceed96cb2 Gerrit-Change-Number: 9198 Gerrit-PatchSet: 1 Gerrit-Owner: Pau Espin Pedrol Gerrit-Assignee: Harald Welte Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder Gerrit-Comment-Date: Thu, 17 May 2018 07:18:20 + Gerrit-HasComments: No Gerrit-HasLabels: Yes
Change in libosmo-sccp[master]: tests: xua_test: Fix array len computation
Harald Welte has submitted this change and it was merged. ( https://gerrit.osmocom.org/9199 ) Change subject: tests: xua_test: Fix array len computation .. tests: xua_test: Fix array len computation As warned by gcc 8.1.0: In file included from libosmo-sccp/include/osmocom/sigtran/osmo_ss7.h:7, from libosmo-sccp/include/../src/xua_internal.h:3, from libosmo-sccp/tests/xua/xua_test.c:21: /include/osmocom/core/utils.h:13:34: error: division ‘sizeof (const uint8_t (*)[12] {aka const unsigned char (*)[12]}) / sizeof (const uint8_t[12] {aka const unsigned char[12]})’ does not compute the number of array elements [-Werror=sizeof-pointer-div] #define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0])) ^ libosmo-sccp/tests/xua/xua_test.c:371:45: note: in expansion of macro ‘ARRAY_SIZE’ #define PARTARR(x, data) { .tag = x, .len = ARRAY_SIZE(data), .dat = (uint8_t *) data } Change-Id: Iad5703d68fee26fc83958741512820d2539e604e --- M tests/xua/xua_test.c 1 file changed, 10 insertions(+), 10 deletions(-) Approvals: Jenkins Builder: Verified Harald Welte: Looks good to me, approved diff --git a/tests/xua/xua_test.c b/tests/xua/xua_test.c index 61f21d9..37ba645 100644 --- a/tests/xua/xua_test.c +++ b/tests/xua/xua_test.c @@ -387,8 +387,8 @@ .hdr = XUA_HDR(SUA_MSGC_CL, SUA_CL_CLDT), .parts = { PARTU32(SUA_IEI_PROTO_CLASS, &sua_proto_class0), - PARTARR(SUA_IEI_DEST_ADDR, &sua_addr_ssn_bssmap), - PARTARR(SUA_IEI_SRC_ADDR, &sua_addr_ssn_bssmap), + PARTARR(SUA_IEI_DEST_ADDR, sua_addr_ssn_bssmap), + PARTARR(SUA_IEI_SRC_ADDR, sua_addr_ssn_bssmap), }, }, }, { @@ -398,8 +398,8 @@ .hdr = XUA_HDR(SUA_MSGC_CL, SUA_CL_CLDT), .parts = { PARTU32(SUA_IEI_PROTO_CLASS, &sua_proto_class0), - PARTARR(SUA_IEI_DEST_ADDR, &sua_addr_ssn_bssmap_pc1), - PARTARR(SUA_IEI_SRC_ADDR, &sua_addr_ssn_bssmap_pc92), + PARTARR(SUA_IEI_DEST_ADDR, sua_addr_ssn_bssmap_pc1), + PARTARR(SUA_IEI_SRC_ADDR, sua_addr_ssn_bssmap_pc92), }, }, }, { @@ -409,8 +409,8 @@ .hdr = XUA_HDR(SUA_MSGC_CL, SUA_CL_CLDT), .parts = { PARTU32(SUA_IEI_PROTO_CLASS, &sua_proto_class0), - PARTARR(SUA_IEI_DEST_ADDR, &sua_addr_ssn_bssmap_pc1), - PARTARR(SUA_IEI_SRC_ADDR, &sua_addr_ssn_bssmap_pc92), + PARTARR(SUA_IEI_DEST_ADDR, sua_addr_ssn_bssmap_pc1), + PARTARR(SUA_IEI_SRC_ADDR, sua_addr_ssn_bssmap_pc92), }, }, }, { @@ -420,8 +420,8 @@ .hdr = XUA_HDR(SUA_MSGC_CL, SUA_CL_CLDT), .parts = { PARTU32(SUA_IEI_PROTO_CLASS, &sua_proto_class0), - PARTARR(SUA_IEI_DEST_ADDR, &sua_addr_ssn_bssmap), - PARTARR(SUA_IEI_SRC_ADDR, &sua_addr_ssn_bssmap), + PARTARR(SUA_IEI_DEST_ADDR, sua_addr_ssn_bssmap), + PARTARR(SUA_IEI_SRC_ADDR, sua_addr_ssn_bssmap), }, }, }, { @@ -432,7 +432,7 @@ .parts = { PARTU32(SUA_IEI_PROTO_CLASS, &sua_proto_class2), PARTU32(SUA_IEI_SRC_REF, &sua_loc_ref_bsc), - PARTARR(SUA_IEI_DEST_ADDR, &sua_addr_ssn_bssmap), + PARTARR(SUA_IEI_DEST_ADDR, sua_addr_ssn_bssmap), }, }, }, { @@ -443,7 +443,7 @@ .parts = { PARTU32(SUA_IEI_PROTO_CLASS, &sua_proto_class2), PARTU32(SUA_IEI_SRC_REF, &sua_loc_ref_msc), - PARTARR(SUA_IEI_DEST_ADDR, &sua_addr_ssn_bssmap), + PARTARR(SUA_IEI_DEST_ADDR, sua_addr_ssn_bssmap), }, }, }, { -- To view, visit https://gerrit.osmocom.org/9199 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: libosmo-sccp Gerrit-Branch: master Gerrit-MessageType: merged Gerrit-Change-Id: Iad5703d68fee26fc83958741512820d2539e604e Gerrit-Change-Number: 9199 Gerrit-PatchSet: 1 Gerrit-Owner: Pau Espin Pedrol Gerrit-As
Change in libosmo-sccp[master]: tests: xua_test: Fix array len computation
Harald Welte has posted comments on this change. ( https://gerrit.osmocom.org/9199 ) Change subject: tests: xua_test: Fix array len computation .. Patch Set 1: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/9199 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: libosmo-sccp Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: Iad5703d68fee26fc83958741512820d2539e604e Gerrit-Change-Number: 9199 Gerrit-PatchSet: 1 Gerrit-Owner: Pau Espin Pedrol Gerrit-Assignee: Harald Welte Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder Gerrit-Comment-Date: Thu, 17 May 2018 07:18:51 + Gerrit-HasComments: No Gerrit-HasLabels: Yes
Change in libosmo-sccp[master]: tests: xua_test: Fix use of wrong buffer for dest addr
Harald Welte has submitted this change and it was merged. ( https://gerrit.osmocom.org/9198 ) Change subject: tests: xua_test: Fix use of wrong buffer for dest addr .. tests: xua_test: Fix use of wrong buffer for dest addr All the others parts use that buffer as its name indicates. Change-Id: Ide7fe148cc762153330b08f66737816ceed96cb2 --- M tests/xua/xua_test.c 1 file changed, 1 insertion(+), 1 deletion(-) Approvals: Jenkins Builder: Verified Harald Welte: Looks good to me, approved diff --git a/tests/xua/xua_test.c b/tests/xua/xua_test.c index 3e370fe..61f21d9 100644 --- a/tests/xua/xua_test.c +++ b/tests/xua/xua_test.c @@ -443,7 +443,7 @@ .parts = { PARTU32(SUA_IEI_PROTO_CLASS, &sua_proto_class2), PARTU32(SUA_IEI_SRC_REF, &sua_loc_ref_msc), - PARTARR(SUA_IEI_DEST_ADDR, &sua_loc_ref_bsc), + PARTARR(SUA_IEI_DEST_ADDR, &sua_addr_ssn_bssmap), }, }, }, { -- To view, visit https://gerrit.osmocom.org/9198 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: libosmo-sccp Gerrit-Branch: master Gerrit-MessageType: merged Gerrit-Change-Id: Ide7fe148cc762153330b08f66737816ceed96cb2 Gerrit-Change-Number: 9198 Gerrit-PatchSet: 1 Gerrit-Owner: Pau Espin Pedrol Gerrit-Assignee: Harald Welte Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder
Change in osmo-ttcn3-hacks[master]: MSC_Tests: add test to try two LU from different BSCs
Harald Welte has posted comments on this change. ( https://gerrit.osmocom.org/9204 ) Change subject: MSC_Tests: add test to try two LU from different BSCs .. Patch Set 1: I need to spend some time on this to check if we can somehow avoid having to pass the port referecnce as argument into each test function. -- To view, visit https://gerrit.osmocom.org/9204 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-ttcn3-hacks Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: Ib3eabf8537066f43faed8fb983d9e1f4092ec515 Gerrit-Change-Number: 9204 Gerrit-PatchSet: 1 Gerrit-Owner: dexter Gerrit-Reviewer: Jenkins Builder Gerrit-CC: Harald Welte Gerrit-Comment-Date: Thu, 17 May 2018 07:22:50 + Gerrit-HasComments: No Gerrit-HasLabels: No
Change in osmo-ttcn3-hacks[master]: MSC_Tests: fix iterator in f_init()
Harald Welte has submitted this change and it was merged. ( https://gerrit.osmocom.org/9203 ) Change subject: MSC_Tests: fix iterator in f_init() .. MSC_Tests: fix iterator in f_init() With f_init(), the user has the option to specifiy how many bsc instances should be created. A for loop then iterates over the prepared configurations and calls f_bssap_init(). The first parameter g_bssap is tied to index 0 constantly but should be tied to the iterator i. - use i instad of 0 as iterator for g_bssap Change-Id: I490bab70224d236ab576a2ea3863f6d0afd5f22a --- M msc/MSC_Tests.ttcn 1 file changed, 1 insertion(+), 1 deletion(-) Approvals: Jenkins Builder: Verified Harald Welte: Looks good to me, approved diff --git a/msc/MSC_Tests.ttcn b/msc/MSC_Tests.ttcn index 1ede8e6..edaa61b 100644 --- a/msc/MSC_Tests.ttcn +++ b/msc/MSC_Tests.ttcn @@ -227,7 +227,7 @@ for (var integer i := 0; i < num_bsc; i := i + 1) { if (isbound(mp_bssap_cfg[i])) { - f_bssap_init(g_bssap[0], mp_bssap_cfg[i], "MSC_Test_" & int2str(i), BSC_BssmapOps); + f_bssap_init(g_bssap[i], mp_bssap_cfg[i], "MSC_Test_" & int2str(i), BSC_BssmapOps); } else { setverdict(fail, "missing BSSAP configuration"); } -- To view, visit https://gerrit.osmocom.org/9203 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-ttcn3-hacks Gerrit-Branch: master Gerrit-MessageType: merged Gerrit-Change-Id: I490bab70224d236ab576a2ea3863f6d0afd5f22a Gerrit-Change-Number: 9203 Gerrit-PatchSet: 1 Gerrit-Owner: dexter Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder
Change in osmo-mgw[master]: network: independently initalize state->out_stream
Harald Welte has submitted this change and it was merged. ( https://gerrit.osmocom.org/9197 ) Change subject: network: independently initalize state->out_stream .. network: independently initalize state->out_stream The struct state->out_stream.ssrc is initalized by first initalizing state->in_stream and then copying state->in_stream over to state->out_stream. This works as long as no pointers to other objects are added to struct mgcp_rtp_stream_state but we may add pointers to struct mgcp_rtp_stream_state in the future. - Initalize out_stream and in_stream independently from each other Change-Id: I5deb27e609448ee0b9f7034e644ae96f1e57887a Related: OS#2517 --- M src/libosmo-mgcp/mgcp_network.c 1 file changed, 3 insertions(+), 1 deletion(-) Approvals: Jenkins Builder: Verified Harald Welte: Looks good to me, approved diff --git a/src/libosmo-mgcp/mgcp_network.c b/src/libosmo-mgcp/mgcp_network.c index 6923b97..49e51a1 100644 --- a/src/libosmo-mgcp/mgcp_network.c +++ b/src/libosmo-mgcp/mgcp_network.c @@ -511,7 +511,9 @@ state->in_stream.last_tsdelta = 0; state->packet_duration = mgcp_rtp_packet_duration(endp, rtp_end); - state->out_stream = state->in_stream; + state->out_stream.last_seq = seq - 1; + state->out_stream.ssrc = state->patch.orig_ssrc = ssrc; + state->out_stream.last_tsdelta = 0; state->out_stream.last_timestamp = timestamp; state->out_stream.ssrc = ssrc - 1; /* force output SSRC change */ LOGP(DRTP, LOGL_INFO, -- To view, visit https://gerrit.osmocom.org/9197 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-mgw Gerrit-Branch: master Gerrit-MessageType: merged Gerrit-Change-Id: I5deb27e609448ee0b9f7034e644ae96f1e57887a Gerrit-Change-Number: 9197 Gerrit-PatchSet: 1 Gerrit-Owner: dexter Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder
Change in osmo-ttcn3-hacks[master]: MSC_Tests: fix iterator in f_init()
Harald Welte has posted comments on this change. ( https://gerrit.osmocom.org/9203 ) Change subject: MSC_Tests: fix iterator in f_init() .. Patch Set 1: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/9203 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-ttcn3-hacks Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I490bab70224d236ab576a2ea3863f6d0afd5f22a Gerrit-Change-Number: 9203 Gerrit-PatchSet: 1 Gerrit-Owner: dexter Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder Gerrit-Comment-Date: Thu, 17 May 2018 07:23:30 + Gerrit-HasComments: No Gerrit-HasLabels: Yes
Change in osmo-pcu[master]: tbf: Fix memset(0) on object with no trivial copy-assignment
Harald Welte has submitted this change and it was merged. ( https://gerrit.osmocom.org/9200 ) Change subject: tbf: Fix memset(0) on object with no trivial copy-assignment .. tbf: Fix memset(0) on object with no trivial copy-assignment As warned by gcc 8.1.0: osmo-pcu/src/tbf.cpp: In constructor ‘gprs_rlcmac_tbf::gprs_rlcmac_tbf(BTS*, gprs_rlcmac_tbf_direction)’: osmo-pcu/src/tbf.cpp:222:33: error: ‘void* memset(void*, int, size_t)’ clearing an object of type ‘struct gprs_rlc’ with no trivial copy-assignment; use assignment or value-initialization instead [-Werror=class-memaccess] memset(&m_rlc, 0, sizeof(m_rlc)); ^ In file included from osmo-pcu/src/tbf.h:24, from osmo-pcu/src/bts.h:37, from osmo-pcu/src/tbf.cpp:22: osmo-pcu/src/rlc.h:234:8: note: ‘struct gprs_rlc’ declared here struct gprs_rlc { ^~~~ Change-Id: Ifb0529b9ae6cd4300e5cbbd9151054792edbfe06 --- M src/rlc.h M src/tbf.cpp 2 files changed, 8 insertions(+), 1 deletion(-) Approvals: Jenkins Builder: Verified Harald Welte: Looks good to me, approved diff --git a/src/rlc.h b/src/rlc.h index aac6b13..5b6a0dd 100644 --- a/src/rlc.h +++ b/src/rlc.h @@ -24,6 +24,7 @@ #include #include +#include #define RLC_GPRS_SNS 128 /* GPRS, must be power of 2 */ #define RLC_GPRS_WS 64 /* max window size */ @@ -232,6 +233,7 @@ * the routines to manipulate these arrays. */ struct gprs_rlc { + void init(); gprs_rlc_data *block(int bsn); gprs_rlc_data m_blocks[RLC_MAX_SNS/2]; }; @@ -647,6 +649,11 @@ return m_v_n[bsn & mod_sns_half()]; } +inline void gprs_rlc::init() +{ + memset(m_blocks, 0, sizeof(m_blocks)); +} + inline gprs_rlc_data *gprs_rlc::block(int bsn) { return &m_blocks[bsn & mod_sns_half()]; diff --git a/src/tbf.cpp b/src/tbf.cpp index d5fbb3f..14c1ee2 100644 --- a/src/tbf.cpp +++ b/src/tbf.cpp @@ -219,9 +219,9 @@ memset(&pdch, 0, sizeof(pdch)); memset(&T, 0, sizeof(T)); memset(&N, 0, sizeof(N)); - memset(&m_rlc, 0, sizeof(m_rlc)); memset(&gsm_timer, 0, sizeof(gsm_timer)); + m_rlc.init(); m_llc.init(); m_name_buf[0] = '\0'; -- To view, visit https://gerrit.osmocom.org/9200 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-pcu Gerrit-Branch: master Gerrit-MessageType: merged Gerrit-Change-Id: Ifb0529b9ae6cd4300e5cbbd9151054792edbfe06 Gerrit-Change-Number: 9200 Gerrit-PatchSet: 1 Gerrit-Owner: Pau Espin Pedrol Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder
Change in osmo-pcu[master]: rlc: Fix memset(0) on object with no trivial copy-assignment
Harald Welte has posted comments on this change. ( https://gerrit.osmocom.org/9201 ) Change subject: rlc: Fix memset(0) on object with no trivial copy-assignment .. Patch Set 1: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/9201 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-pcu Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: Id742f82aa856e696b5fb414991dfd0883d0ac7fe Gerrit-Change-Number: 9201 Gerrit-PatchSet: 1 Gerrit-Owner: Pau Espin Pedrol Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder Gerrit-Comment-Date: Thu, 17 May 2018 07:25:31 + Gerrit-HasComments: No Gerrit-HasLabels: Yes
Change in osmo-pcu[master]: tbf: Fix memset(0) on object with no trivial copy-assignment
Harald Welte has posted comments on this change. ( https://gerrit.osmocom.org/9200 ) Change subject: tbf: Fix memset(0) on object with no trivial copy-assignment .. Patch Set 1: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/9200 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-pcu Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: Ifb0529b9ae6cd4300e5cbbd9151054792edbfe06 Gerrit-Change-Number: 9200 Gerrit-PatchSet: 1 Gerrit-Owner: Pau Espin Pedrol Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder Gerrit-Comment-Date: Thu, 17 May 2018 07:25:49 + Gerrit-HasComments: No Gerrit-HasLabels: Yes
Change in osmo-pcu[master]: rlc: Fix memset(0) on object with no trivial copy-assignment
Harald Welte has submitted this change and it was merged. ( https://gerrit.osmocom.org/9201 ) Change subject: rlc: Fix memset(0) on object with no trivial copy-assignment .. rlc: Fix memset(0) on object with no trivial copy-assignment As warned by gcc 8.1.0, the cs field is a class (GprsCodingScheme) and should not be memset. Change-Id: Id742f82aa856e696b5fb414991dfd0883d0ac7fe --- M src/rlc.cpp 1 file changed, 10 insertions(+), 3 deletions(-) Approvals: Jenkins Builder: Verified Harald Welte: Looks good to me, approved diff --git a/src/rlc.cpp b/src/rlc.cpp index a82f550..ee88bd9 100644 --- a/src/rlc.cpp +++ b/src/rlc.cpp @@ -326,11 +326,18 @@ unsigned int i; unsigned int padding_bits = with_padding ? cs.optionalPaddingBits() : 0; - memset(rlc, 0, sizeof(*rlc)); - rlc->cs = cs; - rlc->with_padding = with_padding; + rlc->r = 0; + rlc->si = 0; + rlc->tfi = 0; + rlc->cps = 0; + rlc->rsb = 0; + rlc->usf = 0; + rlc->es_p = 0; + rlc->rrbp = 0; + rlc->pr = 0; rlc->num_data_blocks = cs.numDataBlocks(); + rlc->with_padding = with_padding; OSMO_ASSERT(rlc->num_data_blocks <= ARRAY_SIZE(rlc->block_info)); -- To view, visit https://gerrit.osmocom.org/9201 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-pcu Gerrit-Branch: master Gerrit-MessageType: merged Gerrit-Change-Id: Id742f82aa856e696b5fb414991dfd0883d0ac7fe Gerrit-Change-Number: 9201 Gerrit-PatchSet: 1 Gerrit-Owner: Pau Espin Pedrol Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder
Change in libosmo-netif[master]: tests: jibuf_test: Set some functions as static
Harald Welte has submitted this change and it was merged. ( https://gerrit.osmocom.org/9170 ) Change subject: tests: jibuf_test: Set some functions as static .. tests: jibuf_test: Set some functions as static Change-Id: I3af6db3fd74d55c5e659132fc542f22478a55eb7 --- M tests/jibuf/jibuf_test.c 1 file changed, 2 insertions(+), 2 deletions(-) Approvals: Jenkins Builder: Verified Harald Welte: Looks good to me, approved diff --git a/tests/jibuf/jibuf_test.c b/tests/jibuf/jibuf_test.c index 6e8c805..c0c24fd 100644 --- a/tests/jibuf/jibuf_test.c +++ b/tests/jibuf/jibuf_test.c @@ -619,7 +619,7 @@ osmo_jibuf_delete(jb); } -void test_rtp_out_of_sync(unsigned int time_inc_ms, uint16_t seq_nosync_inc, uint32_t ts_nosync_inc, bool expect_drop) +static void test_rtp_out_of_sync(unsigned int time_inc_ms, uint16_t seq_nosync_inc, uint32_t ts_nosync_inc, bool expect_drop) { int min_delay = 60; struct msgb *msg; @@ -686,7 +686,7 @@ } -void test_skew(unsigned int skew_inc_us, bool skew_compensation) { +static void test_skew(unsigned int skew_inc_us, bool skew_compensation) { int min_delay = 40; unsigned int dropped = 0; struct msgb *msg; -- To view, visit https://gerrit.osmocom.org/9170 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: libosmo-netif Gerrit-Branch: master Gerrit-MessageType: merged Gerrit-Change-Id: I3af6db3fd74d55c5e659132fc542f22478a55eb7 Gerrit-Change-Number: 9170 Gerrit-PatchSet: 1 Gerrit-Owner: Pau Espin Pedrol Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder
Change in libosmo-netif[master]: tests: jibuf_test: Add scenario to show out-of-order bug
Harald Welte has submitted this change and it was merged. ( https://gerrit.osmocom.org/9171 ) Change subject: tests: jibuf_test: Add scenario to show out-of-order bug .. tests: jibuf_test: Add scenario to show out-of-order bug Related: OS#3262 Change-Id: I1e78cc44f8a04dcb983352b513f8de2574b2394b --- M tests/jibuf/jibuf_test.c M tests/jibuf/jibuf_test.ok 2 files changed, 83 insertions(+), 0 deletions(-) Approvals: Jenkins Builder: Verified Harald Welte: Looks good to me, approved diff --git a/tests/jibuf/jibuf_test.c b/tests/jibuf/jibuf_test.c index c0c24fd..7993a65 100644 --- a/tests/jibuf/jibuf_test.c +++ b/tests/jibuf/jibuf_test.c @@ -619,6 +619,66 @@ osmo_jibuf_delete(jb); } +/* This test aims at testing scenarios described in OS#3262, in which syncpoint + packets can provoke a situation in which packets are stored out-of-order in + the queue. */ +static void test_rtp_marker_queue_order() +{ + int min_delay = 60; + struct msgb *msg; + struct rtp_hdr *rtph; + + printf("===test_rtp_marker_queue_order===\n"); + + clock_override_enable(true); + clock_override_set(0, 0); + rtp_init(32, 400); + jb = osmo_jibuf_alloc(NULL); + osmo_jibuf_set_dequeue_cb(jb, dequeue_cb, NULL); + osmo_jibuf_set_min_delay(jb, min_delay); + osmo_jibuf_set_max_delay(jb, 200); + + /* First rtp at t=0, should be scheduled in min_delay time */ + clock_debug("enqueue 1st packet"); + ENQUEUE_NEXT(jb); + clock_override_add(0, TIME_RTP_PKT_MS*1000); + clock_debug("enqueue 2nd packet"); + ENQUEUE_NEXT(jb); + clock_override_add(0, TIME_RTP_PKT_MS*1000); + clock_debug("enqueue 3rd packet"); + ENQUEUE_NEXT(jb); + clock_override_add(0, TIME_RTP_PKT_MS*1000); + + /* We then emulate an scenario in which an Osmux queue in front of us + receives a new frame before expected time, which means the packets in + the osmux genreated rtp queue will be flushed and sent to jibuf + directly. On top, the first packet of the new frame has the RTP + Marker bit set. */ + clock_debug("enqueue 3 packets instantly"); + ENQUEUE_NEXT(jb); /* scheduled min_delay+0 */ + ENQUEUE_NEXT(jb); /* a min_delay+TIME_RTP_PKT_MS */ + ENQUEUE_NEXT(jb); /* scheduled min_delay+TIME_RTP_PKT_MS*2 */ + clock_debug("enqueue pkt with marker=1 instantly"); + msg = rtp_next(); + rtph = osmo_rtp_get_hdr(msg); + rtph->marker = 1; + OSMO_ASSERT(osmo_jibuf_enqueue(jb, msg) == 0); /* syncpoint, scheduled in min_delay+0 */ + osmo_select_main(0); + + clock_override_add(0, TIME_RTP_PKT_MS*1000); + clock_debug("enqueue pkt after syncpoint"); + ENQUEUE_NEXT(jb); /* scheduled min_delay+0 */ + + clock_debug("all packets dequeued"); + clock_override_add(0, min_delay*1000); + osmo_select_main(0); + + /* This assert shows that packets are queued out of order in this case:*/ + OSMO_ASSERT(!osmo_jibuf_empty(jb)); + + osmo_jibuf_delete(jb); +} + static void test_rtp_out_of_sync(unsigned int time_inc_ms, uint16_t seq_nosync_inc, uint32_t ts_nosync_inc, bool expect_drop) { int min_delay = 60; @@ -754,6 +814,7 @@ test_seq_wraparound(); test_timestamp_wraparound(); test_rtp_marker(); + test_rtp_marker_queue_order(); test_rtp_out_of_sync(80*TIME_RTP_PKT_MS, 5, 5*SAMPLES_PER_PKT, true); test_rtp_out_of_sync(80*TIME_RTP_PKT_MS, 6, 5*SAMPLES_PER_PKT, false); test_rtp_out_of_sync(80*TIME_RTP_PKT_MS, 5, 5*SAMPLES_PER_PKT + 3, false); diff --git a/tests/jibuf/jibuf_test.ok b/tests/jibuf/jibuf_test.ok index e495435..6bf52fb 100644 --- a/tests/jibuf/jibuf_test.ok +++ b/tests/jibuf/jibuf_test.ok @@ -365,6 +365,28 @@ sys={0.20}, mono={0.20}: clock_override_add sys={0.20}, mono={0.20}: dequeue: seq=35 ts=880 INTERMEDIATE sys={0.20}, mono={0.20}: dequeue: seq=36 ts=1040 LATEST +===test_rtp_marker_queue_order=== +sys={0.00}, mono={0.00}: clock_override_set +sys={0.00}, mono={0.00}: enqueue 1st packet +sys={0.02}, mono={0.02}: clock_override_add +sys={0.02}, mono={0.02}: enqueue 2nd packet +sys={0.04}, mono={0.04}: clock_override_add +sys={0.04}, mono={0.04}: enqueue 3rd packet +sys={0.06}, mono={0.06}: clock_override_add +sys={0.06}, mono={0.06}: enqueue 3 packets instantly +sys={0.06}, mono={0.06}: enqueue pkt with marker=1 instantly +sys={0.06}, mono={0.06}: dequeue: seq=33 ts=560 INTERMEDIATE +sys={0.08}, mono={0.08}: clock_override_add +sys={0.08}, mono={0.08}: enqueue pkt after syncpoint +sys={0.08}, mono={0.08}: all packets dequeued +sys={0.14}, mono={0.14}: clock_override_add +sys={0.14}, mono={0.14}: dequeue: seq=34 ts=720 INTERMEDIATE +
Change in osmocom-bb[master]: Minor Typo Changes
Nikos Balkanas has uploaded this change for review. ( https://gerrit.osmocom.org/9210 Change subject: Minor Typo Changes .. Minor Typo Changes Change-Id: I69126638d81d98ce8236cae543515c8dc743f404 --- M src/shared/libosmocore/configure.ac 1 file changed, 1 insertion(+), 1 deletion(-) git pull ssh://gerrit.osmocom.org:29418/osmocom-bb refs/changes/10/9210/1 diff --git a/src/shared/libosmocore/configure.ac b/src/shared/libosmocore/configure.ac index 24ddd0c..0ceb8e6 100644 --- a/src/shared/libosmocore/configure.ac +++ b/src/shared/libosmocore/configure.ac @@ -1,6 +1,6 @@ AC_INIT([libosmocore], m4_esyscmd([./git-version-gen .tarball-version]), - [open...@lists.osmocom.org]) + [baseband-de...@lists.osmocom.org]) AM_INIT_AUTOMAKE([foreign dist-bzip2 no-dist-gzip 1.6]) AC_CONFIG_TESTDIR(tests) -- To view, visit https://gerrit.osmocom.org/9210 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmocom-bb Gerrit-Branch: master Gerrit-MessageType: newchange Gerrit-Change-Id: I69126638d81d98ce8236cae543515c8dc743f404 Gerrit-Change-Number: 9210 Gerrit-PatchSet: 1 Gerrit-Owner: Nikos Balkanas
Change in osmocom-bb[master]: Minor Typo Changes
Pau Espin Pedrol has posted comments on this change. ( https://gerrit.osmocom.org/9210 ) Change subject: Minor Typo Changes .. Patch Set 1: Code-Review-1 Please, describe the context in which the change is done (ie. the file/section modified) and provide more accurate description. Something like this would make more sense here: "configure.ac: Update mailing list info to point to baseband-devel" -- To view, visit https://gerrit.osmocom.org/9210 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmocom-bb Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I69126638d81d98ce8236cae543515c8dc743f404 Gerrit-Change-Number: 9210 Gerrit-PatchSet: 1 Gerrit-Owner: Nikos Balkanas Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Pau Espin Pedrol Gerrit-Comment-Date: Thu, 17 May 2018 09:08:48 + Gerrit-HasComments: No Gerrit-HasLabels: Yes
Change in osmocom-bb[master]: Minor Typo Fixes
Pau Espin Pedrol has posted comments on this change. ( https://gerrit.osmocom.org/9209 ) Change subject: Minor Typo Fixes .. Patch Set 1: Same here, if possible add the file name modified when pushing again: "README.building: Update link describing how to install ARM toolchain" -- To view, visit https://gerrit.osmocom.org/9209 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmocom-bb Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: Ie5b1e0f23df23d5831059a1c3c9b16ee89963612 Gerrit-Change-Number: 9209 Gerrit-PatchSet: 1 Gerrit-Owner: Nikos Balkanas Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder Gerrit-CC: Pau Espin Pedrol Gerrit-Comment-Date: Thu, 17 May 2018 09:10:30 + Gerrit-HasComments: No Gerrit-HasLabels: No
Change in libosmo-netif[master]: jibuf: Fix out-of-order seq queue around syncpoints
Pau Espin Pedrol has posted comments on this change. ( https://gerrit.osmocom.org/9172 ) Change subject: jibuf: Fix out-of-order seq queue around syncpoints .. Patch Set 1: I'll +2 this in a few hours if nobody finds an issue. -- To view, visit https://gerrit.osmocom.org/9172 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: libosmo-netif Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: Ib8c61dbe6261cf73d6efcd7873e23b7656117556 Gerrit-Change-Number: 9172 Gerrit-PatchSet: 1 Gerrit-Owner: Pau Espin Pedrol Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Pau Espin Pedrol Gerrit-Comment-Date: Thu, 17 May 2018 09:14:43 + Gerrit-HasComments: No Gerrit-HasLabels: No
Change in libosmo-netif[master]: jibuf: Fix out-of-order seq queue around syncpoints
Harald Welte has posted comments on this change. ( https://gerrit.osmocom.org/9172 ) Change subject: jibuf: Fix out-of-order seq queue around syncpoints .. Patch Set 1: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/9172 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: libosmo-netif Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: Ib8c61dbe6261cf73d6efcd7873e23b7656117556 Gerrit-Change-Number: 9172 Gerrit-PatchSet: 1 Gerrit-Owner: Pau Espin Pedrol Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Pau Espin Pedrol Gerrit-Comment-Date: Thu, 17 May 2018 09:37:34 + Gerrit-HasComments: No Gerrit-HasLabels: Yes
Change in osmo-msc[master]: implement periodic Location Update expiry in the VLR
Stefan Sperling has uploaded this change for review. ( https://gerrit.osmocom.org/9211 Change subject: implement periodic Location Update expiry in the VLR .. implement periodic Location Update expiry in the VLR Remove subscribers which fail to send periodic Location Updates from the list of subscribers known to the VLR. This complements the IMSI detach procedure: periodic LU expiry triggers an implicit IMSI detach. Expired subscribers are purged from a periodic timer which iterates over all subscribers once per minute. Subscribers with an active connection do not expire. This is controlled by the subscriber conn FSM which sets a subscriber's the LU expiry timeout value to GSM_SUBSCRIBER_NO_EXPIRATION while a connection is active. Related: OS#1976 Change-Id: Iebdee8b12d22acfcfb265ee41e71cfc8d9eb3ba9 --- M include/osmocom/msc/gsm_subscriber.h M include/osmocom/msc/vlr.h M src/libmsc/subscr_conn.c M src/libvlr/vlr.c M src/libvlr/vlr_lu_fsm.c M tests/msc_vlr/msc_vlr_test_no_authen.c M tests/msc_vlr/msc_vlr_test_no_authen.err 7 files changed, 273 insertions(+), 1 deletion(-) git pull ssh://gerrit.osmocom.org:29418/osmo-msc refs/changes/11/9211/1 diff --git a/include/osmocom/msc/gsm_subscriber.h b/include/osmocom/msc/gsm_subscriber.h index 16e1037..50b4a23 100644 --- a/include/osmocom/msc/gsm_subscriber.h +++ b/include/osmocom/msc/gsm_subscriber.h @@ -18,6 +18,7 @@ /* gprs_sgsn.h defines additional flags including and above bit 16 (0x1) */ #define GSM_SUBSCRIBER_NO_EXPIRATION 0x0 +#define GSM_SUBSCRIBER_LU_EXPIRATION_INTERVAL 60 /* in seconds */ enum gsm_subscriber_field { GSM_SUBSCRIBER_IMSI, diff --git a/include/osmocom/msc/vlr.h b/include/osmocom/msc/vlr.h index 0a9ef6f..c647ddc 100644 --- a/include/osmocom/msc/vlr.h +++ b/include/osmocom/msc/vlr.h @@ -148,6 +148,7 @@ struct osmo_fsm_inst *proc_arq_fsm; bool lu_complete; + time_t expire_lu; void *msc_conn_ref; @@ -237,6 +238,7 @@ struct llist_head operations; struct gsup_client *gsup_client; struct vlr_ops ops; + struct osmo_timer_list lu_expire_timer; struct { bool retrieve_imeisv_early; bool retrieve_imeisv_ciphered; @@ -379,6 +381,7 @@ enum osmo_fsm_term_cause fsm_cause, uint8_t gsm48_cause); +void vlr_subscr_enable_expire_lu(struct vlr_subscr *vsub); /* Process Acccess Request FSM */ diff --git a/src/libmsc/subscr_conn.c b/src/libmsc/subscr_conn.c index 1b3b240..50d7be6 100644 --- a/src/libmsc/subscr_conn.c +++ b/src/libmsc/subscr_conn.c @@ -202,6 +202,11 @@ static void subscr_conn_fsm_accepted_enter(struct osmo_fsm_inst *fi, uint32_t prev_state) { + struct gsm_subscriber_connection *conn = fi->priv; + + /* Stop location update expiry for this subscriber. */ + conn->vsub->expire_lu = GSM_SUBSCRIBER_NO_EXPIRATION; + if (!subscr_conn_fsm_has_active_transactions(fi)) osmo_fsm_inst_dispatch(fi, SUBSCR_CONN_E_UNUSED, NULL); } @@ -278,6 +283,11 @@ /* Cancel all VLR FSMs, if any */ vlr_subscr_cancel_attach_fsm(conn->vsub, OSMO_FSM_TERM_ERROR, GSM48_REJECT_CONGESTION); + if (conn->vsub) { + /* Restart LU expiry for this subscriber. */ + vlr_subscr_enable_expire_lu(conn->vsub); + } + /* If we're closing in a middle of a trans, we need to clean up */ trans_conn_closed(conn); diff --git a/src/libvlr/vlr.c b/src/libvlr/vlr.c index 2d232be..b5274ba 100644 --- a/src/libvlr/vlr.c +++ b/src/libvlr/vlr.c @@ -22,6 +22,7 @@ #include #include #include +#include #include #include #include @@ -460,6 +461,54 @@ return 0; } +void +vlr_subscr_enable_expire_lu(struct vlr_subscr *vsub) +{ + struct gsm_network *net = vsub->vlr->user_ctx; /* XXX move t3212 into struct vlr_instance? */ + struct timeval now; + + /* Table 10.5.33: The T3212 timeout value is coded as the +* binary representation of the timeout value for +* periodic updating in decihours. Mark the subscriber as +* inactive if it missed two consecutive location updates. +* Timeout is twice the t3212 value plus one minute */ + if (osmo_gettimeofday(&now, NULL) == 0) { + vsub->expire_lu = now.tv_sec + (net->t3212 * 60 * 6 * 2) + 60; + } else { + LOGP(DVLR, LOGL_ERROR, +"IMSI=%s id=%llu: Could not enable Location Update expiry: unable to read current time\n", +vsub->imsi, vsub->id); + vsub->expire_lu = GSM_SUBSCRIBER_NO_EXPIRATION; /* XXX */ + } +} + +void +vlr_subscr_expire_lu(void *data) +{ + struct vlr_instance *vlr = data; + struct vlr_subscr *vsub, *vsub_tmp; + struct timeval now; + + if (llist_empty(&vlr->subscribers)) +
Change in libosmocore[master]: use reasonable value if PATH_MAX is not defined
Harald Welte has posted comments on this change. ( https://gerrit.osmocom.org/9202 ) Change subject: use reasonable value if PATH_MAX is not defined .. Patch Set 1: Actually, I think this ultimately belongs into autoconf: # Some Unix systems, like Gnu Hurd, don't define PATH_MAX AC_MSG_CHECKING([for PATH_MAX]) AC_COMPILE_IFELSE( [AC_LANG_PROGRAM([[#include ]], [[char dummy[PATH_MAX];]])], [ AC_MSG_RESULT([yes]) AC_DEFINE_UNQUOTED([HAVE_PATH_MAX], 1, [Define to 1 if you have the PATH_MAX macro.]) ], [ AC_MSG_RESULT([no]) AC_DEFINE_UNQUOTED([HAVE_PATH_MAX], 0, [Define to 1 if you have the PATH_MAX macro.]) ] ) and then we can have (in a shared header) #if HAVE_PATH_MAX=0 #define PATH_MAX 4096 #endif -- To view, visit https://gerrit.osmocom.org/9202 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: libosmocore Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: Ia884f4c96b4c4eaa1a1be256e3ccda0b4dec4099 Gerrit-Change-Number: 9202 Gerrit-PatchSet: 1 Gerrit-Owner: Thorsten Alteholz Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Pau Espin Pedrol Gerrit-Reviewer: Vadim Yanitskiy Gerrit-CC: Harald Welte Gerrit-Comment-Date: Thu, 17 May 2018 09:39:50 + Gerrit-HasComments: No Gerrit-HasLabels: No
Change in osmo-mgw[master]: stats: use libosmocore rate counter for in/out_stream.err_ts_counter
Harald Welte has posted comments on this change. ( https://gerrit.osmocom.org/8086 ) Change subject: stats: use libosmocore rate counter for in/out_stream.err_ts_counter .. Patch Set 3: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/8086 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-mgw Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I9fbd65bf2f4d1e015a05996db4c1f7ff20be2c95 Gerrit-Change-Number: 8086 Gerrit-PatchSet: 3 Gerrit-Owner: dexter Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Neels Hofmeyr Gerrit-Comment-Date: Thu, 17 May 2018 09:41:24 + Gerrit-HasComments: No Gerrit-HasLabels: Yes
Change in osmo-mgw[master]: stats: use libosmocore rate counter for in/out_stream.err_ts_counter
Harald Welte has submitted this change and it was merged. ( https://gerrit.osmocom.org/8086 ) Change subject: stats: use libosmocore rate counter for in/out_stream.err_ts_counter .. stats: use libosmocore rate counter for in/out_stream.err_ts_counter The two counters: in_stream.err_ts_counter and out_stream.err_ts_counter are still handcoded. To make them better accessible they should be replaced with libosmocore rate counters. - replace state.in_stream.err_ts_counter with libosmocore rate counter - replace state.out_stream.err_ts_counter with libosmocore rate counter Change-Id: I9fbd65bf2f4d1e015a05996db4c1f7ff20be2c95 Related: OS#2517 --- M include/osmocom/mgcp/mgcp_internal.h M src/libosmo-mgcp/mgcp_conn.c M src/libosmo-mgcp/mgcp_network.c M src/libosmo-mgcp/mgcp_stat.c M src/libosmo-mgcp/mgcp_vty.c M tests/mgcp/mgcp_test.c 6 files changed, 58 insertions(+), 16 deletions(-) Approvals: Jenkins Builder: Verified Harald Welte: Looks good to me, approved diff --git a/include/osmocom/mgcp/mgcp_internal.h b/include/osmocom/mgcp/mgcp_internal.h index 0da2c56..ff02768 100644 --- a/include/osmocom/mgcp/mgcp_internal.h +++ b/include/osmocom/mgcp/mgcp_internal.h @@ -28,6 +28,7 @@ #include #include #include +#include #define CI_UNUSED 0 @@ -45,7 +46,7 @@ uint32_t ssrc; uint16_t last_seq; uint32_t last_timestamp; - uint32_t err_ts_counter; + struct rate_ctr *err_ts_ctr; int32_t last_tsdelta; uint32_t last_arrival_time; }; @@ -202,6 +203,8 @@ uint32_t octets; } stats; } osmux; + + struct rate_ctr_group *rate_ctr_group; }; /*! Connection type, specifies which member of the union "u" in mgcp_conn diff --git a/src/libosmo-mgcp/mgcp_conn.c b/src/libosmo-mgcp/mgcp_conn.c index 998dbc5..280ee8b 100644 --- a/src/libosmo-mgcp/mgcp_conn.c +++ b/src/libosmo-mgcp/mgcp_conn.c @@ -26,8 +26,29 @@ #include #include #include +#include #include +enum { + IN_STREAM_ERR_TSTMP_CTR, + OUT_STREAM_ERR_TSTMP_CTR, +}; + +static const struct rate_ctr_desc rate_ctr_desc[] = { + [IN_STREAM_ERR_TSTMP_CTR] = {"stream_err_tstmp:in", "Inbound rtp-stream timestamp errors."}, + [OUT_STREAM_ERR_TSTMP_CTR] = {"stream_err_tstmp:out", "Outbound rtp-stream timestamp errors."}, +}; + + +const static struct rate_ctr_group_desc rate_ctr_group_desc = { + .group_name_prefix = "conn_rtp", + .group_description = "rtp connection statistics", + .class_id = 1, + .num_ctr = 2, + .ctr_desc = rate_ctr_desc +}; + + /* Allocate a new connection identifier. According to RFC3435, they must * be unique only within the scope of the endpoint. (Caller must provide * memory for id) */ @@ -87,6 +108,10 @@ static void mgcp_rtp_conn_init(struct mgcp_conn_rtp *conn_rtp, struct mgcp_conn *conn) { struct mgcp_rtp_end *end = &conn_rtp->end; + /* FIXME: Each new rate counter group requires an unique index. At the +* moment we generate this index using this counter, but perhaps there +* is a more concious way to assign the indexes. */ + static unsigned int rate_ctr_index = 0; conn_rtp->type = MGCP_RTP_DEFAULT; conn_rtp->osmux.allocated_cid = -1; @@ -108,6 +133,11 @@ mgcp_rtp_codec_init(&end->codec); mgcp_rtp_codec_init(&end->alt_codec); + + conn_rtp->rate_ctr_group = rate_ctr_group_alloc(conn, &rate_ctr_group_desc, rate_ctr_index); + conn_rtp->state.in_stream.err_ts_ctr = &conn_rtp->rate_ctr_group->ctr[IN_STREAM_ERR_TSTMP_CTR]; + conn_rtp->state.out_stream.err_ts_ctr = &conn_rtp->rate_ctr_group->ctr[OUT_STREAM_ERR_TSTMP_CTR]; + rate_ctr_index++; } /* Cleanup rtp connection struct */ @@ -116,6 +146,7 @@ osmux_disable_conn(conn_rtp); osmux_release_cid(conn_rtp); mgcp_free_rtp_port(&conn_rtp->end); + rate_ctr_group_free(conn_rtp->rate_ctr_group); } /*! allocate a new connection list entry. diff --git a/src/libosmo-mgcp/mgcp_network.c b/src/libosmo-mgcp/mgcp_network.c index 49e51a1..4144382 100644 --- a/src/libosmo-mgcp/mgcp_network.c +++ b/src/libosmo-mgcp/mgcp_network.c @@ -222,7 +222,7 @@ if (seq == sstate->last_seq) { if (timestamp != sstate->last_timestamp) { - sstate->err_ts_counter += 1; + rate_ctr_inc(sstate->err_ts_ctr); LOGP(DRTP, LOGL_ERROR, "The %s timestamp delta is != 0 but the sequence " "number %d is the same, " @@ -272,7 +272,7 @@ ts_alignment_error(sstate, state->packet_duration, timestamp); if (timestamp_error) { - sstate->err_ts_counter += 1; + rate_ctr_inc(sstate->err_ts_ctr); LOGP(DRTP, LOGL_NOTICE, "The %s timestamp has an alignme
Change in osmo-msc[master]: implement periodic Location Update expiry in the VLR
Harald Welte has posted comments on this change. ( https://gerrit.osmocom.org/9211 ) Change subject: implement periodic Location Update expiry in the VLR .. Patch Set 1: Code-Review-1 (4 comments) https://gerrit.osmocom.org/#/c/9211/1/src/libmsc/subscr_conn.c File src/libmsc/subscr_conn.c: https://gerrit.osmocom.org/#/c/9211/1/src/libmsc/subscr_conn.c@207 PS1, Line 207: /* Stop location update expiry for this subscriber. */ the comment states what's easily deducted from the line below. What the comment doesn't say (and I don't understand): Why are we stopping expiration here? https://gerrit.osmocom.org/#/c/9211/1/src/libvlr/vlr.c File src/libvlr/vlr.c: https://gerrit.osmocom.org/#/c/9211/1/src/libvlr/vlr.c@465 PS1, Line 465: vlr_subscr_enable_expire_lu(struct vlr_subscr *vsub) we don't generally break lines ahead of the function name https://gerrit.osmocom.org/#/c/9211/1/src/libvlr/vlr.c@475 PS1, Line 475: if (osmo_gettimeofday(&now, NULL) == 0) { I think we had the discussion about gettimeofday already (think of time adjustments due to ntpdate, ...), especially on embedded systems without RTC, where at boot time we don't have a valid wall-clock time. https://gerrit.osmocom.org/#/c/9211/1/src/libvlr/vlr.c@481 PS1, Line 481: vsub->expire_lu = GSM_SUBSCRIBER_NO_EXPIRATION; /* XXX */ what does the XXX mean here? -- To view, visit https://gerrit.osmocom.org/9211 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-msc Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: Iebdee8b12d22acfcfb265ee41e71cfc8d9eb3ba9 Gerrit-Change-Number: 9211 Gerrit-PatchSet: 1 Gerrit-Owner: Stefan Sperling Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder Gerrit-Comment-Date: Thu, 17 May 2018 09:46:14 + Gerrit-HasComments: Yes Gerrit-HasLabels: Yes
Change in libosmocore[master]: gsm: kasumi: Fix dynamic-stack-buffer-overflow on out buffers not mul...
Hello Max, Jenkins Builder, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/9207 to look at the new patch set (#3). Change subject: gsm: kasumi: Fix dynamic-stack-buffer-overflow on out buffers not multiple of 64 bits .. gsm: kasumi: Fix dynamic-stack-buffer-overflow on out buffers not multiple of 64 bits Fixes following AddressSanitizer report during gea_test run with gcc 8.1.0: ==8899==ERROR: AddressSanitizer: dynamic-stack-buffer-overflow on address 0x7ffc5f1719bb at pc 0x7fe574adc5fe bp 0x7ffc5f171460 sp 0x7ffc5f171450 WRITE of size 1 at 0x7ffc5f1719bb thread T0 #0 0x7fe574adc5fd in osmo_store64be_ext ../../include/osmocom/core/bit64gen.h:75 #1 0x7fe574adc649 in osmo_store64be ../../include/osmocom/core/bit64gen.h:104 #2 0x7fe574ade936 in _kasumi_kgcore libosmocore/src/gsm/kasumi.c:186 #3 0x7fe574ae2532 in gea4 libosmocore/src/gsm/gea.c:44 #4 0x7fe574ae266c in gea3 libosmocore/src/gsm/gea.c:60 #5 0x7fe574a9b616 in gprs_cipher_run libosmocore/src/gsm/gprs_cipher_core.c:95 #6 0x56422d3fb2ee in test_gea libosmocore/tests/gea/gea_test.c:29 #7 0x56422d3fb506 in main libosmocore/tests/gea/gea_test.c:49 #8 0x7fe5730f406a in __libc_start_main (/usr/lib/libc.so.6+0x2306a) #9 0x56422d3fadf9 in _start (libosmocore/tests/gea/.libs/lt-gea_test+0x1df9) The kasumi_test is updated to calculate the entire array of bits according to expected result. Before this commit it worked by writing the entire last 64bit block, and addressSanitizer cannot catch it because the allocated buffer is 64bit aligned too. Change-Id: I7b2a0224a3b5527d5a3ad7e17efc73081b63eac1 --- M src/gsm/kasumi.c M tests/kasumi/kasumi_test.c 2 files changed, 15 insertions(+), 6 deletions(-) git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/07/9207/3 -- To view, visit https://gerrit.osmocom.org/9207 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: libosmocore Gerrit-Branch: master Gerrit-MessageType: newpatchset Gerrit-Change-Id: I7b2a0224a3b5527d5a3ad7e17efc73081b63eac1 Gerrit-Change-Number: 9207 Gerrit-PatchSet: 3 Gerrit-Owner: Pau Espin Pedrol Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Max Gerrit-Reviewer: Pau Espin Pedrol
Change in osmo-bsc[master]: separate reporting of RSL link status and OML link status
Stefan Sperling has abandoned this change. ( https://gerrit.osmocom.org/7574 ) Change subject: separate reporting of RSL link status and OML link status .. Abandoned -- To view, visit https://gerrit.osmocom.org/7574 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bsc Gerrit-Branch: master Gerrit-MessageType: abandon Gerrit-Change-Id: I4bd0821503fc4407dbee8cb489675c19384de5cb Gerrit-Change-Number: 7574 Gerrit-PatchSet: 3 Gerrit-Owner: Stefan Sperling Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Neels Hofmeyr Gerrit-Reviewer: Stefan Sperling
Change in osmo-msc[master]: implement periodic Location Update expiry in the VLR
Hello Harald Welte, Jenkins Builder, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/9211 to look at the new patch set (#2). Change subject: implement periodic Location Update expiry in the VLR .. implement periodic Location Update expiry in the VLR Remove subscribers which fail to send periodic Location Updates from the list of subscribers known to the VLR. This complements the IMSI detach procedure: periodic LU expiry triggers an implicit IMSI detach. Expired subscribers are purged from a periodic timer which iterates over all subscribers once per minute. Subscribers with an active connection do not expire. This is controlled by the subscriber conn FSM which sets a subscriber's the LU expiry timeout value to GSM_SUBSCRIBER_NO_EXPIRATION while a connection is active. Add support for fake time with osmo_clock_gettime() to msc_vlr tests. Related: OS#1976 Change-Id: Iebdee8b12d22acfcfb265ee41e71cfc8d9eb3ba9 --- M include/osmocom/msc/gsm_subscriber.h M include/osmocom/msc/vlr.h M src/libmsc/subscr_conn.c M src/libvlr/vlr.c M src/libvlr/vlr_lu_fsm.c M tests/msc_vlr/msc_vlr_test_no_authen.c M tests/msc_vlr/msc_vlr_test_no_authen.err M tests/msc_vlr/msc_vlr_tests.c M tests/msc_vlr/msc_vlr_tests.h 9 files changed, 285 insertions(+), 1 deletion(-) git pull ssh://gerrit.osmocom.org:29418/osmo-msc refs/changes/11/9211/2 -- To view, visit https://gerrit.osmocom.org/9211 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-msc Gerrit-Branch: master Gerrit-MessageType: newpatchset Gerrit-Change-Id: Iebdee8b12d22acfcfb265ee41e71cfc8d9eb3ba9 Gerrit-Change-Number: 9211 Gerrit-PatchSet: 2 Gerrit-Owner: Stefan Sperling Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder
Change in osmo-msc[master]: implement periodic Location Update expiry in the VLR
Stefan Sperling has posted comments on this change. ( https://gerrit.osmocom.org/9211 ) Change subject: implement periodic Location Update expiry in the VLR .. Patch Set 1: (4 comments) https://gerrit.osmocom.org/#/c/9211/1/src/libmsc/subscr_conn.c File src/libmsc/subscr_conn.c: https://gerrit.osmocom.org/#/c/9211/1/src/libmsc/subscr_conn.c@207 PS1, Line 207: /* Stop location update expiry for this subscriber. */ > the comment states what's easily deducted from the line below. […] Next patch contains has a better comment. We want to prevent LU expiry from interfering with subscribers with active connections. https://gerrit.osmocom.org/#/c/9211/1/src/libvlr/vlr.c File src/libvlr/vlr.c: https://gerrit.osmocom.org/#/c/9211/1/src/libvlr/vlr.c@465 PS1, Line 465: vlr_subscr_enable_expire_lu(struct vlr_subscr *vsub) > we don't generally break lines ahead of the function name Indeed. Fixed in next patch set. https://gerrit.osmocom.org/#/c/9211/1/src/libvlr/vlr.c@475 PS1, Line 475: if (osmo_gettimeofday(&now, NULL) == 0) { > I think we had the discussion about gettimeofday already (think of time > adjustments due to ntpdate, […] I was using gettimeofday only because the msc_vlr tests didn't support fake time with clock_gettime() yet. Fixed in next patch set. Adding support for this to the test suite was pretty straightforward. https://gerrit.osmocom.org/#/c/9211/1/src/libvlr/vlr.c@481 PS1, Line 481: vsub->expire_lu = GSM_SUBSCRIBER_NO_EXPIRATION; /* XXX */ > what does the XXX mean here? This subscriber will have LU expiry disabled. Better comment in next patch set. -- To view, visit https://gerrit.osmocom.org/9211 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-msc Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: Iebdee8b12d22acfcfb265ee41e71cfc8d9eb3ba9 Gerrit-Change-Number: 9211 Gerrit-PatchSet: 1 Gerrit-Owner: Stefan Sperling Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Stefan Sperling Gerrit-Comment-Date: Thu, 17 May 2018 11:01:29 + Gerrit-HasComments: Yes Gerrit-HasLabels: No
Change in libosmo-netif[master]: osmux: change log lvl of batch full to debug
Pau Espin Pedrol has submitted this change and it was merged. ( https://gerrit.osmocom.org/9173 ) Change subject: osmux: change log lvl of batch full to debug .. osmux: change log lvl of batch full to debug This message is expected as all code filling batches call osmux_batch_enqueue() and checks for error to know if it must tell the user of the lib to call osmux_xfrm_input_deliver. Change-Id: I3d8227f2281f6ca92fd2502d3e328765dc7ecfe9 --- M src/osmux.c 1 file changed, 2 insertions(+), 2 deletions(-) Approvals: Jenkins Builder: Verified Harald Welte: Looks good to me, approved diff --git a/src/osmux.c b/src/osmux.c index 46170ba..7a6ce60 100644 --- a/src/osmux.c +++ b/src/osmux.c @@ -356,7 +356,7 @@ static int osmux_batch_enqueue(struct msgb *msg, struct osmux_circuit *circuit, uint8_t batch_factor) { - /* Too many messages per batch, discard it. The counter field of the + /* Validate amount of messages per batch. The counter field of the * osmux header is just 3 bits long, so make sure it doesn't overflow. */ if (circuit->nmsgs >= batch_factor || circuit->nmsgs >= 8) { @@ -366,7 +366,7 @@ if (rtph == NULL) return -1; - LOGP(DLMUX, LOGL_ERROR, "too many messages for this RTP " + LOGP(DLMUX, LOGL_DEBUG, "Batch is full for RTP " "ssrc=%u\n", rtph->ssrc); return -1; } -- To view, visit https://gerrit.osmocom.org/9173 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: libosmo-netif Gerrit-Branch: master Gerrit-MessageType: merged Gerrit-Change-Id: I3d8227f2281f6ca92fd2502d3e328765dc7ecfe9 Gerrit-Change-Number: 9173 Gerrit-PatchSet: 1 Gerrit-Owner: Pau Espin Pedrol Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Pau Espin Pedrol
Change in libosmo-netif[master]: jibuf: Fix out-of-order seq queue around syncpoints
Pau Espin Pedrol has submitted this change and it was merged. ( https://gerrit.osmocom.org/9172 ) Change subject: jibuf: Fix out-of-order seq queue around syncpoints .. jibuf: Fix out-of-order seq queue around syncpoints Fixes: OS#3262 Change-Id: Ib8c61dbe6261cf73d6efcd7873e23b7656117556 --- M src/jibuf.c M tests/jibuf/jibuf_test.c M tests/jibuf/jibuf_test.ok 3 files changed, 36 insertions(+), 7 deletions(-) Approvals: Jenkins Builder: Verified Harald Welte: Looks good to me, approved diff --git a/src/jibuf.c b/src/jibuf.c index 45019ae..2632a57 100644 --- a/src/jibuf.c +++ b/src/jibuf.c @@ -119,6 +119,35 @@ } +static void enqueue_pkt(struct osmo_jibuf *jb, struct msgb *msg, bool is_syncpoint) +{ + struct msgb *cur; + struct timeval *msg_ts; + + if (!is_syncpoint) { + llist_add_sorted(msg, &jb->msg_list); + return; + } + + /* syncpoints change the reference timings, and as such they can provoke + out of order enqueuing of this packet and its followups with regards + to the already stored packets which may be scheduled for later times. + We thus need to adapt dequeue time for the already stored pkts to be + dequeued before the syncpoint pkt. See OS#3262 for related scenarios. + */ + + msg_ts = msgb_scheduled_ts(msg); + + llist_for_each_entry(cur, &jb->msg_list, list) { + struct timeval *cur_ts = msgb_scheduled_ts(cur); + if (timercmp(msg_ts, cur_ts, <)) + *cur_ts = *msg_ts; + } + /* syncpoint goes always to the end since we moved all older packets + before it */ + llist_add_tail(&msg->list, &jb->msg_list); +} + static bool msg_get_marker(struct msgb *msg) { /* TODO: make it more generic as a callback so that different types of @@ -314,11 +343,13 @@ { int rel_delay, delay; struct timeval delay_ts, sched_ts; + bool is_syncpoint; clock_gettime_timeval(CLOCK_MONOTONIC, &jb->last_enqueue_time); /* Check if it's time to sync, ie. start of talkspurt */ - if (!jb->started || msg_is_syncpoint(jb, msg)) { + is_syncpoint = !jb->started || msg_is_syncpoint(jb, msg); + if (is_syncpoint) { jb->started = true; msg_set_as_reference(jb, msg); rel_delay = 0; @@ -365,8 +396,7 @@ jbcb->ts = sched_ts; jbcb->old_cb = old_cb; - llist_add_sorted(msg, &jb->msg_list); - + enqueue_pkt(jb, msg, is_syncpoint); /* See if updating the timer is needed: */ if (!osmo_timer_pending(&jb->timer) || diff --git a/tests/jibuf/jibuf_test.c b/tests/jibuf/jibuf_test.c index 7993a65..ba1bb01 100644 --- a/tests/jibuf/jibuf_test.c +++ b/tests/jibuf/jibuf_test.c @@ -673,8 +673,7 @@ clock_override_add(0, min_delay*1000); osmo_select_main(0); - /* This assert shows that packets are queued out of order in this case:*/ - OSMO_ASSERT(!osmo_jibuf_empty(jb)); + OSMO_ASSERT(osmo_jibuf_empty(jb)); osmo_jibuf_delete(jb); } diff --git a/tests/jibuf/jibuf_test.ok b/tests/jibuf/jibuf_test.ok index 6bf52fb..b92f73c 100644 --- a/tests/jibuf/jibuf_test.ok +++ b/tests/jibuf/jibuf_test.ok @@ -383,10 +383,10 @@ sys={0.14}, mono={0.14}: dequeue: seq=34 ts=720 INTERMEDIATE sys={0.14}, mono={0.14}: dequeue: seq=35 ts=880 INTERMEDIATE sys={0.14}, mono={0.14}: dequeue: seq=36 ts=1040 INTERMEDIATE -sys={0.14}, mono={0.14}: dequeue: seq=39 ts=1520 INTERMEDIATE sys={0.14}, mono={0.14}: dequeue: seq=37 ts=1200 INTERMEDIATE -sys={0.14}, mono={0.14}: dequeue: seq=40 ts=1680 LATEST sys={0.14}, mono={0.14}: dequeue: seq=38 ts=1360 INTERMEDIATE +sys={0.14}, mono={0.14}: dequeue: seq=39 ts=1520 INTERMEDIATE +sys={0.14}, mono={0.14}: dequeue: seq=40 ts=1680 LATEST ===test_rtp_out_of_sync(1600, 5, 800, 1)=== sys={0.00}, mono={0.00}: clock_override_set sys={0.00}, mono={0.00}: enqueue 1st packet (seq=33, ts=560) -- To view, visit https://gerrit.osmocom.org/9172 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: libosmo-netif Gerrit-Branch: master Gerrit-MessageType: merged Gerrit-Change-Id: Ib8c61dbe6261cf73d6efcd7873e23b7656117556 Gerrit-Change-Number: 9172 Gerrit-PatchSet: 1 Gerrit-Owner: Pau Espin Pedrol Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Pau Espin Pedrol
Change in osmo-mgw[master]: legacy-mgcp: switch to new osmux output APIs
Pau Espin Pedrol has uploaded this change for review. ( https://gerrit.osmocom.org/9213 Change subject: legacy-mgcp: switch to new osmux output APIs .. legacy-mgcp: switch to new osmux output APIs Older ones are being deprecated as they may generate interleaved packets. This commit is a forward-port of openbsc.git Change-Id I189564fc63139c15314db8975afd423c7153ea32. Change-Id: I9b8a19e5b8d62deaa9bbb92d49d99e8c33b7e345 --- M src/libosmo-legacy-mgcp/mgcp_osmux.c 1 file changed, 11 insertions(+), 6 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-mgw refs/changes/13/9213/1 diff --git a/src/libosmo-legacy-mgcp/mgcp_osmux.c b/src/libosmo-legacy-mgcp/mgcp_osmux.c index 743d3f9..b53e2b5 100644 --- a/src/libosmo-legacy-mgcp/mgcp_osmux.c +++ b/src/libosmo-legacy-mgcp/mgcp_osmux.c @@ -267,7 +267,6 @@ { struct msgb *msg; struct osmux_hdr *osmuxh; - struct llist_head list; struct sockaddr_in addr; struct mgcp_config *cfg = ofd->data; uint32_t rem; @@ -297,8 +296,7 @@ endp->osmux.stats.chunks++; rem = msg->len; - osmux_xfrm_output(osmuxh, &endp->osmux.out, &list); - osmux_tx_sched(&list, scheduled_tx_bts_cb, endp); + osmux_xfrm_output_sched(&endp->osmux.out, osmuxh); } out: msgb_free(msg); @@ -359,7 +357,6 @@ { struct msgb *msg; struct osmux_hdr *osmuxh; - struct llist_head list; struct sockaddr_in addr; struct mgcp_config *cfg = ofd->data; uint32_t rem; @@ -389,8 +386,7 @@ endp->osmux.stats.chunks++; rem = msg->len; - osmux_xfrm_output(osmuxh, &endp->osmux.out, &list); - osmux_tx_sched(&list, scheduled_tx_net_cb, endp); + osmux_xfrm_output_sched(&endp->osmux.out, osmuxh); } out: msgb_free(msg); @@ -470,9 +466,13 @@ switch (endp->cfg->role) { case MGCP_BSC_NAT: endp->type = MGCP_OSMUX_BSC_NAT; + osmux_xfrm_output_set_tx_cb(&endp->osmux.out, + scheduled_tx_net_cb, endp); break; case MGCP_BSC: endp->type = MGCP_OSMUX_BSC; + osmux_xfrm_output_set_tx_cb(&endp->osmux.out, + scheduled_tx_bts_cb, endp); break; } endp->osmux.state = OSMUX_STATE_ENABLED; @@ -484,6 +484,11 @@ { LOGP(DLMGCP, LOGL_INFO, "Releasing endpoint %u using Osmux CID %u\n", ENDPOINT_NUMBER(endp), endp->osmux.cid); + + /* We are closing, we don't need pending RTP packets to be transmitted */ + osmux_xfrm_output_set_tx_cb(&endp->osmux.out, NULL, NULL); + osmux_xfrm_output_flush(&endp->osmux.out); + osmux_xfrm_input_close_circuit(endp->osmux.in, endp->osmux.cid); endp->osmux.state = OSMUX_STATE_DISABLED; endp->osmux.cid = -1; -- To view, visit https://gerrit.osmocom.org/9213 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-mgw Gerrit-Branch: master Gerrit-MessageType: newchange Gerrit-Change-Id: I9b8a19e5b8d62deaa9bbb92d49d99e8c33b7e345 Gerrit-Change-Number: 9213 Gerrit-PatchSet: 1 Gerrit-Owner: Pau Espin Pedrol
Change in osmo-mgw[master]: legacy-mgcp: Add jitter buffer on the uplink receiver
Pau Espin Pedrol has uploaded this change for review. ( https://gerrit.osmocom.org/9212 Change subject: legacy-mgcp: Add jitter buffer on the uplink receiver .. legacy-mgcp: Add jitter buffer on the uplink receiver Default usage values are defined in mgcp node, and can be per-BSC overriden on each bsc node This commit is a forward-port of openbsc.git Change-Id Ibf3932adc07442fb5e9c7a06404853f9d0a20959. Change-Id: Ie19a64ac09f9d51f2434ad0d7925610fc919a90e --- M include/osmocom/legacy_mgcp/mgcp.h M include/osmocom/legacy_mgcp/mgcp_internal.h M src/libosmo-legacy-mgcp/mgcp_network.c M src/libosmo-legacy-mgcp/mgcp_protocol.c M src/libosmo-legacy-mgcp/mgcp_vty.c 5 files changed, 156 insertions(+), 3 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-mgw refs/changes/12/9212/1 diff --git a/include/osmocom/legacy_mgcp/mgcp.h b/include/osmocom/legacy_mgcp/mgcp.h index 147a0d5..7490e37 100644 --- a/include/osmocom/legacy_mgcp/mgcp.h +++ b/include/osmocom/legacy_mgcp/mgcp.h @@ -243,6 +243,12 @@ * message. */ uint16_t osmux_dummy; + + /* Use a jitterbuffer on the bts-side receiver */ + bool bts_use_jibuf; + /* Minimum and maximum buffer size for the jitter buffer, in ms */ + uint32_t bts_jitter_delay_min; + uint32_t bts_jitter_delay_max; }; /* config management */ diff --git a/include/osmocom/legacy_mgcp/mgcp_internal.h b/include/osmocom/legacy_mgcp/mgcp_internal.h index dcc75f1..956bee0 100644 --- a/include/osmocom/legacy_mgcp/mgcp_internal.h +++ b/include/osmocom/legacy_mgcp/mgcp_internal.h @@ -25,6 +25,7 @@ #include #include +#include #define CI_UNUSED 0 @@ -198,6 +199,14 @@ uint32_t octets; } stats; } osmux; + + /* Jitter buffer */ + struct osmo_jibuf* bts_jb; + /* Use a jitterbuffer on the bts-side receiver */ + bool bts_use_jibuf; + /* Minimum and maximum buffer size for the jitter buffer, in ms */ + uint32_t bts_jitter_delay_min; + uint32_t bts_jitter_delay_max; }; #define for_each_line(line, save) \ @@ -335,3 +344,8 @@ } int mgcp_msg_terminate_nul(struct msgb *msg); + +/** + * Internal jitter buffer related + */ +void mgcp_dejitter_udp_send(struct msgb *msg, void *data); diff --git a/src/libosmo-legacy-mgcp/mgcp_network.c b/src/libosmo-legacy-mgcp/mgcp_network.c index 8ccfb42..7b161d2 100644 --- a/src/libosmo-legacy-mgcp/mgcp_network.c +++ b/src/libosmo-legacy-mgcp/mgcp_network.c @@ -584,6 +584,36 @@ return rc; } +void mgcp_dejitter_udp_send(struct msgb *msg, void *data) +{ + struct mgcp_rtp_end *rtp_end = (struct mgcp_rtp_end *) data; + + int rc = mgcp_udp_send(rtp_end->rtp.fd, &rtp_end->addr, + rtp_end->rtp_port, (char*) msg->data, msg->len); + if (rc != msg->len) + LOGP(DLMGCP, LOGL_ERROR, + "Failed to send data after jitter buffer: %d\n", rc); + msgb_free(msg); +} + +static int enqueue_dejitter(struct osmo_jibuf *jb, struct mgcp_rtp_end *rtp_end, char *buf, int len) +{ + struct msgb *msg; + msg = msgb_alloc(len, "mgcp-jibuf"); + if (!msg) + return -1; + + memcpy(msg->data, buf, len); + msgb_put(msg, len); + + if (osmo_jibuf_enqueue(jb, msg) < 0) { + rtp_end->dropped_packets += 1; + msgb_free(msg); + } + + return len; +} + int mgcp_send(struct mgcp_endpoint *endp, int dest, int is_rtp, struct sockaddr_in *addr, char *buf, int rc) { @@ -591,6 +621,7 @@ struct mgcp_rtp_end *rtp_end; struct mgcp_rtp_state *rtp_state; int tap_idx; + struct osmo_jibuf *jb; LOGP(DLMGCP, LOGL_DEBUG, "endpoint %x dest %s tcfg->audio_loop %d endp->conn_mode %d (== loopback: %d)\n", @@ -612,10 +643,12 @@ rtp_end = &endp->net_end; rtp_state = &endp->bts_state; tap_idx = MGCP_TAP_NET_OUT; + jb = endp->bts_jb; } else { rtp_end = &endp->bts_end; rtp_state = &endp->net_state; tap_idx = MGCP_TAP_BTS_OUT; + jb = NULL; } LOGP(DLMGCP, LOGL_DEBUG, "endpoint %x dest %s net_end %s %d %d bts_end %s %d %d rtp_end %s %d %d\n", @@ -680,9 +713,12 @@ rtp_state->patched_first_rtp_payload = true; } - rc = mgcp_udp_send(rtp_end->rtp.fd, - &rtp_end->addr, - rtp_end->rtp_port, buf, len); + if (jb) + rc = enqueue_dejitter(jb, rtp_end, buf, len); + else + rc = mgcp_udp_send(rtp_end->rtp.fd, +
Change in osmo-bsc[master]: nat: Add jitter buffer on the uplink receiver
Pau Espin Pedrol has uploaded this change for review. ( https://gerrit.osmocom.org/9214 Change subject: nat: Add jitter buffer on the uplink receiver .. nat: Add jitter buffer on the uplink receiver Default usage values are defined in mgcp node, and can be per-BSC overriden on each bsc node. This commit is a forward-port of openbsc.git Change-Id Ibf3932adc07442fb5e9c7a06404853f9d0a20959. Depends on osmo-mgw.git Change-Id Ie19a64ac09f9d51f2434ad0d7925610fc919a90e. Change-Id: Ie07b8a577caf731d59d68e3b3510ae2f9fd3dc93 --- M include/osmocom/bsc/bsc_nat.h M src/osmo-bsc_nat/bsc_mgcp_utils.c M src/osmo-bsc_nat/bsc_nat_vty.c 3 files changed, 96 insertions(+), 0 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-bsc refs/changes/14/9214/1 diff --git a/include/osmocom/bsc/bsc_nat.h b/include/osmocom/bsc/bsc_nat.h index 6146c00..bd78b9d 100644 --- a/include/osmocom/bsc/bsc_nat.h +++ b/include/osmocom/bsc/bsc_nat.h @@ -175,6 +175,16 @@ /* Osmux is enabled/disabled per BSC */ int osmux; + + /* Use a jitterbuffer on the bts-side receiver */ + bool bts_use_jibuf; + /* Minimum and maximum buffer size for the jitter buffer, in ms */ + uint32_t bts_jitter_delay_min; + uint32_t bts_jitter_delay_max; + /* Enabled if explicitly configured through VTY: */ + bool bts_use_jibuf_override; + bool bts_jitter_delay_min_override; + bool bts_jitter_delay_max_override; }; struct bsc_lac_entry { diff --git a/src/osmo-bsc_nat/bsc_mgcp_utils.c b/src/osmo-bsc_nat/bsc_mgcp_utils.c index bf6d0ad..ab06a5e 100644 --- a/src/osmo-bsc_nat/bsc_mgcp_utils.c +++ b/src/osmo-bsc_nat/bsc_mgcp_utils.c @@ -585,6 +585,17 @@ if (state == MGCP_ENDP_CRCX) { struct sockaddr_in sock; + /* set up jitter buffer parameters */ + if (bsc_endp->bsc->cfg->bts_use_jibuf_override) + mgcp_endp->bts_use_jibuf = bsc_endp->bsc->cfg->bts_use_jibuf; + + if (bsc_endp->bsc->cfg->bts_jitter_delay_min_override) + mgcp_endp->bts_jitter_delay_min = bsc_endp->bsc->cfg->bts_jitter_delay_min; + + if (bsc_endp->bsc->cfg->bts_jitter_delay_max_override) + mgcp_endp->bts_jitter_delay_max = bsc_endp->bsc->cfg->bts_jitter_delay_max; + + /* Annotate the allocated Osmux CID until the bsc confirms that * it agrees to use Osmux for this voice flow. */ diff --git a/src/osmo-bsc_nat/bsc_nat_vty.c b/src/osmo-bsc_nat/bsc_nat_vty.c index 64608bd..5d8d0c7 100644 --- a/src/osmo-bsc_nat/bsc_nat_vty.c +++ b/src/osmo-bsc_nat/bsc_nat_vty.c @@ -173,6 +173,12 @@ vty_out(vty, " osmux only%s", VTY_NEWLINE); break; } + if (bsc->bts_use_jibuf_override) + vty_out(vty, " %sbts-jitter-buffer%s", bsc->bts_use_jibuf? "" : "no ", VTY_NEWLINE); + if (bsc->bts_jitter_delay_min_override) + vty_out(vty, " bts-jitter-delay-min %"PRIu32"%s", bsc->bts_jitter_delay_min, VTY_NEWLINE); + if (bsc->bts_jitter_delay_max_override) + vty_out(vty, " bts-jitter-delay-max %"PRIu32"%s", bsc->bts_jitter_delay_max, VTY_NEWLINE); } static int config_write_bsc(struct vty *vty) @@ -1231,6 +1237,71 @@ return CMD_SUCCESS; } +#define DEJITTER_STR "Uplink Jitter Buffer" +DEFUN(cfg_bsc_bts_use_jibuf, + cfg_bsc_bts_use_jibuf_cmd, + "bts-jitter-buffer", + DEJITTER_STR "\n") +{ + struct bsc_config *conf = vty->index; + conf->bts_use_jibuf = true; + conf->bts_use_jibuf_override = true; + return CMD_SUCCESS; +} + +DEFUN(cfg_bsc_no_bts_use_jibuf, + cfg_bsc_no_bts_use_jibuf_cmd, + "no bts-jitter-buffer", + NO_STR DEJITTER_STR "\n") +{ + struct bsc_config *conf = vty->index; + conf->bts_use_jibuf = false; + conf->bts_use_jibuf_override = true; + return CMD_SUCCESS; +} + +DEFUN(cfg_bsc_bts_jitter_delay_min, + cfg_bsc_bts_jitter_delay_min_cmd, + "bts-jitter-buffer-delay-min <1-65535>", + DEJITTER_STR " Minimum Delay in ms\n" "Minimum Delay in ms\n") +{ + struct bsc_config *conf = vty->index; + conf->bts_jitter_delay_min = atoi(argv[0]); + if (!conf->bts_jitter_delay_min) { + vty_out(vty, "bts-jitter-buffer-delay-min cannot be zero.%s", VTY_NEWLINE); + return CMD_WARNING; + } + if (conf->bts_jitter_delay_min && conf->bts_jitter_delay_max && + conf->bts_jitter_delay_min > conf->bts_jitter_delay_max) { + vty_out(vty, "bts-jitter-buffer-delay-min cannot be bigger than " \ + "bts-jitter-buffer-delay-max.%s", VTY_NEWLINE); + return CMD_WARNING; + } + conf->bts_jitter_delay_min_override = true; + return CMD_SUCCESS; +} + +DEFUN(cfg_bsc_bts_jitter_delay_max, +
Change in osmo-msc[master]: implement periodic Location Update expiry in the VLR
Harald Welte has posted comments on this change. ( https://gerrit.osmocom.org/9211 ) Change subject: implement periodic Location Update expiry in the VLR .. Patch Set 2: (1 comment) https://gerrit.osmocom.org/#/c/9211/2/src/libmsc/subscr_conn.c File src/libmsc/subscr_conn.c: https://gerrit.osmocom.org/#/c/9211/2/src/libmsc/subscr_conn.c@211 PS2, Line 211: * The LU expiry timer will restart once the connection is closed. */ do we need an extra field for this? Doesn't every subscribe with active connections have subscr->conn != NULL and we can simply check on that? It's not a strong argument, but if we have the information already somewhere, we shouldn't duplicate it. Or are there other reasons to stop/halt/pause expirtation? -- To view, visit https://gerrit.osmocom.org/9211 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-msc Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: Iebdee8b12d22acfcfb265ee41e71cfc8d9eb3ba9 Gerrit-Change-Number: 9211 Gerrit-PatchSet: 2 Gerrit-Owner: Stefan Sperling Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Stefan Sperling Gerrit-Comment-Date: Thu, 17 May 2018 12:02:11 + Gerrit-HasComments: Yes Gerrit-HasLabels: No
Change in osmo-mgw[master]: legacy-mgcp: Add jitter buffer on the uplink receiver
Harald Welte has posted comments on this change. ( https://gerrit.osmocom.org/9212 ) Change subject: legacy-mgcp: Add jitter buffer on the uplink receiver .. Patch Set 1: Code-Review+1 -- To view, visit https://gerrit.osmocom.org/9212 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-mgw Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: Ie19a64ac09f9d51f2434ad0d7925610fc919a90e Gerrit-Change-Number: 9212 Gerrit-PatchSet: 1 Gerrit-Owner: Pau Espin Pedrol Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder Gerrit-Comment-Date: Thu, 17 May 2018 12:03:33 + Gerrit-HasComments: No Gerrit-HasLabels: Yes
Change in osmo-mgw[master]: legacy-mgcp: switch to new osmux output APIs
Harald Welte has posted comments on this change. ( https://gerrit.osmocom.org/9213 ) Change subject: legacy-mgcp: switch to new osmux output APIs .. Patch Set 1: Code-Review+1 -- To view, visit https://gerrit.osmocom.org/9213 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-mgw Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I9b8a19e5b8d62deaa9bbb92d49d99e8c33b7e345 Gerrit-Change-Number: 9213 Gerrit-PatchSet: 1 Gerrit-Owner: Pau Espin Pedrol Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder Gerrit-Comment-Date: Thu, 17 May 2018 12:03:29 + Gerrit-HasComments: No Gerrit-HasLabels: Yes
Change in libosmocore[master]: gsm: kasumi: Fix dynamic-stack-buffer-overflow on out buffers not mul...
Harald Welte has submitted this change and it was merged. ( https://gerrit.osmocom.org/9207 ) Change subject: gsm: kasumi: Fix dynamic-stack-buffer-overflow on out buffers not multiple of 64 bits .. gsm: kasumi: Fix dynamic-stack-buffer-overflow on out buffers not multiple of 64 bits Fixes following AddressSanitizer report during gea_test run with gcc 8.1.0: ==8899==ERROR: AddressSanitizer: dynamic-stack-buffer-overflow on address 0x7ffc5f1719bb at pc 0x7fe574adc5fe bp 0x7ffc5f171460 sp 0x7ffc5f171450 WRITE of size 1 at 0x7ffc5f1719bb thread T0 #0 0x7fe574adc5fd in osmo_store64be_ext ../../include/osmocom/core/bit64gen.h:75 #1 0x7fe574adc649 in osmo_store64be ../../include/osmocom/core/bit64gen.h:104 #2 0x7fe574ade936 in _kasumi_kgcore libosmocore/src/gsm/kasumi.c:186 #3 0x7fe574ae2532 in gea4 libosmocore/src/gsm/gea.c:44 #4 0x7fe574ae266c in gea3 libosmocore/src/gsm/gea.c:60 #5 0x7fe574a9b616 in gprs_cipher_run libosmocore/src/gsm/gprs_cipher_core.c:95 #6 0x56422d3fb2ee in test_gea libosmocore/tests/gea/gea_test.c:29 #7 0x56422d3fb506 in main libosmocore/tests/gea/gea_test.c:49 #8 0x7fe5730f406a in __libc_start_main (/usr/lib/libc.so.6+0x2306a) #9 0x56422d3fadf9 in _start (libosmocore/tests/gea/.libs/lt-gea_test+0x1df9) The kasumi_test is updated to calculate the entire array of bits according to expected result. Before this commit it worked by writing the entire last 64bit block, and addressSanitizer cannot catch it because the allocated buffer is 64bit aligned too. Change-Id: I7b2a0224a3b5527d5a3ad7e17efc73081b63eac1 --- M src/gsm/kasumi.c M tests/kasumi/kasumi_test.c 2 files changed, 15 insertions(+), 6 deletions(-) Approvals: Jenkins Builder: Verified Harald Welte: Looks good to me, approved diff --git a/src/gsm/kasumi.c b/src/gsm/kasumi.c index 7de5cd0..f93c002 100644 --- a/src/gsm/kasumi.c +++ b/src/gsm/kasumi.c @@ -159,6 +159,7 @@ } } +/* if cl is not multiple of 8 (a byte), co needs to be sized on the upper bound so the entire byte can be written. */ void _kasumi_kgcore(uint8_t CA, uint8_t cb, uint32_t cc, uint8_t cd, const uint8_t *ck, uint8_t *co, uint16_t cl) { uint16_t KLi1[8], KLi2[8], KOi1[8], KOi2[8], KOi3[8], KIi1[8], KIi2[8], KIi3[8], i; @@ -181,8 +182,16 @@ _kasumi_key_expand(ck, KLi1, KLi2, KOi1, KOi2, KOi3, KIi1, KIi2, KIi3); /* i is a block counter */ - for (i = 0; i < cl / 64 + 1; i++) { + for (i = 0; i < cl / 64; i++) { BLK = _kasumi(A ^ i ^ BLK, KLi1, KLi2, KOi1, KOi2, KOi3, KIi1, KIi2, KIi3); osmo_store64be(BLK, co + (i * 8)); } + + /* Last 64-byte unaligned round. Take also into account last bits non-byte aligned. */ + uint8_t bytes_remain = cl/8%8 + (cl%8 ? 1 : 0); + if (bytes_remain) { + BLK = _kasumi(A ^ (cl / 64) ^ BLK, KLi1, KLi2, KOi1, KOi2, KOi3, KIi1, KIi2, KIi3); + BLK = BLK >> (8-bytes_remain)*8; + osmo_store64be_ext(BLK, co + (cl / 64 * 8), bytes_remain); + } } diff --git a/tests/kasumi/kasumi_test.c b/tests/kasumi/kasumi_test.c index f0f173b..963ce77 100644 --- a/tests/kasumi/kasumi_test.c +++ b/tests/kasumi/kasumi_test.c @@ -109,27 +109,27 @@ uint8_t _Key1[] = {0x2B, 0xD6, 0x45, 0x9F, 0x82, 0xC5, 0xBC, 0x00, 0x2B, 0xD6, 0x45, 0x9F, 0x82, 0xC5, 0xBC, 0x00}, _gamma1[] = {0x88, 0x9E, 0xEA, 0xAF, 0x9E, 0xD1, 0xBA, 0x1A, 0xBB, 0xD8, 0x43, 0x62, 0x32, 0xE4, 0x57, 0x28, 0xD0, 0x1A, 0xA8, 0x91, 0x33, 0xDA, 0x73, 0xC1, 0x1E, 0xAB, 0x68, 0xB7, 0xD8, 0x9B, 0xC8, 0x41}; - _kasumi_kgcore(0xF, 0, 0x0024F20F, 0, _Key1, gamma, 228); + _kasumi_kgcore(0xF, 0, 0x0024F20F, 0, _Key1, gamma, 32*8); printf ("KGCORE Test Set 1: %d\n", _compare_mem(gamma, _gamma1, 32)); uint8_t _Key2[] = {0x95, 0x2C, 0x49, 0x10, 0x48, 0x81, 0xFF, 0x48, 0x95, 0x2C, 0x49, 0x10, 0x48, 0x81, 0xFF, 0x48}, _gamma2[] = {0xFB, 0x4D, 0x5F, 0xBC, 0xEE, 0x13, 0xA3, 0x33, 0x89, 0x28, 0x56, 0x86, 0xE9, 0xA5, 0xC9, 0x42, 0x40, 0xDE, 0x38, 0x15, 0x01, 0x15, 0xF1, 0x5F, 0x8D, 0x9D, 0x98, 0xB9, 0x1A, 0x94, 0xB2, 0x96}; - _kasumi_kgcore(0xF, 0, 0x00061272, 0, _Key2, gamma, 228); + _kasumi_kgcore(0xF, 0, 0x00061272, 0, _Key2, gamma, 32*8); printf ("KGCORE Test Set 2: %d\n", _compare_mem(gamma, _gamma2, 32)); uint8_t _Key3[] = {0xEF, 0xA8, 0xB2, 0x22, 0x9E, 0x72, 0x0C, 0x2A, 0xEF, 0xA8, 0xB2, 0x22, 0x9E, 0x72, 0x0C, 0x2A}, _gamma3[] = {0x0E, 0x40, 0x15, 0x75, 0x5A, 0x33, 0x64, 0x69, 0xC3, 0xDD, 0x86, 0x80, 0xE3, 0x03, 0x5B, 0xC4, 0x19, 0xA7, 0x8A, 0xD3, 0x86, 0x2C, 0x10, 0x90, 0xC6, 0x8A, 0x39, 0x1F, 0xE8, 0xA6, 0xAD, 0xEB}; - _kasumi_kgcore(0xF, 0, 0x0033FD3F, 0, _Key3, gamma, 228); + _kasumi_kgcore(0xF, 0, 0x0033FD3F, 0, _Key3, gamma, 32*8); printf ("KGCORE Test Set 3: %d\n", _compare_mem(gamma, _gamma3, 32)); uin
Change in libosmocore[master]: gsm: kasumi: Fix dynamic-stack-buffer-overflow on out buffers not mul...
Harald Welte has posted comments on this change. ( https://gerrit.osmocom.org/9207 ) Change subject: gsm: kasumi: Fix dynamic-stack-buffer-overflow on out buffers not multiple of 64 bits .. Patch Set 3: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/9207 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: libosmocore Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I7b2a0224a3b5527d5a3ad7e17efc73081b63eac1 Gerrit-Change-Number: 9207 Gerrit-PatchSet: 3 Gerrit-Owner: Pau Espin Pedrol Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Max Gerrit-Reviewer: Pau Espin Pedrol Gerrit-Comment-Date: Thu, 17 May 2018 12:05:29 + Gerrit-HasComments: No Gerrit-HasLabels: Yes
Change in osmocom-bb[master]: Minor Typo Changes
Harald Welte has posted comments on this change. ( https://gerrit.osmocom.org/9210 ) Change subject: Minor Typo Changes .. Patch Set 1: Code-Review-2 this is not a typo. The libosmocore here is a "git subtree" of libosmocore.git in order to use a specific fixed old version whcih we know will work inside the firmware. We don't make modifications to this subtree here. See http://osmocom.org/issues/2378 for how this should be solved in general: By ensuring the "embedded" build of libosmocore works inside the osmocomBB firmware, followed by removing this subtree from osmocom-bb.git. -- To view, visit https://gerrit.osmocom.org/9210 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmocom-bb Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I69126638d81d98ce8236cae543515c8dc743f404 Gerrit-Change-Number: 9210 Gerrit-PatchSet: 1 Gerrit-Owner: Nikos Balkanas Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Pau Espin Pedrol Gerrit-Comment-Date: Thu, 17 May 2018 12:08:36 + Gerrit-HasComments: No Gerrit-HasLabels: Yes
Change in osmo-msc[master]: a_reset: cleanup + remove dead code
Harald Welte has posted comments on this change. ( https://gerrit.osmocom.org/8054 ) Change subject: a_reset: cleanup + remove dead code .. Patch Set 3: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/8054 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-msc Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I8e489eb494d358d130e51cb2167929edeaa12e92 Gerrit-Change-Number: 8054 Gerrit-PatchSet: 3 Gerrit-Owner: dexter Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Neels Hofmeyr Gerrit-Comment-Date: Thu, 17 May 2018 12:09:52 + Gerrit-HasComments: No Gerrit-HasLabels: Yes
Change in osmo-bsc[master]: a_reset: cleanup + remove dead code
Harald Welte has posted comments on this change. ( https://gerrit.osmocom.org/8055 ) Change subject: a_reset: cleanup + remove dead code .. Patch Set 3: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/8055 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bsc Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I72095d52304c520e383755eee6c889bce492cbd4 Gerrit-Change-Number: 8055 Gerrit-PatchSet: 3 Gerrit-Owner: dexter Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Neels Hofmeyr Gerrit-Comment-Date: Thu, 17 May 2018 12:10:52 + Gerrit-HasComments: No Gerrit-HasLabels: Yes
Change in osmo-msc[master]: implement periodic Location Update expiry in the VLR
Stefan Sperling has posted comments on this change. ( https://gerrit.osmocom.org/9211 ) Change subject: implement periodic Location Update expiry in the VLR .. Patch Set 2: (1 comment) https://gerrit.osmocom.org/#/c/9211/2/src/libmsc/subscr_conn.c File src/libmsc/subscr_conn.c: https://gerrit.osmocom.org/#/c/9211/2/src/libmsc/subscr_conn.c@211 PS2, Line 211: * The LU expiry timer will restart once the connection is closed. */ > do we need an extra field for this? Doesn't every subscribe with active > connections have subscr->co […] Yes we need an extra field. subscr->conn != NULL is not a sufficient condition. We want to stop the expiry timer only if the connection FSM makes it all the way into ACCEPTED state. If a connection does not enter ACCEPTED state the timer should keep ticking. E.g. we don't want failed location updates to reset this timer. -- To view, visit https://gerrit.osmocom.org/9211 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-msc Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: Iebdee8b12d22acfcfb265ee41e71cfc8d9eb3ba9 Gerrit-Change-Number: 9211 Gerrit-PatchSet: 2 Gerrit-Owner: Stefan Sperling Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Stefan Sperling Gerrit-Comment-Date: Thu, 17 May 2018 12:22:56 + Gerrit-HasComments: Yes Gerrit-HasLabels: No
Change in osmo-mgw[master]: mgcp: mgcp_osmux: use conn_bts when forwarding pkts from bsc_nat
Pau Espin Pedrol has uploaded this change for review. ( https://gerrit.osmocom.org/9215 Change subject: mgcp: mgcp_osmux: use conn_bts when forwarding pkts from bsc_nat .. mgcp: mgcp_osmux: use conn_bts when forwarding pkts from bsc_nat This commit actually doesn't fix the entire code, since anyway osmux conns are not supported and mgcp_conn_get_rtp() will return NULL. However, it makes the code more logical and easier to understand once somebody refactors the code to make it work again. Change-Id: Ib57e12e5a36b5842c40673c236907bbcbfc390f3 --- M src/libosmo-mgcp/mgcp_osmux.c 1 file changed, 6 insertions(+), 6 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-mgw refs/changes/15/9215/1 diff --git a/src/libosmo-mgcp/mgcp_osmux.c b/src/libosmo-mgcp/mgcp_osmux.c index 1d3cab3..bdc285b 100644 --- a/src/libosmo-mgcp/mgcp_osmux.c +++ b/src/libosmo-mgcp/mgcp_osmux.c @@ -326,7 +326,7 @@ struct sockaddr_in addr; struct mgcp_config *cfg = ofd->data; uint32_t rem; - struct mgcp_conn_rtp *conn_net = NULL; + struct mgcp_conn_rtp *conn_bts = NULL; msg = osmux_recv(ofd, &addr); if (!msg) @@ -345,8 +345,8 @@ &addr.sin_addr, MGCP_DEST_NET); /* FIXME: Get rid of CONN_ID_XXX! */ - conn_net = mgcp_conn_get_rtp(endp, CONN_ID_NET); - if (!conn_net) + conn_bts = mgcp_conn_get_rtp(endp, CONN_ID_BTS); + if (!conn_bts) goto out; if (!endp) { @@ -355,11 +355,11 @@ osmuxh->circuit_id); goto out; } - conn_net->osmux.stats.octets += osmux_chunk_length(msg, rem); - conn_net->osmux.stats.chunks++; + conn_bts->osmux.stats.octets += osmux_chunk_length(msg, rem); + conn_bts->osmux.stats.chunks++; rem = msg->len; - osmux_xfrm_output(osmuxh, &conn_net->osmux.out, &list); + osmux_xfrm_output(osmuxh, &conn_bts->osmux.out, &list); osmux_tx_sched(&list, scheduled_tx_bts_cb, endp); } out: -- To view, visit https://gerrit.osmocom.org/9215 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-mgw Gerrit-Branch: master Gerrit-MessageType: newchange Gerrit-Change-Id: Ib57e12e5a36b5842c40673c236907bbcbfc390f3 Gerrit-Change-Number: 9215 Gerrit-PatchSet: 1 Gerrit-Owner: Pau Espin Pedrol
Change in osmo-mgw[master]: mgcp: switch to new osmux output APIs
Pau Espin Pedrol has uploaded this change for review. ( https://gerrit.osmocom.org/9216 Change subject: mgcp: switch to new osmux output APIs .. mgcp: switch to new osmux output APIs Older ones are being deprecated as they may generate interleaved packets. Change-Id: I0705aa4dc4b02eaff4d6030795243e6720f7fddf --- M src/libosmo-mgcp/mgcp_osmux.c 1 file changed, 11 insertions(+), 6 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-mgw refs/changes/16/9216/1 diff --git a/src/libosmo-mgcp/mgcp_osmux.c b/src/libosmo-mgcp/mgcp_osmux.c index bdc285b..281595c 100644 --- a/src/libosmo-mgcp/mgcp_osmux.c +++ b/src/libosmo-mgcp/mgcp_osmux.c @@ -322,7 +322,6 @@ { struct msgb *msg; struct osmux_hdr *osmuxh; - struct llist_head list; struct sockaddr_in addr; struct mgcp_config *cfg = ofd->data; uint32_t rem; @@ -359,8 +358,7 @@ conn_bts->osmux.stats.chunks++; rem = msg->len; - osmux_xfrm_output(osmuxh, &conn_bts->osmux.out, &list); - osmux_tx_sched(&list, scheduled_tx_bts_cb, endp); + osmux_xfrm_output_sched(&conn_bts->osmux.out, osmuxh); } out: msgb_free(msg); @@ -426,7 +424,6 @@ { struct msgb *msg; struct osmux_hdr *osmuxh; - struct llist_head list; struct sockaddr_in addr; struct mgcp_config *cfg = ofd->data; uint32_t rem; @@ -463,8 +460,7 @@ conn_net->osmux.stats.chunks++; rem = msg->len; - osmux_xfrm_output(osmuxh, &conn_net->osmux.out, &list); - osmux_tx_sched(&list, scheduled_tx_net_cb, endp); + osmux_xfrm_output_sched(&conn_net->osmux.out, osmuxh); } out: msgb_free(msg); @@ -553,9 +549,13 @@ switch (endp->cfg->role) { case MGCP_BSC_NAT: conn->type = MGCP_OSMUX_BSC_NAT; + osmux_xfrm_output_set_tx_cb(&conn->osmux.out, + scheduled_tx_net_cb, endp); break; case MGCP_BSC: conn->type = MGCP_OSMUX_BSC; + osmux_xfrm_output_set_tx_cb(&conn->osmux.out, + scheduled_tx_bts_cb, endp); break; } @@ -576,6 +576,11 @@ LOGP(DLMGCP, LOGL_INFO, "Releasing connection %s using Osmux CID %u\n", conn->conn->id, conn->osmux.cid); + + /* We are closing, we don't need pending RTP packets to be transmitted */ + osmux_xfrm_output_set_tx_cb(&conn->osmux.out, NULL, NULL); + osmux_xfrm_output_flush(&conn->osmux.out); + osmux_xfrm_input_close_circuit(conn->osmux.in, conn->osmux.cid); conn->osmux.state = OSMUX_STATE_DISABLED; conn->osmux.cid = -1; -- To view, visit https://gerrit.osmocom.org/9216 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-mgw Gerrit-Branch: master Gerrit-MessageType: newchange Gerrit-Change-Id: I0705aa4dc4b02eaff4d6030795243e6720f7fddf Gerrit-Change-Number: 9216 Gerrit-PatchSet: 1 Gerrit-Owner: Pau Espin Pedrol
Change in osmo-bsc[master]: show all global counters of osmo-bsc in vty
Stefan Sperling has uploaded this change for review. ( https://gerrit.osmocom.org/9217 Change subject: show all global counters of osmo-bsc in vty .. show all global counters of osmo-bsc in vty The 'show statistics' VTY command was not showing all counters maintained by osmo-bsc. Instead of printing just two counters related to paging, print all available counters in a generic way. Adjust descriptions of some counters for nicer display. After startup (all counters are zero) is now looks like this: OsmoBSC# show statistics handover:attempted: 0 Received handover attempts. handover:no_channel: 0 Sent no channel available responses. handover:timeout: 0 Timeouts of timer T3103. handover:completed: 0 Received handover completed. handover:failed: 0 Received HO FAIL messages. paging:attempted: 0 Paging attempts for a subscriber. paging:detached: 0 Paging request send failures because no responsible BTS was found. paging:responded: 0 Paging attempts with successful response. OsmoBSC# Change-Id: I58ae04e1960774d760e3ebb54a4f307c9f753655 Related: OS#3245 --- M include/osmocom/bsc/gsm_data.h M src/libbsc/bsc_vty.c 2 files changed, 11 insertions(+), 7 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-bsc refs/changes/17/9217/1 diff --git a/include/osmocom/bsc/gsm_data.h b/include/osmocom/bsc/gsm_data.h index 29b97f0..6365938 100644 --- a/include/osmocom/bsc/gsm_data.h +++ b/include/osmocom/bsc/gsm_data.h @@ -1133,12 +1133,12 @@ static const struct rate_ctr_desc bsc_ctr_description[] = { [BSC_CTR_HANDOVER_ATTEMPTED] = {"handover:attempted", "Received handover attempts."}, [BSC_CTR_HANDOVER_NO_CHANNEL] = {"handover:no_channel", "Sent no channel available responses."}, - [BSC_CTR_HANDOVER_TIMEOUT] ={"handover:timeout", "Count the amount of timeouts of timer T3103."}, + [BSC_CTR_HANDOVER_TIMEOUT] ={"handover:timeout", "Timeouts of timer T3103."}, [BSC_CTR_HANDOVER_COMPLETED] = {"handover:completed", "Received handover completed."}, - [BSC_CTR_HANDOVER_FAILED] = {"handover:failed", "Receive HO FAIL messages."}, + [BSC_CTR_HANDOVER_FAILED] = {"handover:failed", "Received HO FAIL messages."}, [BSC_CTR_PAGING_ATTEMPTED] ={"paging:attempted", "Paging attempts for a subscriber."}, - [BSC_CTR_PAGING_DETACHED] = {"paging:detached", "Counts the amount of paging attempts which couldn't sent out any paging request because no responsible bts found."}, + [BSC_CTR_PAGING_DETACHED] = {"paging:detached", "Paging request send failures because no responsible BTS was found."}, [BSC_CTR_PAGING_RESPONDED] ={"paging:responded", "Paging attempts with successful response."}, }; diff --git a/src/libbsc/bsc_vty.c b/src/libbsc/bsc_vty.c index ea4c8d0..e53a14f 100644 --- a/src/libbsc/bsc_vty.c +++ b/src/libbsc/bsc_vty.c @@ -4133,12 +4133,16 @@ return CMD_SUCCESS; } +int print_counter(struct rate_ctr_group *bsc_ctrs, struct rate_ctr *ctr, const struct rate_ctr_desc *desc, void *data) +{ + struct vty *vty = data; + vty_out(vty, "%25s: %10"PRIu64" %s%s", desc->name, ctr->current, desc->description, VTY_NEWLINE); + return 0; +} + void openbsc_vty_print_statistics(struct vty *vty, struct gsm_network *net) { - vty_out(vty, "Paging : %"PRIu64" attempted, %"PRIu64" responded%s", - net->bsc_ctrs->ctr[BSC_CTR_PAGING_ATTEMPTED].current, - net->bsc_ctrs->ctr[BSC_CTR_PAGING_RESPONDED].current, - VTY_NEWLINE); + rate_ctr_for_each_counter(net->bsc_ctrs, print_counter, vty); } DEFUN(drop_bts, -- To view, visit https://gerrit.osmocom.org/9217 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bsc Gerrit-Branch: master Gerrit-MessageType: newchange Gerrit-Change-Id: I58ae04e1960774d760e3ebb54a4f307c9f753655 Gerrit-Change-Number: 9217 Gerrit-PatchSet: 1 Gerrit-Owner: Stefan Sperling
Change in osmo-bsc[master]: add counter for connection attempts from BTS with unknown unit id
Stefan Sperling has uploaded this change for review. ( https://gerrit.osmocom.org/9218 Change subject: add counter for connection attempts from BTS with unknown unit id .. add counter for connection attempts from BTS with unknown unit id Add a global counter to the BSC which shows the number of failed OML connections attempts due to a unit_id mismatch between the BSC and the BTS. Change-Id: I58866aff36a1c8463bf84b4392a5124ffeaa32ea Related: OS#3245 --- M include/osmocom/bsc/gsm_data.h M src/libbsc/bts_ipaccess_nanobts.c 2 files changed, 4 insertions(+), 0 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-bsc refs/changes/18/9218/1 diff --git a/include/osmocom/bsc/gsm_data.h b/include/osmocom/bsc/gsm_data.h index 6365938..aacb2d5 100644 --- a/include/osmocom/bsc/gsm_data.h +++ b/include/osmocom/bsc/gsm_data.h @@ -1128,6 +1128,7 @@ BSC_CTR_PAGING_ATTEMPTED, BSC_CTR_PAGING_DETACHED, BSC_CTR_PAGING_RESPONDED, + BSC_CTR_BTS_UNKNOWN_UNIT_ID, }; static const struct rate_ctr_desc bsc_ctr_description[] = { @@ -1140,6 +1141,8 @@ [BSC_CTR_PAGING_ATTEMPTED] ={"paging:attempted", "Paging attempts for a subscriber."}, [BSC_CTR_PAGING_DETACHED] = {"paging:detached", "Paging request send failures because no responsible BTS was found."}, [BSC_CTR_PAGING_RESPONDED] ={"paging:responded", "Paging attempts with successful response."}, + + [BSC_CTR_BTS_UNKNOWN_UNIT_ID] = {"oml:bts_unknown_unit_id", "OML connection attempts from BTS with unknown unit ID."}, }; diff --git a/src/libbsc/bts_ipaccess_nanobts.c b/src/libbsc/bts_ipaccess_nanobts.c index d5b3b21..b4d213a 100644 --- a/src/libbsc/bts_ipaccess_nanobts.c +++ b/src/libbsc/bts_ipaccess_nanobts.c @@ -468,6 +468,7 @@ LOGP(DLINP, LOGL_ERROR, "Unable to find BTS configuration for " " %u/%u/%u, disconnecting\n", dev->site_id, dev->bts_id, dev->trx_id); + rate_ctr_inc(&bsc_gsmnet->bsc_ctrs->ctr[BSC_CTR_BTS_UNKNOWN_UNIT_ID]); return NULL; } DEBUGP(DLINP, "Identified BTS %u/%u/%u\n", -- To view, visit https://gerrit.osmocom.org/9218 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bsc Gerrit-Branch: master Gerrit-MessageType: newchange Gerrit-Change-Id: I58866aff36a1c8463bf84b4392a5124ffeaa32ea Gerrit-Change-Number: 9218 Gerrit-PatchSet: 1 Gerrit-Owner: Stefan Sperling
Change in osmo-ttcn3-hacks[master]: MSC_Tests: Extend timeout waiting for Clear Cmd in TC_establish_and_n...
daniel has uploaded this change for review. ( https://gerrit.osmocom.org/9219 Change subject: MSC_Tests: Extend timeout waiting for Clear Cmd in TC_establish_and_nothing .. MSC_Tests: Extend timeout waiting for Clear Cmd in TC_establish_and_nothing This should fix the bogus failures we are seeing in this test. The pcap usually shows that the Clear Command does arrive after about 5 seconds, but sometimes the internal timer fires before that. Double the timeout of the test here. Change-Id: I998cfb52a3813dd9f76d3787e4d0d448752ec847 --- M msc/MSC_Tests.ttcn 1 file changed, 1 insertion(+), 1 deletion(-) git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/19/9219/1 diff --git a/msc/MSC_Tests.ttcn b/msc/MSC_Tests.ttcn index edaa61b..56ac3d3 100644 --- a/msc/MSC_Tests.ttcn +++ b/msc/MSC_Tests.ttcn @@ -1173,7 +1173,7 @@ f_perform_lu(); f_establish_fully(); - f_expect_clear(); + f_expect_clear(10.0); } testcase TC_establish_and_nothing() runs on MTC_CT { var BSC_ConnHdlr vc_conn; -- To view, visit https://gerrit.osmocom.org/9219 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-ttcn3-hacks Gerrit-Branch: master Gerrit-MessageType: newchange Gerrit-Change-Id: I998cfb52a3813dd9f76d3787e4d0d448752ec847 Gerrit-Change-Number: 9219 Gerrit-PatchSet: 1 Gerrit-Owner: daniel
Change in osmo-msc[master]: remove redundant unconditional PKG_CHECK_MODULES for libsmpp
Stefan Sperling has uploaded this change for review. ( https://gerrit.osmocom.org/9220 Change subject: remove redundant unconditional PKG_CHECK_MODULES for libsmpp .. remove redundant unconditional PKG_CHECK_MODULES for libsmpp The configure script should only check for libsmpp with --enable-smpp. Change-Id: Ic4a8a5c970c04a6257ee4c8e3977e98c4ddfda13 Fixes: a55dda703fc5e367bd58b5f9f6986d62ffbbdb6c Related: If7e1af11cdac8587bb4d66fb4eacee4b79945359 Related: OS#3232 --- M configure.ac 1 file changed, 0 insertions(+), 1 deletion(-) git pull ssh://gerrit.osmocom.org:29418/osmo-msc refs/changes/20/9220/1 diff --git a/configure.ac b/configure.ac index deee84b..c02b74d 100644 --- a/configure.ac +++ b/configure.ac @@ -48,7 +48,6 @@ PKG_CHECK_MODULES(LIBOSMOSIGTRAN, libosmo-sigtran >= 0.9.0) PKG_CHECK_MODULES(LIBOSMOSCCP, libosmo-sccp >= 0.9.0) PKG_CHECK_MODULES(LIBOSMOMGCPCLIENT, libosmo-mgcp-client >= 1.3.0) -PKG_CHECK_MODULES(LIBSMPP34, libsmpp34 >= 1.13.0) AC_ARG_ENABLE(sanitize, [AS_HELP_STRING( -- To view, visit https://gerrit.osmocom.org/9220 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-msc Gerrit-Branch: master Gerrit-MessageType: newchange Gerrit-Change-Id: Ic4a8a5c970c04a6257ee4c8e3977e98c4ddfda13 Gerrit-Change-Number: 9220 Gerrit-PatchSet: 1 Gerrit-Owner: Stefan Sperling
Change in osmo-msc[master]: remove redundant unconditional PKG_CHECK_MODULES for libsmpp
Pau Espin Pedrol has posted comments on this change. ( https://gerrit.osmocom.org/9220 ) Change subject: remove redundant unconditional PKG_CHECK_MODULES for libsmpp .. Patch Set 1: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/9220 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-msc Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: Ic4a8a5c970c04a6257ee4c8e3977e98c4ddfda13 Gerrit-Change-Number: 9220 Gerrit-PatchSet: 1 Gerrit-Owner: Stefan Sperling Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Pau Espin Pedrol Gerrit-Comment-Date: Thu, 17 May 2018 13:54:50 + Gerrit-HasComments: No Gerrit-HasLabels: Yes
Change in osmo-msc[master]: remove redundant unconditional PKG_CHECK_MODULES for libsmpp
Pau Espin Pedrol has posted comments on this change. ( https://gerrit.osmocom.org/9220 ) Change subject: remove redundant unconditional PKG_CHECK_MODULES for libsmpp .. Patch Set 1: Code-Review-1 -- To view, visit https://gerrit.osmocom.org/9220 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-msc Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: Ic4a8a5c970c04a6257ee4c8e3977e98c4ddfda13 Gerrit-Change-Number: 9220 Gerrit-PatchSet: 1 Gerrit-Owner: Stefan Sperling Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Pau Espin Pedrol Gerrit-Comment-Date: Thu, 17 May 2018 13:55:49 + Gerrit-HasComments: No Gerrit-HasLabels: Yes
Change in osmo-msc[master]: remove redundant unconditional PKG_CHECK_MODULES for libsmpp
Pau Espin Pedrol has posted comments on this change. ( https://gerrit.osmocom.org/9220 ) Change subject: remove redundant unconditional PKG_CHECK_MODULES for libsmpp .. Patch Set 1: I think the commit you are fixing added this: smpp_mirror_CFLAGS = \ $(LIBOSMOCORE_CFLAGS) \ $(LIBSMPP34_CFLAGS) \ $(NULL) which means if smpp is not checked unconditionally, it will fail because LIBSMPP34_CFLAGS will not be set. You need to conditionally build that one. Check also if there are more related changes required please. -- To view, visit https://gerrit.osmocom.org/9220 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-msc Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: Ic4a8a5c970c04a6257ee4c8e3977e98c4ddfda13 Gerrit-Change-Number: 9220 Gerrit-PatchSet: 1 Gerrit-Owner: Stefan Sperling Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Pau Espin Pedrol Gerrit-Comment-Date: Thu, 17 May 2018 13:57:47 + Gerrit-HasComments: No Gerrit-HasLabels: No
Change in osmo-msc[master]: remove redundant unconditional PKG_CHECK_MODULES for libsmpp
Hello Pau Espin Pedrol, Jenkins Builder, I'd like you to reexamine a change. Please visit https://gerrit.osmocom.org/9220 to look at the new patch set (#2). Change subject: remove redundant unconditional PKG_CHECK_MODULES for libsmpp .. remove redundant unconditional PKG_CHECK_MODULES for libsmpp The configure script should only check for libsmpp with --enable-smpp. Also, disable the build of smpp_mirror with --disable-smpp. NOTE: This is probably not done yet. Still need to check if the test suite is happy because it contains related tests. Change-Id: Ic4a8a5c970c04a6257ee4c8e3977e98c4ddfda13 Fixes: a55dda703fc5e367bd58b5f9f6986d62ffbbdb6c Related: If7e1af11cdac8587bb4d66fb4eacee4b79945359 Related: OS#3232 --- M configure.ac M src/utils/Makefile.am M tests/smpp/Makefile.am 3 files changed, 3 insertions(+), 3 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-msc refs/changes/20/9220/2 -- To view, visit https://gerrit.osmocom.org/9220 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-msc Gerrit-Branch: master Gerrit-MessageType: newpatchset Gerrit-Change-Id: Ic4a8a5c970c04a6257ee4c8e3977e98c4ddfda13 Gerrit-Change-Number: 9220 Gerrit-PatchSet: 2 Gerrit-Owner: Stefan Sperling Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Pau Espin Pedrol
Change in osmo-msc[master]: remove redundant unconditional PKG_CHECK_MODULES for libsmpp
Pau Espin Pedrol has posted comments on this change. ( https://gerrit.osmocom.org/9220 ) Change subject: remove redundant unconditional PKG_CHECK_MODULES for libsmpp .. Patch Set 2: After out of band discussion, the issue I pointed out seems to actually not be a problem, but we have seen some stuff can still be improved which needs to be set only conditionally depending on HAVE_SMPP. -- To view, visit https://gerrit.osmocom.org/9220 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-msc Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: Ic4a8a5c970c04a6257ee4c8e3977e98c4ddfda13 Gerrit-Change-Number: 9220 Gerrit-PatchSet: 2 Gerrit-Owner: Stefan Sperling Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Pau Espin Pedrol Gerrit-Comment-Date: Thu, 17 May 2018 14:10:54 + Gerrit-HasComments: No Gerrit-HasLabels: No
Change in osmo-msc[master]: remove redundant unconditional PKG_CHECK_MODULES for libsmpp
Pau Espin Pedrol has posted comments on this change. ( https://gerrit.osmocom.org/9220 ) Change subject: remove redundant unconditional PKG_CHECK_MODULES for libsmpp .. Patch Set 2: (1 comment) https://gerrit.osmocom.org/#/c/9220/2/tests/smpp/Makefile.am File tests/smpp/Makefile.am: https://gerrit.osmocom.org/#/c/9220/2/tests/smpp/Makefile.am@1 PS2, Line 1: if BUILD_SMPP It's probably cleaner to move this if to tests/Makefile.am when we add it to SUBDIR. -- To view, visit https://gerrit.osmocom.org/9220 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-msc Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: Ic4a8a5c970c04a6257ee4c8e3977e98c4ddfda13 Gerrit-Change-Number: 9220 Gerrit-PatchSet: 2 Gerrit-Owner: Stefan Sperling Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Pau Espin Pedrol Gerrit-Comment-Date: Thu, 17 May 2018 14:12:22 + Gerrit-HasComments: Yes Gerrit-HasLabels: No
Change in osmo-hlr[master]: move creation of insert subscriber data messages to a common function
Neels Hofmeyr has posted comments on this change. ( https://gerrit.osmocom.org/7992 ) Change subject: move creation of insert subscriber data messages to a common function .. Patch Set 5: Code-Review-1 (1 comment) https://gerrit.osmocom.org/#/c/7992/5/src/gsup_server.c File src/gsup_server.c: https://gerrit.osmocom.org/#/c/7992/5/src/gsup_server.c@377 PS5, Line 377: int osmo_gsup_create_insert_subscriber_data_msg(struct osmo_gsup_message *gsup, char *imsi, char *msisdn, imsi and msisdn should be const, as laforge requested earlier -- To view, visit https://gerrit.osmocom.org/7992 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-hlr Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I6a92ca34cdaadca9eacc774bb1ca386c325ba865 Gerrit-Change-Number: 7992 Gerrit-PatchSet: 5 Gerrit-Owner: Stefan Sperling Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Neels Hofmeyr Gerrit-Reviewer: Stefan Sperling Gerrit-Reviewer: neels Gerrit-Comment-Date: Thu, 17 May 2018 15:30:47 + Gerrit-HasComments: Yes Gerrit-HasLabels: Yes
Change in osmo-msc[master]: remove redundant unconditional PKG_CHECK_MODULES for libsmpp
Neels Hofmeyr has posted comments on this change. ( https://gerrit.osmocom.org/9220 ) Change subject: remove redundant unconditional PKG_CHECK_MODULES for libsmpp .. Patch Set 2: Code-Review+1 (1 comment) https://gerrit.osmocom.org/#/c/9220/2/tests/smpp/Makefile.am File tests/smpp/Makefile.am: https://gerrit.osmocom.org/#/c/9220/2/tests/smpp/Makefile.am@1 PS2, Line 1: if BUILD_SMPP > It's probably cleaner to move this if to tests/Makefile.am when we add it to > SUBDIR. we also put Makefile paths in configure.ac and can't do that conditionally, so not 100% sure that we should make the entire subdir conditional? -- To view, visit https://gerrit.osmocom.org/9220 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-msc Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: Ic4a8a5c970c04a6257ee4c8e3977e98c4ddfda13 Gerrit-Change-Number: 9220 Gerrit-PatchSet: 2 Gerrit-Owner: Stefan Sperling Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Neels Hofmeyr Gerrit-Reviewer: Pau Espin Pedrol Gerrit-Comment-Date: Thu, 17 May 2018 15:34:24 + Gerrit-HasComments: Yes Gerrit-HasLabels: Yes
Change in osmo-ttcn3-hacks[master]: MSC_Tests: Extend timeout waiting for Clear Cmd in TC_establish_and_n...
Neels Hofmeyr has posted comments on this change. ( https://gerrit.osmocom.org/9219 ) Change subject: MSC_Tests: Extend timeout waiting for Clear Cmd in TC_establish_and_nothing .. Patch Set 1: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/9219 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-ttcn3-hacks Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I998cfb52a3813dd9f76d3787e4d0d448752ec847 Gerrit-Change-Number: 9219 Gerrit-PatchSet: 1 Gerrit-Owner: daniel Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Neels Hofmeyr Gerrit-Comment-Date: Thu, 17 May 2018 15:35:07 + Gerrit-HasComments: No Gerrit-HasLabels: Yes
Change in osmo-bsc[master]: add counter for connection attempts from BTS with unknown unit id
Neels Hofmeyr has posted comments on this change. ( https://gerrit.osmocom.org/9218 ) Change subject: add counter for connection attempts from BTS with unknown unit id .. Patch Set 1: Code-Review+2 maybe we should also count the successful BTS connections to add perspective to this counter -- To view, visit https://gerrit.osmocom.org/9218 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bsc Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I58866aff36a1c8463bf84b4392a5124ffeaa32ea Gerrit-Change-Number: 9218 Gerrit-PatchSet: 1 Gerrit-Owner: Stefan Sperling Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Neels Hofmeyr Gerrit-Comment-Date: Thu, 17 May 2018 15:38:03 + Gerrit-HasComments: No Gerrit-HasLabels: Yes
Change in osmo-bsc[master]: show all global counters of osmo-bsc in vty
Neels Hofmeyr has posted comments on this change. ( https://gerrit.osmocom.org/9217 ) Change subject: show all global counters of osmo-bsc in vty .. Patch Set 1: Code-Review+2 (1 comment) https://gerrit.osmocom.org/#/c/9217/1/src/libbsc/bsc_vty.c File src/libbsc/bsc_vty.c: https://gerrit.osmocom.org/#/c/9217/1/src/libbsc/bsc_vty.c@4136 PS1, Line 4136: int print_counter(struct rate_ctr_group *bsc_ctrs, struct rate_ctr *ctr, const struct rate_ctr_desc *desc, void *data) (was gonna say "const" but this is adhering to rate_ctr_handler_t) -- To view, visit https://gerrit.osmocom.org/9217 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bsc Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I58ae04e1960774d760e3ebb54a4f307c9f753655 Gerrit-Change-Number: 9217 Gerrit-PatchSet: 1 Gerrit-Owner: Stefan Sperling Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Neels Hofmeyr Gerrit-Comment-Date: Thu, 17 May 2018 15:41:57 + Gerrit-HasComments: Yes Gerrit-HasLabels: Yes
Change in osmo-mgw[master]: mgcp: switch to new osmux output APIs
Neels Hofmeyr has posted comments on this change. ( https://gerrit.osmocom.org/9216 ) Change subject: mgcp: switch to new osmux output APIs .. Patch Set 1: Code-Review+1 (1 comment) I have no idea about this API https://gerrit.osmocom.org/#/c/9216/1/src/libosmo-mgcp/mgcp_osmux.c File src/libosmo-mgcp/mgcp_osmux.c: https://gerrit.osmocom.org/#/c/9216/1/src/libosmo-mgcp/mgcp_osmux.c@553 PS1, Line 553: scheduled_tx_net_cb, endp); (weird indenting choice ... we typically align with '(' or use one tab) -- To view, visit https://gerrit.osmocom.org/9216 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-mgw Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I0705aa4dc4b02eaff4d6030795243e6720f7fddf Gerrit-Change-Number: 9216 Gerrit-PatchSet: 1 Gerrit-Owner: Pau Espin Pedrol Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Neels Hofmeyr Gerrit-Comment-Date: Thu, 17 May 2018 15:44:14 + Gerrit-HasComments: Yes Gerrit-HasLabels: Yes
Change in osmo-mgw[master]: mgcp: mgcp_osmux: use conn_bts when forwarding pkts from bsc_nat
Neels Hofmeyr has posted comments on this change. ( https://gerrit.osmocom.org/9215 ) Change subject: mgcp: mgcp_osmux: use conn_bts when forwarding pkts from bsc_nat .. Patch Set 1: Code-Review+1 can't claim that I understand -- To view, visit https://gerrit.osmocom.org/9215 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-mgw Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: Ib57e12e5a36b5842c40673c236907bbcbfc390f3 Gerrit-Change-Number: 9215 Gerrit-PatchSet: 1 Gerrit-Owner: Pau Espin Pedrol Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Neels Hofmeyr Gerrit-Reviewer: dexter Gerrit-Comment-Date: Thu, 17 May 2018 15:46:14 + Gerrit-HasComments: No Gerrit-HasLabels: Yes
Change in osmo-ttcn3-hacks[master]: MSC_Tests: Extend timeout waiting for Clear Cmd in TC_establish_and_n...
daniel has submitted this change and it was merged. ( https://gerrit.osmocom.org/9219 ) Change subject: MSC_Tests: Extend timeout waiting for Clear Cmd in TC_establish_and_nothing .. MSC_Tests: Extend timeout waiting for Clear Cmd in TC_establish_and_nothing This should fix the bogus failures we are seeing in this test. The pcap usually shows that the Clear Command does arrive after about 5 seconds, but sometimes the internal timer fires before that. Double the timeout of the test here. Change-Id: I998cfb52a3813dd9f76d3787e4d0d448752ec847 --- M msc/MSC_Tests.ttcn 1 file changed, 1 insertion(+), 1 deletion(-) Approvals: Jenkins Builder: Verified Neels Hofmeyr: Looks good to me, approved diff --git a/msc/MSC_Tests.ttcn b/msc/MSC_Tests.ttcn index edaa61b..56ac3d3 100644 --- a/msc/MSC_Tests.ttcn +++ b/msc/MSC_Tests.ttcn @@ -1173,7 +1173,7 @@ f_perform_lu(); f_establish_fully(); - f_expect_clear(); + f_expect_clear(10.0); } testcase TC_establish_and_nothing() runs on MTC_CT { var BSC_ConnHdlr vc_conn; -- To view, visit https://gerrit.osmocom.org/9219 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-ttcn3-hacks Gerrit-Branch: master Gerrit-MessageType: merged Gerrit-Change-Id: I998cfb52a3813dd9f76d3787e4d0d448752ec847 Gerrit-Change-Number: 9219 Gerrit-PatchSet: 1 Gerrit-Owner: daniel Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Neels Hofmeyr Gerrit-Reviewer: daniel
Change in osmo-msc[master]: remove redundant unconditional PKG_CHECK_MODULES for libsmpp
Pau Espin Pedrol has posted comments on this change. ( https://gerrit.osmocom.org/9220 ) Change subject: remove redundant unconditional PKG_CHECK_MODULES for libsmpp .. Patch Set 2: We do that in osmo-trx and it works fine: https://git.osmocom.org/osmo-trx/tree/Transceiver52M/device/Makefile.am -- To view, visit https://gerrit.osmocom.org/9220 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-msc Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: Ic4a8a5c970c04a6257ee4c8e3977e98c4ddfda13 Gerrit-Change-Number: 9220 Gerrit-PatchSet: 2 Gerrit-Owner: Stefan Sperling Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Neels Hofmeyr Gerrit-Reviewer: Pau Espin Pedrol Gerrit-Comment-Date: Thu, 17 May 2018 15:55:18 + Gerrit-HasComments: No Gerrit-HasLabels: No
Change in osmo-ci[master]: jobs: osmo-gsm-tester-builder: Add new job to build osmocom-bb
Pau Espin Pedrol has uploaded this change for review. ( https://gerrit.osmocom.org/9221 Change subject: jobs: osmo-gsm-tester-builder: Add new job to build osmocom-bb .. jobs: osmo-gsm-tester-builder: Add new job to build osmocom-bb Change-Id: I4b390e34719503a5d0a50e6392b1ceeb3a9cb730 --- M jobs/osmo-gsm-tester-builder.yml 1 file changed, 3 insertions(+), 0 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-ci refs/changes/21/9221/1 diff --git a/jobs/osmo-gsm-tester-builder.yml b/jobs/osmo-gsm-tester-builder.yml index a43580c..48150c7 100644 --- a/jobs/osmo-gsm-tester-builder.yml +++ b/jobs/osmo-gsm-tester-builder.yml @@ -15,6 +15,7 @@ - osmo-pcu - osmo-sgsn - osmo-trx + - osmocom-bb - osmo-nitb: triggered-by: master-openbsc - osmo-stp: @@ -85,6 +86,8 @@ name: OSMO_GSM_TESTER_BUILD_osmo_pcu - add_param_build_branch: name: OSMO_GSM_TESTER_BUILD_osmo_trx + - add_param_build_branch: + name: OSMO_GSM_TESTER_BUILD_osmocom_bb scm: - osmo-gsm-tester-repo -- To view, visit https://gerrit.osmocom.org/9221 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-ci Gerrit-Branch: master Gerrit-MessageType: newchange Gerrit-Change-Id: I4b390e34719503a5d0a50e6392b1ceeb3a9cb730 Gerrit-Change-Number: 9221 Gerrit-PatchSet: 1 Gerrit-Owner: Pau Espin Pedrol
Change in osmo-gsm-tester[master]: contrib: common: create_bin_tgz supports sbin dir now
Pau Espin Pedrol has uploaded this change for review. ( https://gerrit.osmocom.org/9223 Change subject: contrib: common: create_bin_tgz supports sbin dir now .. contrib: common: create_bin_tgz supports sbin dir now Change-Id: I562721af82e481e926ee65dbcd9dcc5b55057ae8 --- M contrib/jenkins-build-common.sh M contrib/jenkins-build-osmo-bsc.sh M contrib/jenkins-build-osmo-bts.sh M contrib/jenkins-build-osmo-mgw.sh 4 files changed, 31 insertions(+), 21 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-gsm-tester refs/changes/23/9223/1 diff --git a/contrib/jenkins-build-common.sh b/contrib/jenkins-build-common.sh index 9d85622..79509bc 100644 --- a/contrib/jenkins-build-common.sh +++ b/contrib/jenkins-build-common.sh @@ -139,32 +139,42 @@ make install } +prune_files() { +bindir="$1" +wanted_binaries="$2" + +if [ ! -d "$prefix_real"/$bindir ]; then return; fi +# remove binaries not intended to originate from this build +cd "$prefix_real"/$bindir +for f in * ; do + if [ -z "$(echo "_ $wanted_binaries _" | grep " $f ")" ]; then +rm "$f" + fi +done + +# ensure requested binaries indeed exist +for b in $wanted_binaries ; do + if [ ! -f "$b" ]; then +set +x; echo "ERROR: no such binary: $b in $prefix_real/$bindir/"; set -x +ls -1 "$prefix_real/$bindir" +exit 1 + fi +done +} + create_bin_tgz() { # build the archive that is going to be copied to the tester - wanted_binaries="$@" + wanted_binaries_bin="$1" + wanted_binaries_sbin="$2" - if [ -z "$wanted_binaries" ]; then + if [ -z "$wanted_binaries_bin" ] && [ -z "$wanted_binaries_sbin" ]; then set +x; echo "ERROR: create_bin_tgz needs a list of permitted binaries"; set -x exit 1 fi - # remove binaries not intended to originate from this build - cd "$prefix_real"/bin - for f in * ; do -if [ -z "$(echo "_ $wanted_binaries _" | grep " $f ")" ]; then - rm "$f" -fi - done - - # ensure requested binaries indeed exist - for b in $wanted_binaries ; do -if [ ! -f "$b" ]; then - set +x; echo "ERROR: no such binary: $b in $prefix_real/bin/"; set -x - ls -1 "$prefix_real/bin" - exit 1 -fi - done + prune_files bin "$wanted_binaries_bin" + prune_files sbin "$wanted_binaries_sbin" cd "$prefix_real" this="$name.build-${BUILD_NUMBER-$(date +%Y-%m-%d_%H_%M_%S)}" diff --git a/contrib/jenkins-build-osmo-bsc.sh b/contrib/jenkins-build-osmo-bsc.sh index 73e71e5..4081a00 100755 --- a/contrib/jenkins-build-osmo-bsc.sh +++ b/contrib/jenkins-build-osmo-bsc.sh @@ -11,4 +11,4 @@ build_repo osmo-mgw --enable-sanitize build_repo osmo-bsc --enable-sanitize -create_bin_tgz osmo-bsc abisip-find ipaccess-config +create_bin_tgz "osmo-bsc abisip-find ipaccess-config" diff --git a/contrib/jenkins-build-osmo-bts.sh b/contrib/jenkins-build-osmo-bts.sh index b40c613..e5fab5d 100755 --- a/contrib/jenkins-build-osmo-bts.sh +++ b/contrib/jenkins-build-osmo-bts.sh @@ -10,4 +10,4 @@ build_repo libosmo-abis --enable-sanitize build_repo osmo-bts --enable-sanitize --enable-trx --with-openbsc=$base/openbsc/openbsc/include --enable-octphy --with-octsdr-2g=$base/octphy-2g-headers -create_bin_tgz osmo-bts-trx osmo-bts-octphy +create_bin_tgz "osmo-bts-trx osmo-bts-octphy" diff --git a/contrib/jenkins-build-osmo-mgw.sh b/contrib/jenkins-build-osmo-mgw.sh index d4ff0b9..43473c6 100755 --- a/contrib/jenkins-build-osmo-mgw.sh +++ b/contrib/jenkins-build-osmo-mgw.sh @@ -9,4 +9,4 @@ build_repo libosmo-netif --enable-sanitize --disable-doxygen build_repo osmo-mgw --enable-sanitize -create_bin_tgz osmo-bsc_mgcp osmo-mgw +create_bin_tgz "osmo-bsc_mgcp osmo-mgw" -- To view, visit https://gerrit.osmocom.org/9223 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-gsm-tester Gerrit-Branch: master Gerrit-MessageType: newchange Gerrit-Change-Id: I562721af82e481e926ee65dbcd9dcc5b55057ae8 Gerrit-Change-Number: 9223 Gerrit-PatchSet: 1 Gerrit-Owner: Pau Espin Pedrol
Change in osmo-gsm-tester[master]: contrib: Add jenkins-build-osmocom-bb.sh to build osmocon
Pau Espin Pedrol has uploaded this change for review. ( https://gerrit.osmocom.org/9224 Change subject: contrib: Add jenkins-build-osmocom-bb.sh to build osmocon .. contrib: Add jenkins-build-osmocom-bb.sh to build osmocon Change-Id: Ic5b29951d3fd143dce5826138c84301a9797b1ef --- A contrib/jenkins-build-osmocom-bb.sh 1 file changed, 24 insertions(+), 0 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-gsm-tester refs/changes/24/9224/1 diff --git a/contrib/jenkins-build-osmocom-bb.sh b/contrib/jenkins-build-osmocom-bb.sh new file mode 100755 index 000..f54518a --- /dev/null +++ b/contrib/jenkins-build-osmocom-bb.sh @@ -0,0 +1,24 @@ +#!/bin/sh +set -e -x + +base="$PWD" +name="osmocom-bb" +. "$(dirname "$0")/jenkins-build-common.sh" + +build_repo libosmocore --disable-doxygen + +have_repo osmocom-bb +cd osmocom-bb/ + +cd src/host/osmocon/ +set +x; echo; echo; set -x +autoreconf -fi +set +x; echo; echo; set -x +./configure --prefix="$prefix" $CONFIGURE_FLAGS $configure_opts +set +x; echo; echo; set -x +make -j4 +set +x; echo; echo; set -x +make install + + +create_bin_tgz "" "osmocon" -- To view, visit https://gerrit.osmocom.org/9224 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-gsm-tester Gerrit-Branch: master Gerrit-MessageType: newchange Gerrit-Change-Id: Ic5b29951d3fd143dce5826138c84301a9797b1ef Gerrit-Change-Number: 9224 Gerrit-PatchSet: 1 Gerrit-Owner: Pau Espin Pedrol
Change in osmo-gsm-tester[master]: contrib: common: Record repo curr rev in have_repo instead of build_repo
Pau Espin Pedrol has uploaded this change for review. ( https://gerrit.osmocom.org/9222 Change subject: contrib: common: Record repo curr rev in have_repo instead of build_repo .. contrib: common: Record repo curr rev in have_repo instead of build_repo This way scripts making use only of have_repo (to have build specific insturctions) can still benefit from that code. Change-Id: I03149942ac1d279a15c71df3eb880c331c8fc155 --- M contrib/jenkins-build-common.sh 1 file changed, 2 insertions(+), 2 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-gsm-tester refs/changes/22/9222/1 diff --git a/contrib/jenkins-build-common.sh b/contrib/jenkins-build-common.sh index 39046ef..9d85622 100644 --- a/contrib/jenkins-build-common.sh +++ b/contrib/jenkins-build-common.sh @@ -91,6 +91,8 @@ git rev-parse HEAD + echo "$(git rev-parse HEAD) $dep" >> "$prefix_real/${name}_git_hashes.txt" + cd "$base" } @@ -122,8 +124,6 @@ cd "$dep" - echo "$(git rev-parse HEAD) $dep" >> "$prefix_real/${name}_git_hashes.txt" - # special shim: we know the openbsc.git needs to be built in the openbsc/ subdir. if [ "$dep" = "openbsc" ]; then cd openbsc -- To view, visit https://gerrit.osmocom.org/9222 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-gsm-tester Gerrit-Branch: master Gerrit-MessageType: newchange Gerrit-Change-Id: I03149942ac1d279a15c71df3eb880c331c8fc155 Gerrit-Change-Number: 9222 Gerrit-PatchSet: 1 Gerrit-Owner: Pau Espin Pedrol
Change in osmo-msc[master]: implement periodic Location Update expiry in the VLR
Neels Hofmeyr has posted comments on this change. ( https://gerrit.osmocom.org/9211 ) Change subject: implement periodic Location Update expiry in the VLR .. Patch Set 2: Code-Review-1 (13 comments) https://gerrit.osmocom.org/#/c/9211/2/include/osmocom/msc/gsm_subscriber.h File include/osmocom/msc/gsm_subscriber.h: https://gerrit.osmocom.org/#/c/9211/2/include/osmocom/msc/gsm_subscriber.h@20 PS2, Line 20: #define GSM_SUBSCRIBER_NO_EXPIRATION 0x0 interesting that it existed before, but I would prefer these values moving into the libvlr code now. After all it is specifically about VLR expiry. And then I'd call them VLR_SUBSRC_*, not GSM_* https://gerrit.osmocom.org/#/c/9211/2/src/libvlr/vlr.c File src/libvlr/vlr.c: https://gerrit.osmocom.org/#/c/9211/2/src/libvlr/vlr.c@469 PS2, Line 469: /* Table 10.5.33: The T3212 timeout value is coded as the (why not use the entire line width. hint in vim: Visual-Line mark the comment and enter gw to automatically re-align the line widths to the value set in 'set textwidth=N'. With 'set cindent' vim even edits the '*' markers for you automatically.) The "Table X" info is pretty useless without the "3GPP TS XX.YYY" spec. https://gerrit.osmocom.org/#/c/9211/2/src/libvlr/vlr.c@471 PS2, Line 471: * periodic updating in decihours. Mark the subscriber as "decihours" lol https://gerrit.osmocom.org/#/c/9211/2/src/libvlr/vlr.c@473 PS2, Line 473: * Timeout is twice the t3212 value plus one minute */ lol "twice plus one minute" wtf https://gerrit.osmocom.org/#/c/9211/2/src/libvlr/vlr.c@479 PS2, Line 479: vsub->imsi, vsub->id); use vlr_subscr_name() (see below) https://gerrit.osmocom.org/#/c/9211/2/src/libvlr/vlr.c@481 PS2, Line 481: vsub->expire_lu = GSM_SUBSCRIBER_NO_EXPIRATION; hmm. we should always be getting the time, right? If not, then what do we prefer, "memory leaks" of subscribers sticking around, or a subscriber being thrown out early and needing to do another LU later? I actually think rather the latter. So I think I'd set expire_lu = 1 so it always gets expired? https://gerrit.osmocom.org/#/c/9211/2/src/libvlr/vlr.c@503 PS2, Line 503: LOGP(DVLR, LOGL_DEBUG, "IMSI=%s id=%llu: Location Update expired\n", vsub->imsi, vsub->id); use vlr_subscr_name(). We use that all over, and we might at some point tweak its output, which would then match everywhere, including here. https://gerrit.osmocom.org/#/c/9211/2/src/libvlr/vlr.c@1192 PS2, Line 1192: osmo_timer_setup(&vlr->lu_expire_timer, vlr_subscr_expire_lu, vlr); (for me it would make sense to keep osmo_timer_setup() right next to osmo_timer_schedule() below) https://gerrit.osmocom.org/#/c/9211/2/src/libvlr/vlr_lu_fsm.c File src/libvlr/vlr_lu_fsm.c: https://gerrit.osmocom.org/#/c/9211/2/src/libvlr/vlr_lu_fsm.c@359 PS2, Line 359: /* Balanced by vlr_subscr_rx_imsi_detach() or Location Update expiry */ let's rather say "by vlr_subscr_expire()", which is accurate for both cases. https://gerrit.osmocom.org/#/c/9211/2/tests/msc_vlr/msc_vlr_test_no_authen.c File tests/msc_vlr/msc_vlr_test_no_authen.c: https://gerrit.osmocom.org/#/c/9211/2/tests/msc_vlr/msc_vlr_test_no_authen.c@929 PS2, Line 929: maybe you should set an explicit t3212 here to make the test independent from default values possibly changing one day (meaning different timer values ending up in the checked log output) https://gerrit.osmocom.org/#/c/9211/2/tests/msc_vlr/msc_vlr_test_no_authen.c@971 PS2, Line 971: OSMO_ASSERT(vsub); also assert that lu_success flag and the periodic timer value being != that GSM_SUBSCRIBER_NO_EXPIRATION value? https://gerrit.osmocom.org/#/c/9211/2/tests/msc_vlr/msc_vlr_test_no_authen.c@973 PS2, Line 973: I would add a fake_time_passes() here of just under the expiration time and assert that the subscriber is still around, and then pass that last minute of fake time and assert it is gone. (somehow make sure the periodic lu cleanup timer has also fired, probably by enough fake time passing, as you apparently do). Note that fake_time is quite precise since it is not subject to real time passing, and you should be able to stay even a millisecond below / a millisecond above to not trigger / trigger the timer (as long as the periodic cleanup function gets invoked); however, i've never used fake time with MONOTONIC before, I hope that works? https://gerrit.osmocom.org/#/c/9211/2/tests/msc_vlr/msc_vlr_tests.h File tests/msc_vlr/msc_vlr_tests.h: https://gerrit.osmocom.org/#/c/9211/2/tests/msc_vlr/msc_vlr_tests.h@221 PS2, Line 221: osmo_clock_override_add(CLOCK_MONOTONIC, secs, usecs * 1000); \ ah. nice. -- To view, visit https://gerrit.osmocom.org/9211 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-msc Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: Iebdee8b12d22acfcfb265ee41e
Change in osmo-gsm-tester[master]: contrib: Add jenkins-build-osmocom-bb.sh to build osmocon
Neels Hofmeyr has posted comments on this change. ( https://gerrit.osmocom.org/9224 ) Change subject: contrib: Add jenkins-build-osmocom-bb.sh to build osmocon .. Patch Set 1: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/9224 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-gsm-tester Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: Ic5b29951d3fd143dce5826138c84301a9797b1ef Gerrit-Change-Number: 9224 Gerrit-PatchSet: 1 Gerrit-Owner: Pau Espin Pedrol Gerrit-Reviewer: Neels Hofmeyr Gerrit-Comment-Date: Thu, 17 May 2018 16:26:02 + Gerrit-HasComments: No Gerrit-HasLabels: Yes
Change in osmo-gsm-tester[master]: contrib: common: create_bin_tgz supports sbin dir now
Neels Hofmeyr has posted comments on this change. ( https://gerrit.osmocom.org/9223 ) Change subject: contrib: common: create_bin_tgz supports sbin dir now .. Patch Set 1: Code-Review+1 (3 comments) https://gerrit.osmocom.org/#/c/9223/1//COMMIT_MSG Commit Message: https://gerrit.osmocom.org/#/c/9223/1//COMMIT_MSG@7 PS1, Line 7: contrib: common: create_bin_tgz supports sbin dir now "add support for sbin dir binaries" And add the reason why: which of our packages installs sbin binaries!? https://gerrit.osmocom.org/#/c/9223/1/contrib/jenkins-build-common.sh File contrib/jenkins-build-common.sh: https://gerrit.osmocom.org/#/c/9223/1/contrib/jenkins-build-common.sh@146 PS1, Line 146: if [ ! -d "$prefix_real"/$bindir ]; then return; fi since it is now a shell var, include it in the quotes "$prefix_real/$bindir" not that we would ever have bin dirs with spaces, it's just nitpicking. https://gerrit.osmocom.org/#/c/9223/1/contrib/jenkins-build-common.sh@168 PS1, Line 168: wanted_binaries_bin="$1" so now all callers need to pass binaries in quotes, including spaces in the quotes... well, ok then. -- To view, visit https://gerrit.osmocom.org/9223 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-gsm-tester Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I562721af82e481e926ee65dbcd9dcc5b55057ae8 Gerrit-Change-Number: 9223 Gerrit-PatchSet: 1 Gerrit-Owner: Pau Espin Pedrol Gerrit-Reviewer: Neels Hofmeyr Gerrit-Comment-Date: Thu, 17 May 2018 16:33:01 + Gerrit-HasComments: Yes Gerrit-HasLabels: Yes
Change in osmo-ci[master]: jobs: osmo-gsm-tester-builder: Add new job to build osmocom-bb
Neels Hofmeyr has posted comments on this change. ( https://gerrit.osmocom.org/9221 ) Change subject: jobs: osmo-gsm-tester-builder: Add new job to build osmocom-bb .. Patch Set 1: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/9221 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-ci Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I4b390e34719503a5d0a50e6392b1ceeb3a9cb730 Gerrit-Change-Number: 9221 Gerrit-PatchSet: 1 Gerrit-Owner: Pau Espin Pedrol Gerrit-Reviewer: Neels Hofmeyr Gerrit-Comment-Date: Thu, 17 May 2018 16:34:20 + Gerrit-HasComments: No Gerrit-HasLabels: Yes
Change in osmo-gsm-tester[master]: contrib: common: Record repo curr rev in have_repo instead of build_repo
Neels Hofmeyr has posted comments on this change. ( https://gerrit.osmocom.org/9222 ) Change subject: contrib: common: Record repo curr rev in have_repo instead of build_repo .. Patch Set 1: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/9222 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-gsm-tester Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I03149942ac1d279a15c71df3eb880c331c8fc155 Gerrit-Change-Number: 9222 Gerrit-PatchSet: 1 Gerrit-Owner: Pau Espin Pedrol Gerrit-Reviewer: Neels Hofmeyr Gerrit-Comment-Date: Thu, 17 May 2018 16:33:47 + Gerrit-HasComments: No Gerrit-HasLabels: Yes
Change in osmo-bsc[master]: bsc_api.c: actually log with context
Neels Hofmeyr has posted comments on this change. ( https://gerrit.osmocom.org/7996 ) Change subject: bsc_api.c: actually log with context .. Patch Set 1: (1 comment) https://gerrit.osmocom.org/#/c/7996/1/src/libbsc/bsc_api.c File src/libbsc/bsc_api.c: https://gerrit.osmocom.org/#/c/7996/1/src/libbsc/bsc_api.c@47 PS1, Line 47: #define LOGPLCHAN(lchan, ss, level, fmt, args...) \ > I think this should go in a header file so it can be used from more code agreed -- To view, visit https://gerrit.osmocom.org/7996 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bsc Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: If469defcc6fe8950dac5df61db3f39d297893318 Gerrit-Change-Number: 7996 Gerrit-PatchSet: 1 Gerrit-Owner: Neels Hofmeyr Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Neels Hofmeyr Gerrit-Comment-Date: Thu, 17 May 2018 16:36:36 + Gerrit-HasComments: Yes Gerrit-HasLabels: No
Change in osmo-ci[master]: jobs: osmo-gsm-tester-runner: Add ttcn3 job
Pau Espin Pedrol has uploaded this change for review. ( https://gerrit.osmocom.org/9225 Change subject: jobs: osmo-gsm-tester-runner: Add ttcn3 job .. jobs: osmo-gsm-tester-runner: Add ttcn3 job Change-Id: I8ca1c9a3a18138a27232efba7d65d6806e044a6b --- M jobs/osmo-gsm-tester-runner.yml A jobs/osmo-gsm-tester_ttcn3.sh 2 files changed, 41 insertions(+), 0 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-ci refs/changes/25/9225/1 diff --git a/jobs/osmo-gsm-tester-runner.yml b/jobs/osmo-gsm-tester-runner.yml index 5e1ff92..d6bece9 100644 --- a/jobs/osmo-gsm-tester-runner.yml +++ b/jobs/osmo-gsm-tester-runner.yml @@ -7,6 +7,7 @@ jobs: - 'osmo-gsm-tester_run-{stage}' - 'osmo-gsm-tester_gerrit' + - 'osmo-gsm-tester_ttcn3' - scm: name: osmo-gsm-tester-gerrit @@ -166,3 +167,29 @@ - junit: results: 'trial-*/last_run/trial-*.xml' allow-empty-results: true + +# ttcn3 job +- job: +name: 'osmo-gsm-tester_ttcn3' +defaults: runner +scm: + - 'osmo-gsm-tester-gerrit' +triggers: + - timed: "H H/2 * * *" + - pollscm: + cron: "H/5 * * * *" +builders: + - shell: | + # make sure no bin artifacts from a previous run remain + rm -f *.tgz *.md5 + - copy_artifact_all + - copy_artifact: + repo: osmo-gsm-tester_build-osmocom-bb + - shell: !include-raw: osmo-gsm-tester_ttcn3.sh +publishers: + - archive: + artifacts: '*-run.tgz, *-bin.tgz' + default-excludes: false + - junit: + results: 'trial-*/last_run/trial-*.xml' + allow-empty-results: true diff --git a/jobs/osmo-gsm-tester_ttcn3.sh b/jobs/osmo-gsm-tester_ttcn3.sh new file mode 100644 index 000..f2b974f --- /dev/null +++ b/jobs/osmo-gsm-tester_ttcn3.sh @@ -0,0 +1,14 @@ +#!/bin/sh +set -e -x + +# On our hardware, we actually use the example configuration as-is. +export OSMO_GSM_TESTER_CONF="$PWD/osmo-gsm-tester/ttcn3" + +# debug: provoke a failure +#export OSMO_GSM_TESTER_OPTS="-s debug -t fail" + +unlink osmo-gsm-tester/ttcn3/resources.conf || true +ln -s resources.conf.prod osmo-gsm-tester/ttcn3/resources.conf + +PATH="$PWD/osmo-gsm-tester/src:$PATH" \ + ./osmo-gsm-tester/ttcn3/jenkins-run.sh -- To view, visit https://gerrit.osmocom.org/9225 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-ci Gerrit-Branch: master Gerrit-MessageType: newchange Gerrit-Change-Id: I8ca1c9a3a18138a27232efba7d65d6806e044a6b Gerrit-Change-Number: 9225 Gerrit-PatchSet: 1 Gerrit-Owner: Pau Espin Pedrol
Change in osmo-ci[master]: jobs: osmo-gsm-tester-runner: Add ttcn3 job
Pau Espin Pedrol has posted comments on this change. ( https://gerrit.osmocom.org/9225 ) Change subject: jobs: osmo-gsm-tester-runner: Add ttcn3 job .. Patch Set 1: Code-Review-1 Don't merge this one, I couldn't verify it yet since current master of osmo-gsm-tester-runner.yml is broken, fails with error: FileNotFoundError: [Errno 2] No such file or directory: 'osmo-gsm-tester_run-{stage}.sh' I already pinged lynxis about it. -- To view, visit https://gerrit.osmocom.org/9225 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-ci Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I8ca1c9a3a18138a27232efba7d65d6806e044a6b Gerrit-Change-Number: 9225 Gerrit-PatchSet: 1 Gerrit-Owner: Pau Espin Pedrol Gerrit-Reviewer: Pau Espin Pedrol Gerrit-Reviewer: lynxis lazus Gerrit-Comment-Date: Thu, 17 May 2018 17:14:33 + Gerrit-HasComments: No Gerrit-HasLabels: Yes
Change in osmo-ci[master]: jobs: osmo-gsm-tester-runner: Add ttcn3 job
lynxis lazus has posted comments on this change. ( https://gerrit.osmocom.org/9225 ) Change subject: jobs: osmo-gsm-tester-runner: Add ttcn3 job .. Patch Set 1: works for me. I'm using jjb 2.0 -- To view, visit https://gerrit.osmocom.org/9225 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-ci Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I8ca1c9a3a18138a27232efba7d65d6806e044a6b Gerrit-Change-Number: 9225 Gerrit-PatchSet: 1 Gerrit-Owner: Pau Espin Pedrol Gerrit-Reviewer: Pau Espin Pedrol Gerrit-Reviewer: lynxis lazus Gerrit-Comment-Date: Thu, 17 May 2018 18:34:45 + Gerrit-HasComments: No Gerrit-HasLabels: No
Change in osmo-ci[master]: jobs: osmo-gsm-tester-builder: Add new job to build osmocom-bb
Harald Welte has posted comments on this change. ( https://gerrit.osmocom.org/9221 ) Change subject: jobs: osmo-gsm-tester-builder: Add new job to build osmocom-bb .. Patch Set 1: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/9221 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-ci Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I4b390e34719503a5d0a50e6392b1ceeb3a9cb730 Gerrit-Change-Number: 9221 Gerrit-PatchSet: 1 Gerrit-Owner: Pau Espin Pedrol Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Neels Hofmeyr Gerrit-Comment-Date: Thu, 17 May 2018 20:04:29 + Gerrit-HasComments: No Gerrit-HasLabels: Yes
Change in osmo-gsm-tester[master]: contrib: common: Record repo curr rev in have_repo instead of build_repo
Harald Welte has posted comments on this change. ( https://gerrit.osmocom.org/9222 ) Change subject: contrib: common: Record repo curr rev in have_repo instead of build_repo .. Patch Set 1: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/9222 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-gsm-tester Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I03149942ac1d279a15c71df3eb880c331c8fc155 Gerrit-Change-Number: 9222 Gerrit-PatchSet: 1 Gerrit-Owner: Pau Espin Pedrol Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Neels Hofmeyr Gerrit-Comment-Date: Thu, 17 May 2018 20:05:01 + Gerrit-HasComments: No Gerrit-HasLabels: Yes
Change in osmo-msc[master]: remove redundant unconditional PKG_CHECK_MODULES for libsmpp
Harald Welte has posted comments on this change. ( https://gerrit.osmocom.org/9220 ) Change subject: remove redundant unconditional PKG_CHECK_MODULES for libsmpp .. Patch Set 2: Code-Review+1 -- To view, visit https://gerrit.osmocom.org/9220 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-msc Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: Ic4a8a5c970c04a6257ee4c8e3977e98c4ddfda13 Gerrit-Change-Number: 9220 Gerrit-PatchSet: 2 Gerrit-Owner: Stefan Sperling Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Neels Hofmeyr Gerrit-Reviewer: Pau Espin Pedrol Gerrit-Comment-Date: Thu, 17 May 2018 20:06:46 + Gerrit-HasComments: No Gerrit-HasLabels: Yes
Change in osmo-mgw[master]: mgcp: mgcp_osmux: use conn_bts when forwarding pkts from bsc_nat
Harald Welte has posted comments on this change. ( https://gerrit.osmocom.org/9215 ) Change subject: mgcp: mgcp_osmux: use conn_bts when forwarding pkts from bsc_nat .. Patch Set 1: Code-Review+2 -- To view, visit https://gerrit.osmocom.org/9215 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-mgw Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: Ib57e12e5a36b5842c40673c236907bbcbfc390f3 Gerrit-Change-Number: 9215 Gerrit-PatchSet: 1 Gerrit-Owner: Pau Espin Pedrol Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Neels Hofmeyr Gerrit-Reviewer: dexter Gerrit-Comment-Date: Thu, 17 May 2018 20:07:27 + Gerrit-HasComments: No Gerrit-HasLabels: Yes
Change in osmo-bsc[master]: show all global counters of osmo-bsc in vty
Harald Welte has posted comments on this change. ( https://gerrit.osmocom.org/9217 ) Change subject: show all global counters of osmo-bsc in vty .. Patch Set 1: Code-Review+2 (1 comment) https://gerrit.osmocom.org/#/c/9217/1/src/libbsc/bsc_vty.c File src/libbsc/bsc_vty.c: https://gerrit.osmocom.org/#/c/9217/1/src/libbsc/bsc_vty.c@4143 PS1, Line 4143: void openbsc_vty_print_statistics(struct vty *vty, struct gsm_network *net) We can merge this patch first, but I think it would be actually nice to have this as part of libosmocore. It should be the same for all applications, as it's truly generic. libosmovty depends on libosmocore, and rate_ctr are in libosmcoore, i.e. anyone using libosmovty should automatically get the "print statistics" installed. Maybe we should call it "print rate-counters" instead, as this will not clash with any existing VTY commands code like this installs inside the applications, so we can handle this in a graceful way (old programs with new libosmocore, ...) -- To view, visit https://gerrit.osmocom.org/9217 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bsc Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I58ae04e1960774d760e3ebb54a4f307c9f753655 Gerrit-Change-Number: 9217 Gerrit-PatchSet: 1 Gerrit-Owner: Stefan Sperling Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Neels Hofmeyr Gerrit-Comment-Date: Thu, 17 May 2018 20:11:06 + Gerrit-HasComments: Yes Gerrit-HasLabels: Yes
Change in osmo-bsc[master]: add counter for connection attempts from BTS with unknown unit id
Harald Welte has posted comments on this change. ( https://gerrit.osmocom.org/9218 ) Change subject: add counter for connection attempts from BTS with unknown unit id .. Patch Set 1: Code-Review-1 (1 comment) https://gerrit.osmocom.org/#/c/9218/1/src/libbsc/bts_ipaccess_nanobts.c File src/libbsc/bts_ipaccess_nanobts.c: https://gerrit.osmocom.org/#/c/9218/1/src/libbsc/bts_ipaccess_nanobts.c@471 PS1, Line 471: rate_ctr_inc(&bsc_gsmnet->bsc_ctrs->ctr[BSC_CTR_BTS_UNKNOWN_UNIT_ID]); this code is inserted *before* you know it's an OML or a RSL connection. The dispatch between OML/RSL is further down below in the switch statement. So technically, you don't know it's an OML connection. I guess the best way is to rename the counter and description (and possibly commit log message) to simply say "Connections with unknown IPA CCM Unit ID" without referring to OML or RSL explicitly. -- To view, visit https://gerrit.osmocom.org/9218 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bsc Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I58866aff36a1c8463bf84b4392a5124ffeaa32ea Gerrit-Change-Number: 9218 Gerrit-PatchSet: 1 Gerrit-Owner: Stefan Sperling Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Neels Hofmeyr Gerrit-Comment-Date: Thu, 17 May 2018 20:13:16 + Gerrit-HasComments: Yes Gerrit-HasLabels: Yes
Change in osmo-bsc[master]: add counter for connection attempts from BTS with unknown unit id
Harald Welte has removed a vote on this change. Change subject: add counter for connection attempts from BTS with unknown unit id .. Removed Code-Review+2 by Neels Hofmeyr -- To view, visit https://gerrit.osmocom.org/9218 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bsc Gerrit-Branch: master Gerrit-MessageType: deleteVote Gerrit-Change-Id: I58866aff36a1c8463bf84b4392a5124ffeaa32ea Gerrit-Change-Number: 9218 Gerrit-PatchSet: 1 Gerrit-Owner: Stefan Sperling Gerrit-Reviewer: Harald Welte Gerrit-Reviewer: Jenkins Builder Gerrit-Reviewer: Neels Hofmeyr
Change in osmo-msc[master]: a_reset: cleanup + remove dead code
Harald Welte has submitted this change and it was merged. ( https://gerrit.osmocom.org/8054 ) Change subject: a_reset: cleanup + remove dead code .. a_reset: cleanup + remove dead code a_reset.c/h was originally developed to be used in both, bsc and msc without changes. Unfortunately no suitable library has been found for a_reset.c/h so the file ended up as duplicated code in both split brances. Eventually we decided to specialize the generalized code again, which means some of the functions needed only by osmo-bsc are removed. - Remove dead code - Fix timer identification number (T16) - use fi->priv to hold context info - Minor cosmetic fixes Change-Id: I8e489eb494d358d130e51cb2167929edeaa12e92 Depends: libosmocore I36d221c973d3890721ef1d376fb9be82c4311378 Related: OS#3103 --- M include/osmocom/msc/a_iface.h M include/osmocom/msc/a_reset.h M src/libmsc/a_iface.c M src/libmsc/a_iface_bssap.c M src/libmsc/a_reset.c 5 files changed, 59 insertions(+), 159 deletions(-) Approvals: Harald Welte: Looks good to me, approved Jenkins Builder: Verified diff --git a/include/osmocom/msc/a_iface.h b/include/osmocom/msc/a_iface.h index 3098b51..217011d 100644 --- a/include/osmocom/msc/a_iface.h +++ b/include/osmocom/msc/a_iface.h @@ -51,7 +51,7 @@ /* A pointer to the reset handler FSM, the * state machine is allocated when the BSC * is registerd. */ - struct a_reset_ctx *reset; + struct osmo_fsm_inst *reset_fsm; /* A pointer to the sccp_user that is associated * with the A interface. We need this information diff --git a/include/osmocom/msc/a_reset.h b/include/osmocom/msc/a_reset.h index cdb17c2..8eb3bbf 100644 --- a/include/osmocom/msc/a_reset.h +++ b/include/osmocom/msc/a_reset.h @@ -20,45 +20,12 @@ #pragma once - - -/* Reset context data (callbacks, state machine etc...) */ -struct a_reset_ctx { - - /* FSM instance, which handles the reset procedure */ - struct osmo_fsm_inst *fsm; - - /* Connection failure counter. When this counter -* reaches a certain threshold, the reset procedure -* will be triggered */ - int conn_loss_counter; - - /* A human readable name to display in the logs */ - char name[256]; - - /* Callback function to be called when a connection -* failure is detected and a rest must occur */ - void (*cb)(void *priv); - - /* Privated data for the callback function */ - void *priv; -}; - /* Create and start state machine which handles the reset/reset-ack procedure */ -struct a_reset_ctx *a_reset_alloc(const void *ctx, const char *name, void *cb, void *priv, - bool already_connected); - -/* Tear down state machine */ -void a_reset_free(struct a_reset_ctx *reset); +struct osmo_fsm_inst *a_reset_alloc(void *ctx, const char *name, void *cb, + void *priv, bool already_connected); /* Confirm that we sucessfully received a reset acknowlege message */ -void a_reset_ack_confirm(struct a_reset_ctx *reset); - -/* Report a failed connection */ -void a_reset_conn_fail(struct a_reset_ctx *reset); - -/* Report a successful connection */ -void a_reset_conn_success(struct a_reset_ctx *reset); +void a_reset_ack_confirm(struct osmo_fsm_inst *reset_fsm); /* Check if we have a connection to a specified msc */ -bool a_reset_conn_ready(struct a_reset_ctx *reset); +bool a_reset_conn_ready(struct osmo_fsm_inst *reset_fsm); diff --git a/src/libmsc/a_iface.c b/src/libmsc/a_iface.c index 6f2000e..75fa438 100644 --- a/src/libmsc/a_iface.c +++ b/src/libmsc/a_iface.c @@ -209,7 +209,7 @@ /* Deliver paging request to all known BSCs */ llist_for_each_entry(bsc_ctx, &gsm_network->a.bscs, list) { - if (a_reset_conn_ready(bsc_ctx->reset)) { + if (a_reset_conn_ready(bsc_ctx->reset_fsm)) { LOGP(DBSSAP, LOGL_DEBUG, "Tx BSSMAP paging message from MSC %s to BSC %s (imsi=%s, tmsi=0x%08x, lac=%u)\n", osmo_sccp_addr_name(ss7, &bsc_ctx->msc_addr), @@ -471,10 +471,10 @@ void a_start_reset(struct bsc_context *bsc_ctx, bool already_connected) { char bsc_name[32]; - OSMO_ASSERT(bsc_ctx->reset == NULL); + OSMO_ASSERT(bsc_ctx->reset_fsm == NULL); /* Start reset procedure to make the new connection active */ snprintf(bsc_name, sizeof(bsc_name), "bsc-%i", bsc_ctx->bsc_addr.pc); - bsc_ctx->reset = a_reset_alloc(bsc_ctx, bsc_name, a_reset_cb, bsc_ctx, already_connected); + bsc_ctx->reset_fsm = a_reset_alloc(bsc_ctx, bsc_name, a_reset_cb, bsc_ctx, already_connected); } /* determine if given msg is BSSMAP RESET related (true) or not (false) */ @@ -521,7 +521,7 @@ a_start_reset(a_conn_info.bsc, false); } else { /* This BSC is alr
Change in osmo-bsc[master]: a_reset: cleanup + remove dead code
Harald Welte has submitted this change and it was merged. ( https://gerrit.osmocom.org/8055 ) Change subject: a_reset: cleanup + remove dead code .. a_reset: cleanup + remove dead code The function a_reset_free() is not used anywhere at the code. The reason for this is that a BSC instance is never cleared once it is started up. Also the timer number is not according to the spec. - Remove a_reset_free() - Fix timer identification number (T4) - use fi->priv to hold context info - Fix sourcecode formatting Change-Id: I72095d52304c520e383755eee6c889bce492cbd4 Related: OS#3102 --- M include/osmocom/bsc/a_reset.h M include/osmocom/bsc/bsc_msc_data.h M src/libbsc/a_reset.c M src/libbsc/bsc_subscr_conn_fsm.c M src/osmo-bsc/osmo_bsc_api.c M src/osmo-bsc/osmo_bsc_bssap.c M src/osmo-bsc/osmo_bsc_sigtran.c 7 files changed, 77 insertions(+), 105 deletions(-) Approvals: Harald Welte: Looks good to me, approved Jenkins Builder: Verified diff --git a/include/osmocom/bsc/a_reset.h b/include/osmocom/bsc/a_reset.h index c01a8b0..6b6ce81 100644 --- a/include/osmocom/bsc/a_reset.h +++ b/include/osmocom/bsc/a_reset.h @@ -20,41 +20,17 @@ #pragma once - - -/* Reset context data (callbacks, state machine etc...) */ -struct a_reset_ctx { - - /* FSM instance, which handles the reset procedure */ - struct osmo_fsm_inst *fsm; - - /* Connection failure counter. When this counter -* reaches a certain threshold, the reset procedure -* will be triggered */ - int conn_loss_counter; - - /* Callback function to be called when a connection -* failure is detected and a rest must occur */ - void (*cb)(void *priv); - - /* Privated data for the callback function */ - void *priv; -}; - /* Create and start state machine which handles the reset/reset-ack procedure */ -struct a_reset_ctx *a_reset_alloc(const void *ctx, const char *name, void *cb, void *priv); - -/* Tear down state machine */ -void a_reset_free(struct a_reset_ctx *reset); +struct osmo_fsm_inst *a_reset_alloc(void *ctx, const char *name, void *cb, void *priv); /* Confirm that we sucessfully received a reset acknowlege message */ -void a_reset_ack_confirm(struct a_reset_ctx *reset); +void a_reset_ack_confirm(struct osmo_fsm_inst *reset_fsm); /* Report a failed connection */ -void a_reset_conn_fail(struct a_reset_ctx *reset); +void a_reset_conn_fail(struct osmo_fsm_inst *reset_fsm); /* Report a successful connection */ -void a_reset_conn_success(struct a_reset_ctx *reset); +void a_reset_conn_success(struct osmo_fsm_inst *reset_fsm); /* Check if we have a connection to a specified msc */ -bool a_reset_conn_ready(struct a_reset_ctx *reset); +bool a_reset_conn_ready(struct osmo_fsm_inst *reset_fsm); diff --git a/include/osmocom/bsc/bsc_msc_data.h b/include/osmocom/bsc/bsc_msc_data.h index bedf412..345724d 100644 --- a/include/osmocom/bsc/bsc_msc_data.h +++ b/include/osmocom/bsc/bsc_msc_data.h @@ -124,7 +124,9 @@ struct osmo_sccp_addr msc_addr; char *msc_addr_name; - struct a_reset_ctx *reset; + /* Pointer to the osmo-fsm that controls the +* BSSMAP RESET procedure */ + struct osmo_fsm_inst *reset_fsm; } a; }; diff --git a/src/libbsc/a_reset.c b/src/libbsc/a_reset.c index 1fccc5f..b8f8c8c 100644 --- a/src/libbsc/a_reset.c +++ b/src/libbsc/a_reset.c @@ -29,16 +29,31 @@ #include #include -#define RESET_RESEND_INTERVAL 2/* sec */ -#define RESET_RESEND_TIMER_NO 1234 /* FIXME: dig out the real timer number */ +#define RESET_RESEND_INTERVAL 2/* sec */ +#define RESET_RESEND_TIMER_NO 4/* See also 3GPP TS 48.008 Chapter 3.1.4.1.3.1 */ #define BAD_CONNECTION_THRESOLD 3 /* connection failures */ -enum fsm_states { +/* Reset context data (callbacks, state machine etc...) */ +struct reset_ctx { + /* Connection failure counter. When this counter +* reaches a certain threshold, the reset procedure +* will be triggered */ + int conn_loss_counter; + + /* Callback function to be called when a connection +* failure is detected and a rest must occur */ + void (*cb)(void *priv); + + /* Privated data for the callback function */ + void *priv; +}; + +enum reset_fsm_states { ST_DISC,/* Disconnected from remote end */ ST_CONN,/* We have a confirmed connection */ }; -enum fsm_evt { +enum reset_fsm_evt { EV_RESET_ACK, /* got reset acknowlegement from remote end */ EV_N_DISCONNECT,/* lost a connection */ EV_N_CONNECT, /* made a successful connection */ @@ -54,31 +69,30 @@ /* Disconnected state */ static void fsm_disc_cb(struct osmo_fsm_inst *fi, uint32_t event, void *data) { - struct a_reset_ctx *reset = (struct a_reset_ctx *)da
Build failure of network:osmocom:nightly/libsmpp34 in Debian_9.0/aarch64
Visit https://build.opensuse.org/package/live_build_log/network:osmocom:nightly/libsmpp34/Debian_9.0/aarch64 Package network:osmocom:nightly/libsmpp34 failed to build in Debian_9.0/aarch64 Check out the package for editing: osc checkout network:osmocom:nightly libsmpp34 Last lines of build log: [ 268s] [ 245.235034] dracut-initqueue[459]: Warning: dracut-initqueue timeout - starting timeout scripts [ 269s] [ 245.895609] dracut-initqueue[459]: Warning: dracut-initqueue timeout - starting timeout scripts [ 269s] [ 246.585067] dracut-initqueue[459]: Warning: dracut-initqueue timeout - starting timeout scripts [ 270s] [ 247.265800] dracut-initqueue[459]: Warning: dracut-initqueue timeout - starting timeout scripts [ 271s] [ 247.945066] dracut-initqueue[459]: Warning: dracut-initqueue timeout - starting timeout scripts [ 271s] [ 247.951958] dracut-initqueue[459]: Warning: Could not boot. [ 271s] Starting Setup Virtual Console... [ 271s] [[0;32m OK [0m] Started Setup Virtual Console. [ 271s] Starting Dracut Emergency Shell... [ 271s] Warning: /dev/disk/by-uuid/00750419-b769-40be-aa7a-a81dca13c577 does not exist [ 271s] [ 271s] Generating "/run/initramfs/rdsosreport.txt" [ 271s] [ 271s] [ 271s] Entering emergency mode. Exit the shell to continue. [ 271s] Type "journalctl" to view system logs. [ 271s] You might want to save "/run/initramfs/rdsosreport.txt" to a USB stick or /boot [ 271s] after mounting them and attach it to a bug report. [ 271s] [ 271s] [ 328s] dracut:/# ### WATCHDOG TRIGGERED, KILLING VM ### [ 328s] /var/cache/obs/worker/root_5/root: 30091 [ 328s] qemu-system-aarch64: terminating on signal 15 from pid 47121 () [ 328s] ### VM INTERACTION END ### [ 328s] /var/run/obs/worker/5/build/build-vm: line 458: kill: (30084) - No such process [ 328s] No buildstatus set, either the base system is broken (kernel/initrd/udev/glibc/bash/perl) [ 328s] or the build host has a kernel or hardware problem... gave up after 12 failed build attempts... -- Configure notifications at https://build.opensuse.org/user/notifications openSUSE Build Service (https://build.opensuse.org/)
Build failure of network:osmocom:nightly/libosmocore in Debian_9.0/aarch64
Visit https://build.opensuse.org/package/live_build_log/network:osmocom:nightly/libosmocore/Debian_9.0/aarch64 Package network:osmocom:nightly/libosmocore failed to build in Debian_9.0/aarch64 Check out the package for editing: osc checkout network:osmocom:nightly libosmocore Last lines of build log: [K[ [0;31m*[0;1;31m*[0m[0;31m* [0m] A start job is running for dev-disk…\x2d0.device (4min 53s / no limit) [K[ [0;31m*[0;1;31m*[0m[0;31m* [0m] A start job is running for dev-disk…\x2d0.device (4min 54s / no limit) [K[ [0;31m*[0;1;31m*[0m[0;31m*[0m] A start job is running for dev-disk…\x2d0.device (4min 54s / no limit) [K[[0;31m*[0;1;31m*[0m] A start job is running for dev-disk…\x2d0.device (4min 55s / no limit) [K[ [0;31m*[0m] A start job is running for dev-disk…\x2d0.device (4min 55s / no limit) [K[[0;31m*[0;1;31m*[0m] A start job is running for dev-disk…\x2d0.device (4min 56s / no limit) [K[ [0;31m*[0;1;31m*[0m[0;31m*[0m] A start job is running for dev-disk…\x2d0.device (4min 56s / no limit) [K[ [0;31m*[0;1;31m*[0m[0;31m* [0m] A start job is running for dev-disk…\x2d0.device (4min 57s / no limit) [K[ [0;31m*[0;1;31m*[0m[0;31m* [0m] A start job is running for dev-disk…\x2d0.device (4min 57s / no limit) [K[[0;31m*[0;1;31m*[0m[0;31m* [0m] A start job is running for dev-disk…\x2d0.device (4min 58s / no limit) [K[[0;1;31m*[0m[0;31m*[0m] A start job is running for dev-disk…\x2d0.device (4min 58s / no limit) [K[[0m[0;31m* [0m] A start job is running for dev-disk…\x2d0.device (4min 59s / no limit) [K[[0;1;31m*[0m[0;31m*[0m] A start job is running for dev-disk…\x2d0.device (4min 59s / no limit) [K[[0;31m*[0;1;31m*[0m[0;31m* [0m] A start job is running for dev-disk…rtio\x2d0.device (5min / no limit) [K[ [0;31m*[0;1;31m*[0m[0;31m* [0m] A start job is running for dev-disk…rtio\x2d0.device (5min / no limit) [K[ [0;31m*[0;1;31m*[0m[0;31m* [0m] A start job is running for dev-disk…o\x2d0.device (5min 1s / no limit) [K[ [0;31m*[0;1;31m*[0m[0;31m*[0m] A start job is running for dev-disk…o\x2d0.device (5min 1s / no limit) [K[[0;31m*[0;1;31m*[0m] A start job is running for dev-disk…o\x2d0.device (5min 2s / no limit) [K[ [0;31m*[0m] A start job is running for dev-disk…o\x2d0.device (5min 2s / no limit) [K[[0;31m*[0;1;31m*[0m] A start job is running for dev-disk…o\x2d0.device (5min 3s / no limit) [K[ [0;31m*[0;1;31m*[0m[0;31m*[0m] A start job is running for dev-disk…o\x2d0.device (5min 3s / no limit)### WATCHDOG TRIGGERED, KILLING VM ### [ 328s] /var/cache/obs/worker/root_3/root: 8298 [ 328s] qemu-system-aarch64: terminating on signal 15 from pid 10349 () [ 328s] ### VM INTERACTION END ### [ 328s] /var/run/obs/worker/3/build/build-vm: line 458: kill: (8291) - No such process [ 328s] No buildstatus set, either the base system is broken (kernel/initrd/udev/glibc/bash/perl) [ 328s] or the build host has a kernel or hardware problem... gave up after 12 failed build attempts... -- Configure notifications at https://build.opensuse.org/user/notifications openSUSE Build Service (https://build.opensuse.org/)
Build failure of network:osmocom:nightly/libusrp in Debian_9.0/aarch64
Visit https://build.opensuse.org/package/live_build_log/network:osmocom:nightly/libusrp/Debian_9.0/aarch64 Package network:osmocom:nightly/libusrp failed to build in Debian_9.0/aarch64 Check out the package for editing: osc checkout network:osmocom:nightly libusrp Last lines of build log: [ 330s] [ 267.126803] dracut-initqueue[494]: Warning: dracut-initqueue timeout - starting timeout scripts [ 331s] [ 267.751085] dracut-initqueue[494]: Warning: dracut-initqueue timeout - starting timeout scripts [ 331s] [ 268.346980] dracut-initqueue[494]: Warning: dracut-initqueue timeout - starting timeout scripts [ 332s] [ 269.021229] dracut-initqueue[494]: Warning: dracut-initqueue timeout - starting timeout scripts [ 333s] [ 269.716912] dracut-initqueue[494]: Warning: dracut-initqueue timeout - starting timeout scripts [ 333s] [ 269.731385] dracut-initqueue[494]: Warning: Could not boot. [ 333s] Starting Setup Virtual Console... [ 333s] [[0;32m OK [0m] Started Setup Virtual Console. [ 333s] Starting Dracut Emergency Shell... [ 333s] Warning: /dev/disk/by-uuid/00750419-b769-40be-aa7a-a81dca13c577 does not exist [ 333s] [ 333s] Generating "/run/initramfs/rdsosreport.txt" [ 334s] [ 334s] [ 334s] Entering emergency mode. Exit the shell to continue. [ 334s] Type "journalctl" to view system logs. [ 334s] You might want to save "/run/initramfs/rdsosreport.txt" to a USB stick or /boot [ 334s] after mounting them and attach it to a bug report. [ 334s] [ 334s] [ 368s] dracut:/# ### WATCHDOG TRIGGERED, KILLING VM ### [ 369s] /var/cache/obs/worker/root_20/root: 20755 [ 369s] qemu-system-aarch64: terminating on signal 15 from pid 37534 () [ 369s] ### VM INTERACTION END ### [ 369s] /var/run/obs/worker/20/build/build-vm: line 458: kill: (20738) - No such process [ 369s] No buildstatus set, either the base system is broken (kernel/initrd/udev/glibc/bash/perl) [ 369s] or the build host has a kernel or hardware problem... gave up after 12 failed build attempts... -- Configure notifications at https://build.opensuse.org/user/notifications openSUSE Build Service (https://build.opensuse.org/)
Build failure of network:osmocom:nightly/libasn1c in Debian_9.0/aarch64
Visit https://build.opensuse.org/package/live_build_log/network:osmocom:nightly/libasn1c/Debian_9.0/aarch64 Package network:osmocom:nightly/libasn1c failed to build in Debian_9.0/aarch64 Check out the package for editing: osc checkout network:osmocom:nightly libasn1c Last lines of build log: [ 268s] [ 245.474846] dracut-initqueue[470]: Warning: dracut-initqueue timeout - starting timeout scripts [ 268s] [ 246.125647] dracut-initqueue[470]: Warning: dracut-initqueue timeout - starting timeout scripts [ 269s] [ 246.764860] dracut-initqueue[470]: Warning: dracut-initqueue timeout - starting timeout scripts [ 270s] [ 247.395606] dracut-initqueue[470]: Warning: dracut-initqueue timeout - starting timeout scripts [ 270s] [ 248.054919] dracut-initqueue[470]: Warning: dracut-initqueue timeout - starting timeout scripts [ 270s] [ 248.061699] dracut-initqueue[470]: Warning: Could not boot. [ 270s] Starting Setup Virtual Console... [ 270s] [[0;32m OK [0m] Started Setup Virtual Console. [ 270s] Starting Dracut Emergency Shell... [ 270s] Warning: /dev/disk/by-uuid/00750419-b769-40be-aa7a-a81dca13c577 does not exist [ 270s] [ 270s] Generating "/run/initramfs/rdsosreport.txt" [ 271s] [ 271s] [ 271s] Entering emergency mode. Exit the shell to continue. [ 271s] Type "journalctl" to view system logs. [ 271s] You might want to save "/run/initramfs/rdsosreport.txt" to a USB stick or /boot [ 271s] after mounting them and attach it to a bug report. [ 271s] [ 271s] [ 332s] dracut:/# ### WATCHDOG TRIGGERED, KILLING VM ### [ 333s] /var/cache/obs/worker/root_14/root: 28534 [ 333s] qemu-system-aarch64: terminating on signal 15 from pid 48046 () [ 333s] ### VM INTERACTION END ### [ 333s] /var/run/obs/worker/14/build/build-vm: line 458: kill: (28526) - No such process [ 333s] No buildstatus set, either the base system is broken (kernel/initrd/udev/glibc/bash/perl) [ 333s] or the build host has a kernel or hardware problem... gave up after 12 failed build attempts... -- Configure notifications at https://build.opensuse.org/user/notifications openSUSE Build Service (https://build.opensuse.org/)
Change in osmo-mgw[master]: api doc: fix parameter name for mgcp_conn_create()
Neels Hofmeyr has uploaded this change for review. ( https://gerrit.osmocom.org/9226 Change subject: api doc: fix parameter name for mgcp_conn_create() .. api doc: fix parameter name for mgcp_conn_create() Change-Id: Ib6ea230c2e1918bd4e431208610b53e468e534c7 --- M src/libosmo-mgcp-client/mgcp_client_fsm.c 1 file changed, 1 insertion(+), 1 deletion(-) git pull ssh://gerrit.osmocom.org:29418/osmo-mgw refs/changes/26/9226/1 diff --git a/src/libosmo-mgcp-client/mgcp_client_fsm.c b/src/libosmo-mgcp-client/mgcp_client_fsm.c index 3c755be..6e1e7b8 100644 --- a/src/libosmo-mgcp-client/mgcp_client_fsm.c +++ b/src/libosmo-mgcp-client/mgcp_client_fsm.c @@ -548,7 +548,7 @@ /*! allocate FSM, and create a new connection on the MGW. * \param[in] mgcp MGCP client descriptor. - * \param[in] mgcpparent_fi Parent FSM instance. + * \param[in] parent_fi Parent FSM instance. * \param[in] parent_term_evt Event to be sent to parent when terminating. * \param[in] parent_evt Event to be sent to parent when operation is done. * \param[in] conn_peer Connection parameters (ip, port...). -- To view, visit https://gerrit.osmocom.org/9226 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-mgw Gerrit-Branch: master Gerrit-MessageType: newchange Gerrit-Change-Id: Ib6ea230c2e1918bd4e431208610b53e468e534c7 Gerrit-Change-Number: 9226 Gerrit-PatchSet: 1 Gerrit-Owner: Neels Hofmeyr
Change in osmo-bsc[master]: cosmetic: define TCH_F_PDCH_PENDING_MASK as actual bitwise or
Neels Hofmeyr has uploaded this change for review. ( https://gerrit.osmocom.org/9229 Change subject: cosmetic: define TCH_F_PDCH_PENDING_MASK as actual bitwise or .. cosmetic: define TCH_F_PDCH_PENDING_MASK as actual bitwise or Change-Id: I5266d6e1ea0ea89c66fa481136c31e2f84bcb313 --- M include/osmocom/bsc/gsm_data.h 1 file changed, 1 insertion(+), 2 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-bsc refs/changes/29/9229/1 diff --git a/include/osmocom/bsc/gsm_data.h b/include/osmocom/bsc/gsm_data.h index c7181ac..862a761 100644 --- a/include/osmocom/bsc/gsm_data.h +++ b/include/osmocom/bsc/gsm_data.h @@ -460,8 +460,7 @@ TS_F_PDCH_ACTIVE = 0x1000, TS_F_PDCH_ACT_PENDING = 0x2000, TS_F_PDCH_DEACT_PENDING = 0x4000, - TS_F_PDCH_PENDING_MASK =0x6000 /*< - TS_F_PDCH_ACT_PENDING | TS_F_PDCH_DEACT_PENDING */ + TS_F_PDCH_PENDING_MASK =(TS_F_PDCH_ACT_PENDING | TS_F_PDCH_DEACT_PENDING), } gsm_bts_trx_ts_flags; /* One Timeslot in a TRX */ -- To view, visit https://gerrit.osmocom.org/9229 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bsc Gerrit-Branch: master Gerrit-MessageType: newchange Gerrit-Change-Id: I5266d6e1ea0ea89c66fa481136c31e2f84bcb313 Gerrit-Change-Number: 9229 Gerrit-PatchSet: 1 Gerrit-Owner: Neels Hofmeyr