Hello Jenkins Builder,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/libosmo-gprs/+/31347
to look at the new patch set (#2).
Change subject: rlcmac: Implement T3164
......................................................................
rlcmac: Implement T3164
Change-Id: I1a3d7b552b36b84d84ca27572ce313265810fd3d
---
M include/osmocom/gprs/rlcmac/tbf_ul.h
M include/osmocom/gprs/rlcmac/tbf_ul_fsm.h
M src/rlcmac/rlcmac.c
M src/rlcmac/tbf_ul.c
M src/rlcmac/tbf_ul_fsm.c
M tests/rlcmac/rlcmac_prim_test.c
M tests/rlcmac/rlcmac_prim_test.err
M tests/rlcmac/rlcmac_prim_test.ok
8 files changed, 218 insertions(+), 9 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/libosmo-gprs refs/changes/47/31347/2
--
To view, visit https://gerrit.osmocom.org/c/libosmo-gprs/+/31347
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: libosmo-gprs
Gerrit-Branch: master
Gerrit-Change-Id: I1a3d7b552b36b84d84ca27572ce313265810fd3d
Gerrit-Change-Number: 31347
Gerrit-PatchSet: 2
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-MessageType: newpatchset
Attention is currently required from: fixeria, dexter.
Hello Jenkins Builder, fixeria, pespin,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-pcu/+/31341
to look at the new patch set (#6).
Change subject: pcu_l1_if_phy: flexible phy access
......................................................................
pcu_l1_if_phy: flexible phy access
At the moment we have three different platform specific PHY interfaces,
which can be selected using a compile time option. Since those three all
are intended to be used on embedded platforms this works fine. However,
in the future we plan to add E1 phy support (PHY/CCU is attached via an
E1 line), which shall not be a compiletime distinction. It might be also
thinkable that we might even add multiple E1 phys in the future, so
multiple phy implementations must be able to co-exist.
This patch adds a generic interface that allows for the creation of PHY
modules that are able to register themselves so that they can be
selected dynamically. The "legacy" PHY implementations are not intended
to co-exist next to other PHYs, so it is possible to register them as
"singleton" modules (only one at a time, via compiletime option). For the
moment only "singleton" modules are supported. The selection mechanism
(pcu_sock, pcu_l1_if.cpp) will be introduced with the first resident PHY
implementation (Ericsson E1 CCU support)
Change-Id: I8692d1bd5d137a17cf596ee2914722f419c9978d
Related: OS#5198
---
M src/Makefile.am
M src/gprs_pcu.h
M src/gprs_rlcmac_sched.cpp
M src/osmo-bts-litecell15/lc15_l1_if.c
M src/osmo-bts-oc2g/oc2g_l1_if.c
M src/osmo-bts-sysmo/sysmo_l1_if.c
M src/osmobts_sock.c
M src/pcu_l1_if.cpp
A src/pcu_l1_if_phy.c
M src/pcu_l1_if_phy.h
M src/pcu_main.cpp
11 files changed, 225 insertions(+), 71 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-pcu refs/changes/41/31341/6
--
To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/31341
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-pcu
Gerrit-Branch: master
Gerrit-Change-Id: I8692d1bd5d137a17cf596ee2914722f419c9978d
Gerrit-Change-Number: 31341
Gerrit-PatchSet: 6
Gerrit-Owner: dexter <pmaier(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Attention: dexter <pmaier(a)sysmocom.de>
Gerrit-MessageType: newpatchset
Attention is currently required from: fixeria, dexter.
pespin has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-pcu/+/31341 )
Change subject: pcu_l1_if_phy: flexible phy access
......................................................................
Patch Set 5:
(5 comments)
File src/osmobts_sock.c:
https://gerrit.osmocom.org/c/osmo-pcu/+/31341/comment/ecc9bf19_708699b9
PS5, Line 115: bts->trx[trx].fl1h = NULL;
After another looks, this looks even worse, because you are not skipping setting fl1h to NULL if phy_ops is not defined. Are you shure that's fine?
I'd really do a 2 level if() first checking for fl1h and later calling the function ig phy_ops.l1if_close_pdch exists.
File src/pcu_l1_if.cpp:
https://gerrit.osmocom.org/c/osmo-pcu/+/31341/comment/44c26336_8f8c36b3
PS5, Line 218: the_pcu->phy_ops->l1if_pdch_req(bts->trx[trx].fl1h, ts, 0, fn, arfcn, block_nr,
guard this with "if (the_pcu->phy_ops->l1if_pdch_req)". Similar for all other function calls.
File src/pcu_l1_if_phy.c:
https://gerrit.osmocom.org/c/osmo-pcu/+/31341/comment/3baf3944_2dc76b1d
PS5, Line 15: struct llist_head list;
You can really put this inside ops too, and get rid of l1if_phy_entry.
https://gerrit.osmocom.org/c/osmo-pcu/+/31341/comment/9730a7aa_e15775a2
PS5, Line 18: const char *name;
this can really be in li1f_phy_ops and assign the pointer statically, there's no need to have it separate. IT makes more sense to have it inside the ops since it goes together, it identifies a given set of ops.
https://gerrit.osmocom.org/c/osmo-pcu/+/31341/comment/0c9ea33c_53bae5dc
PS5, Line 27: bool singleton;
this too can be set in phy_ops. I don't see the need of passing several params to register(), one is enough.
--
To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/31341
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-pcu
Gerrit-Branch: master
Gerrit-Change-Id: I8692d1bd5d137a17cf596ee2914722f419c9978d
Gerrit-Change-Number: 31341
Gerrit-PatchSet: 5
Gerrit-Owner: dexter <pmaier(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Attention: dexter <pmaier(a)sysmocom.de>
Gerrit-Comment-Date: Thu, 16 Feb 2023 14:33:30 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Gerrit-MessageType: comment
Attention is currently required from: fixeria, pespin.
Hello Jenkins Builder, fixeria, pespin,
I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/c/osmo-pcu/+/31341
to look at the new patch set (#5).
Change subject: pcu_l1_if_phy: flexible phy access
......................................................................
pcu_l1_if_phy: flexible phy access
At the moment we have three different platform specific PHY interfaces,
which can be selected using a compile time option. Since those three all
are intended to be used on embedded platforms this works fine. However,
in the future we plan to add E1 phy support (PHY/CCU is attached via an
E1 line), which shall not be a compiletime distinction. It might be also
thinkable that we might even add multiple E1 phys in the future, so
multiple phy implementations must be able to co-exist.
This patch adds a generic interface that allows for the creation of PHY
modules that are able to register themselves so that they can be
selected dynamically. The "legacy" PHY implementations are not intended
to co-exist next to other PHYs, so it is possible to register them as
"singleton" modules (only one at a time, via compiletime option). For the
moment only "singleton" modules are supported. The selection mechanism
(pcu_sock, pcu_l1_if.cpp) will be introduced with the first resident PHY
implementation (Ericsson E1 CCU support)
Change-Id: I8692d1bd5d137a17cf596ee2914722f419c9978d
Related: OS#5198
---
M src/Makefile.am
M src/gprs_pcu.h
M src/gprs_rlcmac_sched.cpp
M src/osmo-bts-litecell15/lc15_l1_if.c
M src/osmo-bts-oc2g/oc2g_l1_if.c
M src/osmo-bts-sysmo/sysmo_l1_if.c
M src/osmobts_sock.c
M src/pcu_l1_if.cpp
A src/pcu_l1_if_phy.c
M src/pcu_l1_if_phy.h
M src/pcu_main.cpp
11 files changed, 233 insertions(+), 71 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-pcu refs/changes/41/31341/5
--
To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/31341
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-pcu
Gerrit-Branch: master
Gerrit-Change-Id: I8692d1bd5d137a17cf596ee2914722f419c9978d
Gerrit-Change-Number: 31341
Gerrit-PatchSet: 5
Gerrit-Owner: dexter <pmaier(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Attention: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Attention: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: newpatchset
osmith has posted comments on this change. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/31338 )
Change subject: bsc: TC_ho_in_fail_ipa_crcx_timeout: new test
......................................................................
Patch Set 2:
(1 comment)
File bsc/MSC_ConnectionHandler.ttcn:
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/31338/comment/64353bbd_a269…
PS1, Line 511: [not g_pars.ignore_ipa_media] as_Media_ipacc();
> What would be the benefit? e.g. […]
Done
--
To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/31338
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Change-Id: I2f79e3ff988a4315fbef3538f02403b818fa7839
Gerrit-Change-Number: 31338
Gerrit-PatchSet: 2
Gerrit-Owner: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-Comment-Date: Thu, 16 Feb 2023 13:52:48 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
Comment-In-Reply-To: osmith <osmith(a)sysmocom.de>
Comment-In-Reply-To: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: comment
osmith has submitted this change. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/31338 )
Change subject: bsc: TC_ho_in_fail_ipa_crcx_timeout: new test
......................................................................
bsc: TC_ho_in_fail_ipa_crcx_timeout: new test
Verify that OsmoBSC runs into a timeout and aborts the handover if the
IPA CRCX is not answered by the BTS. This test ensures it still works
after removing a redundant timer, as discussed here:
https://gerrit.osmocom.org/c/osmo-bsc/+/30307/1#message-9e02be4de78c03ed25b…
Related: OS#5787
Change-Id: I2f79e3ff988a4315fbef3538f02403b818fa7839
---
M bsc/BSC_Tests.ttcn
M bsc/MSC_ConnectionHandler.ttcn
2 files changed, 17 insertions(+), 3 deletions(-)
Approvals:
Jenkins Builder: Verified
pespin: Looks good to me, but someone else must approve
osmith: Looks good to me, approved
laforge: Looks good to me, but someone else must approve
diff --git a/bsc/BSC_Tests.ttcn b/bsc/BSC_Tests.ttcn
index 352a12e..9a2718a 100644
--- a/bsc/BSC_Tests.ttcn
+++ b/bsc/BSC_Tests.ttcn
@@ -7053,6 +7053,17 @@
f_shutdown_helper(ho := true);
}
+testcase TC_ho_in_fail_ipa_crcx_timeout() runs on test_CT {
+ var TestHdlrParams pars := f_gen_test_hdlr_pars();
+
+ pars.ignore_ipa_media := true;
+ pars.expect_ho_fail_lchan_est := true;
+ pars.fail_on_dlcx := false;
+
+ f_tc_ho_into_this_bsc_main(pars);
+ f_shutdown_helper(ho := true);
+}
+
/* An incoming inter-BSC HO can either issue the Handover Request message attached to the initial SCCP N-Connect (as in
* the other tests we have so far), or the first CR can be "empty" with the BSSAP request following later. Test the
* empty N-Connect case. */
@@ -12361,6 +12372,7 @@
execute( TC_ho_in_fail_no_detect() );
execute( TC_ho_in_fail_no_detect2() );
execute( TC_ho_in_fail_mgw_mdcx_timeout() );
+ execute( TC_ho_in_fail_ipa_crcx_timeout() );
execute( TC_ho_into_this_bsc_sccp_cr_without_bssap() );
execute( TC_ho_neighbor_config_1() );
diff --git a/bsc/MSC_ConnectionHandler.ttcn b/bsc/MSC_ConnectionHandler.ttcn
index aa54225..b3e6af6 100644
--- a/bsc/MSC_ConnectionHandler.ttcn
+++ b/bsc/MSC_ConnectionHandler.ttcn
@@ -508,7 +508,7 @@
/* Altsteps for handling of media related commands. Can be activated by a given
* test case if it expects to see media related handling (i.e. voice calls) */
altstep as_Media() runs on MSC_ConnHdlr {
- [] as_Media_ipacc();
+ [not g_pars.ignore_ipa_media] as_Media_ipacc();
[] as_Media_mgw();
}
@@ -760,7 +760,8 @@
boolean expect_ho_fail_lchan_est,
boolean inter_bsc_ho_in__ho_req_in_initial_sccp_cr,
boolean ignore_mgw_mdcx,
- boolean fail_on_dlcx
+ boolean fail_on_dlcx,
+ boolean ignore_ipa_media
};
/* Note: Do not use valueof() to get a value of this template, use
@@ -808,7 +809,8 @@
expect_ho_fail_lchan_est := false,
inter_bsc_ho_in__ho_req_in_initial_sccp_cr := true,
ignore_mgw_mdcx := false,
- fail_on_dlcx := true
+ fail_on_dlcx := true,
+ ignore_ipa_media := false
}
function f_create_chan_and_exp(template (present) PDU_BSSAP exp_l3_compl := ?)
--
To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/31338
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Change-Id: I2f79e3ff988a4315fbef3538f02403b818fa7839
Gerrit-Change-Number: 31338
Gerrit-PatchSet: 2
Gerrit-Owner: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: merged
osmith has submitted this change. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/31337 )
Change subject: bsc: move as_Media arg fail_on_dlcx to pars
......................................................................
bsc: move as_Media arg fail_on_dlcx to pars
Prepare to use fail_on_dlcx in a new test case. Instead of dragging the
parameter through lots of function calls, just add it to pars.
Related: OS#5787
Change-Id: I6f0c4ce543724cc6f18bae9fc2b480f5818db8b7
---
M bsc/BSC_Tests.ttcn
M bsc/MSC_ConnectionHandler.ttcn
2 files changed, 16 insertions(+), 10 deletions(-)
Approvals:
Jenkins Builder: Verified
pespin: Looks good to me, but someone else must approve
neels: Looks good to me, approved
diff --git a/bsc/BSC_Tests.ttcn b/bsc/BSC_Tests.ttcn
index 96428ff..352a12e 100644
--- a/bsc/BSC_Tests.ttcn
+++ b/bsc/BSC_Tests.ttcn
@@ -6878,7 +6878,7 @@
f_create_mgcp_expect(ExpectCriteria:{omit,omit,omit});
f_MscConnHdlr_init(g_pars.media_nr, "127.0.0.2", "127.0.0.3", FR_AMR);
- activate(as_Media(fail_on_dlcx := false));
+ activate(as_Media());
BSSAP.send(ts_BSSAP_Conn_Req(g_pars.sccp_addr_bsc, g_pars.sccp_addr_msc,
f_gen_handover_req()));
@@ -6968,7 +6968,7 @@
f_create_mgcp_expect(ExpectCriteria:{omit,omit,omit});
f_MscConnHdlr_init(g_pars.media_nr, "127.0.0.2", "127.0.0.3", FR_AMR);
- activate(as_Media(fail_on_dlcx := false));
+ activate(as_Media());
BSSAP.send(ts_BSSAP_Conn_Req(g_pars.sccp_addr_bsc, g_pars.sccp_addr_msc,
f_gen_handover_req()));
@@ -7022,6 +7022,8 @@
var MSC_ConnHdlr vc_conn;
var TestHdlrParams pars := f_gen_test_hdlr_pars();
+ pars.fail_on_dlcx := false;
+
f_init(1, true);
f_sleep(1.0);
@@ -11556,7 +11558,7 @@
/* we should now have a COMPL_L3 at the MSC */
f_create_mgcp_expect(ExpectCriteria:{omit,omit,omit});
- activate(as_Media_mgw(fail_on_dlcx := false));
+ activate(as_Media_mgw());
var RslChannelNr chan_nr := { u := { ch0 := RSL_CHAN_NR_Bm_ACCH }, tn := 1 };
f_rslem_register(0, chan_nr);
@@ -11604,6 +11606,8 @@
var TestHdlrParams pars := f_gen_test_hdlr_pars();
var MSC_ConnHdlr vc_conn;
+ pars.fail_on_dlcx := false;
+
f_init(1, true);
f_sleep(1.0);
diff --git a/bsc/MSC_ConnectionHandler.ttcn b/bsc/MSC_ConnectionHandler.ttcn
index ed9c13b..aa54225 100644
--- a/bsc/MSC_ConnectionHandler.ttcn
+++ b/bsc/MSC_ConnectionHandler.ttcn
@@ -442,7 +442,7 @@
/* altstep for handling of MGCP media related commands. Activated by as_Media() to test
* MGW level media handling */
-altstep as_Media_mgw(boolean norepeat := false, boolean fail_on_dlcx := true) runs on MSC_ConnHdlr {
+altstep as_Media_mgw(boolean norepeat := false) runs on MSC_ConnHdlr {
var MgcpCommand mgcp_cmd;
var template MgcpResponse mgcp_resp;
var MGCP_RecvFrom mrf;
@@ -496,20 +496,20 @@
}
}
- [fail_on_dlcx and g_pars.aoip] MGCP.receive(tr_DLCX) {
+ [g_pars.fail_on_dlcx and g_pars.aoip] MGCP.receive(tr_DLCX) {
setverdict(fail, "Unexpected DLCX received");
}
- [fail_on_dlcx and not g_pars.aoip] MGCP_MULTI.receive(tr_MGCP_RecvFrom_any(msg_dlcx)) {
+ [g_pars.fail_on_dlcx and not g_pars.aoip] MGCP_MULTI.receive(tr_MGCP_RecvFrom_any(msg_dlcx)) {
setverdict(fail, "Unexpected DLCX received");
}
}
/* Altsteps for handling of media related commands. Can be activated by a given
* test case if it expects to see media related handling (i.e. voice calls) */
-altstep as_Media(boolean fail_on_dlcx := true) runs on MSC_ConnHdlr {
+altstep as_Media() runs on MSC_ConnHdlr {
[] as_Media_ipacc();
- [] as_Media_mgw(fail_on_dlcx := fail_on_dlcx);
+ [] as_Media_mgw();
}
type port Coord_PT message
@@ -759,7 +759,8 @@
boolean expect_ho_fail,
boolean expect_ho_fail_lchan_est,
boolean inter_bsc_ho_in__ho_req_in_initial_sccp_cr,
- boolean ignore_mgw_mdcx
+ boolean ignore_mgw_mdcx,
+ boolean fail_on_dlcx
};
/* Note: Do not use valueof() to get a value of this template, use
@@ -806,7 +807,8 @@
expect_ho_fail := false,
expect_ho_fail_lchan_est := false,
inter_bsc_ho_in__ho_req_in_initial_sccp_cr := true,
- ignore_mgw_mdcx := false
+ ignore_mgw_mdcx := false,
+ fail_on_dlcx := true
}
function f_create_chan_and_exp(template (present) PDU_BSSAP exp_l3_compl := ?)
--
To view, visit https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/31337
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Change-Id: I6f0c4ce543724cc6f18bae9fc2b480f5818db8b7
Gerrit-Change-Number: 31337
Gerrit-PatchSet: 2
Gerrit-Owner: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: neels <nhofmeyr(a)sysmocom.de>
Gerrit-Reviewer: osmith <osmith(a)sysmocom.de>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: merged