pespin has submitted this change. ( 
https://gerrit.osmocom.org/c/osmo-bts/+/34442?usp=email )

Change subject: nm: delay RSL connect until BBTRANSC object is OPSTARTed
......................................................................

nm: delay RSL connect until BBTRANSC object is OPSTARTed

Have same behavior as nanoBTS.

Related: OS#5253
Change-Id: Idefc65a8812abd49fb5f0cd7b0bef423536b86e0
---
M src/common/nm_bb_transc_fsm.c
M src/common/oml.c
2 files changed, 28 insertions(+), 12 deletions(-)

Approvals:
  pespin: Verified
  fixeria: Looks good to me, but someone else must approve
  Jenkins Builder: Verified
  osmith: Looks good to me, approved




diff --git a/src/common/nm_bb_transc_fsm.c b/src/common/nm_bb_transc_fsm.c
index 12493e4..c668eff 100644
--- a/src/common/nm_bb_transc_fsm.c
+++ b/src/common/nm_bb_transc_fsm.c
@@ -119,6 +119,7 @@
 {
        struct gsm_bts_bb_trx *bb_transc = (struct gsm_bts_bb_trx *)fi->priv;
        struct gsm_bts_trx *trx = gsm_bts_bb_trx_get_trx(bb_transc);
+       struct gsm_bts *bts = trx->bts;
        struct nm_fsm_ev_setattr_data *setattr_data;
        bool phy_state_connected;
        bool rsl_link_connected;
@@ -145,6 +146,19 @@
                        return;
                }
 #endif
+               /* Connect RSL link: */
+               if (bts->variant == BTS_OSMO_OMLDUMMY) {
+                       LOGPFSML(fi, LOGL_NOTICE, "Not connecting RSL in 
OML-DUMMY!\n");
+               } else {
+                       rc = 
e1inp_ipa_bts_rsl_connect_n(bts->oml_link->ts->line,
+                                                        
bb_transc->rsl.rem_addrstr.ip,
+                                                        
bb_transc->rsl.rem_addrstr.port, trx->nr);
+                       if (rc < 0) {
+                               LOGPFSML(fi, LOGL_NOTICE, "Error connecting IPA 
RSL: %d\n", rc);
+                               oml_mo_opstart_nack(&bb_transc->mo, 
NM_NACK_CANT_PERFORM);
+                               return;
+                       }
+               }
                bts_model_opstart(trx->bts, &bb_transc->mo, bb_transc);
                return;
        case NM_EV_OPSTART_ACK:
@@ -170,7 +184,7 @@
        }


-       if (trx->bts->variant != BTS_OSMO_OMLDUMMY) { /* In OMLDUMMY, phy=NULL 
*/
+       if (bts->variant != BTS_OSMO_OMLDUMMY) { /* In OMLDUMMY, phy=NULL */
                struct phy_instance *pinst = trx_phy_instance(trx);
                phy_state_connected = phy_link_state_get(pinst->phy_link) == 
PHY_LINK_CONNECTED;
                rsl_link_connected = !!trx->bb_transc.rsl.link;
diff --git a/src/common/oml.c b/src/common/oml.c
index f78790a..4565e9a 100644
--- a/src/common/oml.c
+++ b/src/common/oml.c
@@ -1512,17 +1512,7 @@
             trx_name, bb_transc->rsl.rem_addrstr.ip, 
bb_transc->rsl.rem_addrstr.port,
             bb_transc->rsl.tei);

-       if (bts->variant == BTS_OSMO_OMLDUMMY) {
-               rc = 0;
-               LOGP(DOML, LOGL_NOTICE, "%s: Not connecting RSL in 
OML-DUMMY!\n", trx_name);
-       } else {
-               rc = e1inp_ipa_bts_rsl_connect_n(oml_link->ts->line, 
bb_transc->rsl.rem_addrstr.ip,
-                                                
bb_transc->rsl.rem_addrstr.port, trx->nr);
-               if (rc < 0) {
-                       LOGP(DOML, LOGL_NOTICE, "%s: Error connecting IPA RSL: 
%d\n", trx_name, rc);
-                       rc = NM_NACK_CANT_PERFORM;
-               }
-       }
+       rc = 0;

 tx_ack_nack:
        /* The ACK/NACK is expected to contain all IEs */

--
To view, visit https://gerrit.osmocom.org/c/osmo-bts/+/34442?usp=email
To unsubscribe, or for help writing mail filters, visit 
https://gerrit.osmocom.org/settings

Gerrit-Project: osmo-bts
Gerrit-Branch: master
Gerrit-Change-Id: Idefc65a8812abd49fb5f0cd7b0bef423536b86e0
Gerrit-Change-Number: 34442
Gerrit-PatchSet: 2
Gerrit-Owner: pespin <[email protected]>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <[email protected]>
Gerrit-Reviewer: osmith <[email protected]>
Gerrit-Reviewer: pespin <[email protected]>
Gerrit-MessageType: merged

Reply via email to