aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHarald Welte <laforge@gnumonks.org>2019-05-25 10:19:00 +0200
committerHarald Welte <laforge@gnumonks.org>2019-05-25 10:24:13 +0200
commitdfa3bb8a10e9fd12e583f9e996679836793a55bd (patch)
treebe265c053fa2dbb3dde2ea70d95d0a13bd4a6078
parentb8265c63cc7d0b7060860d42dfc348423102d9c5 (diff)
Add severity to OML FAILURE EVENT REPORT
Example: The fact that the PCU has connected with a given version is not a *failure* in the first place, particularly not a MAJOR one. Let's allow callers of oml_tx_failure_event_rep() specify the serverity of the event that they're reporting to the BSC. Change-Id: I49af04212568892648e0e8704ba1cc6de8c8ae89
-rw-r--r--include/osmo-bts/oml.h4
-rw-r--r--src/common/bts.c2
-rw-r--r--src/common/bts_ctrl_commands.c2
-rw-r--r--src/common/l1sap.c2
-rw-r--r--src/common/main.c2
-rw-r--r--src/common/oml.c66
-rw-r--r--src/common/pcu_sock.c7
-rw-r--r--src/common/rsl.c8
-rw-r--r--src/osmo-bts-oc2g/calib_file.c6
9 files changed, 50 insertions, 49 deletions
diff --git a/include/osmo-bts/oml.h b/include/osmo-bts/oml.h
index 5136058c..14da70e0 100644
--- a/include/osmo-bts/oml.h
+++ b/include/osmo-bts/oml.h
@@ -45,7 +45,7 @@ int oml_set_lchan_t200(struct gsm_lchan *lchan);
extern const unsigned int oml_default_t200_ms[7];
/* Transmit failure event report */
-int oml_tx_failure_event_rep(const struct gsm_abis_mo *mo, uint16_t cause_value,
- const char *fmt, ...);
+int oml_tx_failure_event_rep(const struct gsm_abis_mo *mo, enum abis_nm_severity severity,
+ uint16_t cause_value, const char *fmt, ...);
#endif // _OML_H */
diff --git a/src/common/bts.c b/src/common/bts.c
index 5220406d..97e7a8b1 100644
--- a/src/common/bts.c
+++ b/src/common/bts.c
@@ -340,7 +340,7 @@ int trx_link_estab(struct gsm_bts_trx *trx)
else
rc = bts_model_trx_deact_rf(trx);
if (rc < 0) {
- oml_tx_failure_event_rep(&trx->bb_transc.mo, OSMO_EVT_MAJ_RSL_FAIL,
+ oml_tx_failure_event_rep(&trx->bb_transc.mo, NM_SEVER_MAJOR, OSMO_EVT_MAJ_RSL_FAIL,
link ?
"Failed to establish RSL link (%d)" :
"Failed to deactivate RF (%d)", rc);
diff --git a/src/common/bts_ctrl_commands.c b/src/common/bts_ctrl_commands.c
index 47d8a5db..0d318900 100644
--- a/src/common/bts_ctrl_commands.c
+++ b/src/common/bts_ctrl_commands.c
@@ -77,7 +77,7 @@ CTRL_CMD_DEFINE_WO_NOVRF(oml_alert, "oml-alert");
static int set_oml_alert(struct ctrl_cmd *cmd, void *data)
{
/* Note: we expect signal dispatch to be synchronous */
- oml_tx_failure_event_rep(&g_bts->mo, OSMO_EVT_EXT_ALARM, cmd->value);
+ oml_tx_failure_event_rep(&g_bts->mo, NM_SEVER_INDETERMINATE, OSMO_EVT_EXT_ALARM, cmd->value);
cmd->reply = "OK";
diff --git a/src/common/l1sap.c b/src/common/l1sap.c
index 52f2b334..59d5b931 100644
--- a/src/common/l1sap.c
+++ b/src/common/l1sap.c
@@ -1358,7 +1358,7 @@ int l1sap_up(struct gsm_bts_trx *trx, struct osmo_phsap_prim *l1sap)
default:
LOGP(DL1P, LOGL_NOTICE, "unknown prim %d op %d\n",
l1sap->oph.primitive, l1sap->oph.operation);
- oml_tx_failure_event_rep(&trx->mo, OSMO_EVT_MAJ_UKWN_MSG,
+ oml_tx_failure_event_rep(&trx->mo, NM_SEVER_MAJOR, OSMO_EVT_MAJ_UKWN_MSG,
"unknown prim %d op %d",
l1sap->oph.primitive,
l1sap->oph.operation);
diff --git a/src/common/main.c b/src/common/main.c
index 0d84c183..25ecd11e 100644
--- a/src/common/main.c
+++ b/src/common/main.c
@@ -184,7 +184,7 @@ static void signal_handler(int signal)
case SIGTERM:
if (!quit) {
oml_tx_failure_event_rep(&bts->mo,
- OSMO_EVT_CRIT_PROC_STOP,
+ NM_SEVER_CRITICAL, OSMO_EVT_CRIT_PROC_STOP,
"BTS: SIGINT received -> shutdown");
bts_shutdown(bts, "SIGINT");
}
diff --git a/src/common/oml.c b/src/common/oml.c
index 67eb6d8f..d264a6e1 100644
--- a/src/common/oml.c
+++ b/src/common/oml.c
@@ -81,8 +81,8 @@ char *gsm_abis_mo_name(const struct gsm_abis_mo *mo)
}
/* 3GPP TS 12.21 ยง 8.8.2 */
-int oml_tx_failure_event_rep(const struct gsm_abis_mo *mo, uint16_t cause_value,
- const char *fmt, ...)
+int oml_tx_failure_event_rep(const struct gsm_abis_mo *mo, enum abis_nm_severity severity,
+ uint16_t cause_value, const char *fmt, ...)
{
struct msgb *nmsg;
va_list ap;
@@ -91,7 +91,7 @@ int oml_tx_failure_event_rep(const struct gsm_abis_mo *mo, uint16_t cause_value,
get_value_string(abis_mm_event_cause_names, cause_value));
va_start(ap, fmt);
osmo_vlogp(DOML, LOGL_NOTICE, __FILE__, __LINE__, 1, fmt, ap);
- nmsg = abis_nm_fail_evt_vrep(NM_EVT_PROC_FAIL, NM_SEVER_CRITICAL,
+ nmsg = abis_nm_fail_evt_vrep(NM_EVT_PROC_FAIL, severity,
NM_PCAUSE_T_MANUF, cause_value, fmt, ap);
va_end(ap);
LOGPC(DOML, LOGL_NOTICE, "\n");
@@ -558,12 +558,14 @@ static int oml_rx_get_attr(struct gsm_bts *bts, struct msgb *msg)
rc = oml_tlv_parse(&tp, foh->data, msgb_l3len(msg) - sizeof(*foh));
if (rc < 0) {
- oml_tx_failure_event_rep(mo, OSMO_EVT_MAJ_UNSUP_ATTR, "Get Attribute parsing failure");
+ oml_tx_failure_event_rep(mo, NM_SEVER_MINOR, OSMO_EVT_MAJ_UNSUP_ATTR,
+ "Get Attribute parsing failure");
return oml_mo_fom_ack_nack(mo, NM_MT_GET_ATTR, NM_NACK_INCORR_STRUCT);
}
if (!TLVP_PRES_LEN(&tp, NM_ATT_LIST_REQ_ATTR, 1)) {
- oml_tx_failure_event_rep(mo, OSMO_EVT_MAJ_UNSUP_ATTR, "Get Attribute without Attribute List");
+ oml_tx_failure_event_rep(mo, NM_SEVER_MINOR, OSMO_EVT_MAJ_UNSUP_ATTR,
+ "Get Attribute without Attribute List");
return oml_mo_fom_ack_nack(mo, NM_MT_GET_ATTR, NM_NACK_INCORR_STRUCT);
}
@@ -588,7 +590,7 @@ static int oml_rx_set_bts_attr(struct gsm_bts *bts, struct msgb *msg)
rc = oml_tlv_parse(&tp, foh->data, msgb_l3len(msg) - sizeof(*foh));
if (rc < 0) {
- oml_tx_failure_event_rep(&bts->mo, OSMO_EVT_MAJ_UNSUP_ATTR,
+ oml_tx_failure_event_rep(&bts->mo, NM_SEVER_MAJOR, OSMO_EVT_MAJ_UNSUP_ATTR,
"New value for Attribute not supported");
return oml_fom_ack_nack(msg, NM_NACK_INCORR_STRUCT);
}
@@ -597,7 +599,7 @@ static int oml_rx_set_bts_attr(struct gsm_bts *bts, struct msgb *msg)
if (TLVP_PRES_LEN(&tp, NM_ATT_BCCH_ARFCN, 2)) {
uint16_t arfcn = ntohs(tlvp_val16_unal(&tp, NM_ATT_BCCH_ARFCN));
if (arfcn > 1024) {
- oml_tx_failure_event_rep(&bts->mo, OSMO_EVT_WARN_SW_WARN,
+ oml_tx_failure_event_rep(&bts->mo, NM_SEVER_MAJOR, OSMO_EVT_WARN_SW_WARN,
"Given ARFCN %u is not supported",
arfcn);
LOGPFOH(DOML, LOGL_ERROR, foh, "Given ARFCN %u is not supported.\n", arfcn);
@@ -606,7 +608,7 @@ static int oml_rx_set_bts_attr(struct gsm_bts *bts, struct msgb *msg)
}
/* 9.4.52 Starting Time */
if (TLVP_PRESENT(&tp, NM_ATT_START_TIME)) {
- oml_tx_failure_event_rep(&bts->mo, OSMO_EVT_MAJ_UNSUP_ATTR,
+ oml_tx_failure_event_rep(&bts->mo, NM_SEVER_MAJOR, OSMO_EVT_MAJ_UNSUP_ATTR,
"NM_ATT_START_TIME Attribute not "
"supported");
return oml_fom_ack_nack(msg, NM_NACK_SPEC_IMPL_NOTSUPP);
@@ -756,7 +758,7 @@ static int oml_rx_set_radio_attr(struct gsm_bts_trx *trx, struct msgb *msg)
rc = oml_tlv_parse(&tp, foh->data, msgb_l3len(msg) - sizeof(*foh));
if (rc < 0) {
- oml_tx_failure_event_rep(&trx->mo, OSMO_EVT_MAJ_UNSUP_ATTR,
+ oml_tx_failure_event_rep(&trx->mo, NM_SEVER_MAJOR, OSMO_EVT_MAJ_UNSUP_ATTR,
"New value for Set Radio Attribute not"
" supported");
return oml_fom_ack_nack(msg, NM_NACK_INCORR_STRUCT);
@@ -820,10 +822,8 @@ static int oml_rx_set_radio_attr(struct gsm_bts_trx *trx, struct msgb *msg)
arfcn = ntohs(_value);
value += 2;
if (arfcn > 1024) {
- oml_tx_failure_event_rep(&trx->bts->mo,
- OSMO_EVT_WARN_SW_WARN,
- "Given ARFCN %u is unsupported",
- arfcn);
+ oml_tx_failure_event_rep(&trx->bts->mo, NM_SEVER_MAJOR, OSMO_EVT_WARN_SW_WARN,
+ "Given ARFCN %u is unsupported", arfcn);
LOGPFOH(DOML, LOGL_NOTICE, foh, "Given ARFCN %u is unsupported.\n", arfcn);
return oml_fom_ack_nack(msg, NM_NACK_FREQ_NOTAVAIL);
}
@@ -926,9 +926,8 @@ static int oml_rx_set_chan_attr(struct gsm_bts_trx_ts *ts, struct msgb *msg)
rc = oml_tlv_parse(&tp, foh->data, msgb_l3len(msg) - sizeof(*foh));
if (rc < 0) {
- oml_tx_failure_event_rep(&ts->mo, OSMO_EVT_MAJ_UNSUP_ATTR,
- "New value for Set Channel Attribute "
- "not supported");
+ oml_tx_failure_event_rep(&ts->mo, NM_SEVER_MAJOR, OSMO_EVT_MAJ_UNSUP_ATTR,
+ "New value for Set Channel Attribute not supported");
return oml_fom_ack_nack(msg, NM_NACK_INCORR_STRUCT);
}
@@ -1073,7 +1072,8 @@ static inline bool report_bts_number_incorrect(struct gsm_bts *bts, const struct
trx = gsm_bts_trx_num(bts, foh->obj_inst.trx_nr);
if (trx)
mo = &trx->mo;
- oml_tx_failure_event_rep(mo, OSMO_EVT_MAJ_UKWN_MSG, form, foh->obj_inst.bts_nr,
+ oml_tx_failure_event_rep(mo, NM_SEVER_MAJOR, OSMO_EVT_MAJ_UKWN_MSG, form,
+ foh->obj_inst.bts_nr,
get_value_string(abis_nm_msgtype_names, foh->msg_type));
return true;
@@ -1094,7 +1094,8 @@ static int down_fom(struct gsm_bts *bts, struct msgb *msg)
trx = gsm_bts_trx_num(bts, foh->obj_inst.trx_nr);
if (trx)
mo = &trx->mo;
- oml_tx_failure_event_rep(mo, OSMO_EVT_MAJ_UKWN_MSG, "Formatted O&M message too short");
+ oml_tx_failure_event_rep(mo, NM_SEVER_MAJOR, OSMO_EVT_MAJ_UKWN_MSG,
+ "Formatted O&M message too short");
return -EIO;
}
@@ -1149,8 +1150,8 @@ static int down_fom(struct gsm_bts *bts, struct msgb *msg)
trx = gsm_bts_trx_num(bts, foh->obj_inst.trx_nr);
if (trx)
mo = &trx->mo;
- oml_tx_failure_event_rep(mo, OSMO_EVT_MAJ_UKWN_MSG, "unknown Formatted O&M "
- "msg_type 0x%02x", foh->msg_type);
+ oml_tx_failure_event_rep(mo, NM_SEVER_MINOR, OSMO_EVT_MAJ_UKWN_MSG,
+ "unknown Formatted O&M msg_type 0x%02x", foh->msg_type);
ret = oml_fom_ack_nack(msg, NM_NACK_MSGTYPE_INVAL);
}
@@ -1317,9 +1318,8 @@ static int oml_ipa_set_attr(struct gsm_bts *bts, struct msgb *msg)
mo = gsm_objclass2mo(bts, foh->obj_class, &foh->obj_inst);
if (!mo)
return oml_fom_ack_nack(msg, NM_NACK_OBJINST_UNKN);
- oml_tx_failure_event_rep(mo, OSMO_EVT_MAJ_UNSUP_ATTR,
- "New value for IPAC Set Attribute not "
- "supported\n");
+ oml_tx_failure_event_rep(mo, NM_SEVER_MAJOR, OSMO_EVT_MAJ_UNSUP_ATTR,
+ "New value for IPAC Set Attribute not supported\n");
return oml_fom_ack_nack(msg, NM_NACK_INCORR_STRUCT);
}
@@ -1392,13 +1392,13 @@ static int down_mom(struct gsm_bts *bts, struct msgb *msg)
int ret;
if (msgb_l2len(msg) < sizeof(*foh)) {
- oml_tx_failure_event_rep(&bts->mo, OSMO_EVT_MAJ_UKWN_MSG,
+ oml_tx_failure_event_rep(&bts->mo, NM_SEVER_MAJOR, OSMO_EVT_MAJ_UKWN_MSG,
"Manufacturer O&M message too short\n");
return -EIO;
}
if (strncmp((char *)&oh->data[1], abis_nm_ipa_magic, idstrlen)) {
- oml_tx_failure_event_rep(&bts->mo, OSMO_EVT_MAJ_UKWN_MSG,
+ oml_tx_failure_event_rep(&bts->mo, NM_SEVER_MAJOR, OSMO_EVT_MAJ_UKWN_MSG,
"Manufacturer OML message != ipaccess not supported\n");
return -EINVAL;
}
@@ -1437,8 +1437,8 @@ static int down_mom(struct gsm_bts *bts, struct msgb *msg)
trx = gsm_bts_trx_num(bts, foh->obj_inst.trx_nr);
if (trx)
mo = &trx->mo;
- oml_tx_failure_event_rep(mo, OSMO_EVT_MAJ_UKWN_MSG, "unknown Manufacturer O&M "
- "msg_type 0x%02x", foh->msg_type);
+ oml_tx_failure_event_rep(mo, NM_SEVER_MINOR, OSMO_EVT_MAJ_UKWN_MSG,
+ "unknown Manufacturer O&M msg_type 0x%02x", foh->msg_type);
ret = oml_fom_ack_nack(msg, NM_NACK_MSGTYPE_INVAL);
}
@@ -1452,7 +1452,7 @@ int down_oml(struct gsm_bts *bts, struct msgb *msg)
int ret = 0;
if (msgb_l2len(msg) < sizeof(*oh)) {
- oml_tx_failure_event_rep(&bts->mo, OSMO_EVT_MAJ_UKWN_MSG,
+ oml_tx_failure_event_rep(&bts->mo, NM_SEVER_MAJOR, OSMO_EVT_MAJ_UKWN_MSG,
"OML message too short\n");
msgb_free(msg);
return -EIO;
@@ -1461,14 +1461,14 @@ int down_oml(struct gsm_bts *bts, struct msgb *msg)
/* We don't implement de-segmentation of segmented OML messages */
if (oh->placement != ABIS_OM_PLACEMENT_ONLY || oh->sequence != 0) {
- oml_tx_failure_event_rep(&bts->mo, OSMO_EVT_MAJ_UKWN_MSG,
+ oml_tx_failure_event_rep(&bts->mo, NM_SEVER_MAJOR, OSMO_EVT_MAJ_UKWN_MSG,
"Unsupported segmented O&M message\n");
msgb_free(msg);
return -EIO;
}
if (msgb_l3len(msg) < oh->length) {
- oml_tx_failure_event_rep(&bts->mo, OSMO_EVT_MAJ_UKWN_MSG,
+ oml_tx_failure_event_rep(&bts->mo, NM_SEVER_MAJOR, OSMO_EVT_MAJ_UKWN_MSG,
"Short OML message: %u < %u\n",
msgb_l3len(msg), oh->length);
msgb_free(msg);
@@ -1478,7 +1478,7 @@ int down_oml(struct gsm_bts *bts, struct msgb *msg)
switch (oh->mdisc) {
case ABIS_OM_MDISC_FOM:
if (msgb_l2len(msg) < sizeof(*oh)) {
- oml_tx_failure_event_rep(&bts->mo, OSMO_EVT_MAJ_UKWN_MSG,
+ oml_tx_failure_event_rep(&bts->mo, NM_SEVER_MAJOR, OSMO_EVT_MAJ_UKWN_MSG,
"Formatted O&M message too short\n");
ret = -EIO;
break;
@@ -1487,7 +1487,7 @@ int down_oml(struct gsm_bts *bts, struct msgb *msg)
break;
case ABIS_OM_MDISC_MANUF:
if (msgb_l2len(msg) < sizeof(*oh)) {
- oml_tx_failure_event_rep(&bts->mo, OSMO_EVT_MAJ_UKWN_MSG,
+ oml_tx_failure_event_rep(&bts->mo, NM_SEVER_MAJOR, OSMO_EVT_MAJ_UKWN_MSG,
"Manufacturer O&M message too short\n");
ret = -EIO;
break;
@@ -1495,7 +1495,7 @@ int down_oml(struct gsm_bts *bts, struct msgb *msg)
ret = down_mom(bts, msg);
break;
default:
- oml_tx_failure_event_rep(&bts->mo, OSMO_EVT_MAJ_UKWN_MSG,
+ oml_tx_failure_event_rep(&bts->mo, NM_SEVER_MINOR, OSMO_EVT_MAJ_UKWN_MSG,
"unknown O&M msg_disc 0x%02x\n", oh->mdisc);
ret = -EINVAL;
}
diff --git a/src/common/pcu_sock.c b/src/common/pcu_sock.c
index 31097baa..e4f2d661 100644
--- a/src/common/pcu_sock.c
+++ b/src/common/pcu_sock.c
@@ -595,7 +595,7 @@ static int pcu_rx_txt_ind(struct gsm_bts *bts,
case PCU_VERSION:
LOGP(DPCU, LOGL_INFO, "OsmoPCU version %s connected\n",
txt->text);
- oml_tx_failure_event_rep(&bts->gprs.cell.mo, OSMO_EVT_PCU_VERS, txt->text);
+ oml_tx_failure_event_rep(&bts->gprs.cell.mo, NM_SEVER_CEASED, OSMO_EVT_PCU_VERS, txt->text);
osmo_strlcpy(bts->pcu_version, txt->text, MAX_VERSION_LENGTH);
if (GSM_BTS_HAS_SI(bts, SYSINFO_TYPE_13))
@@ -604,7 +604,8 @@ static int pcu_rx_txt_ind(struct gsm_bts *bts,
LOGP(DPCU, LOGL_INFO, "SI13 is not available on PCU connection\n");
break;
case PCU_OML_ALERT:
- oml_tx_failure_event_rep(&bts->gprs.cell.mo, OSMO_EVT_EXT_ALARM, txt->text);
+ oml_tx_failure_event_rep(&bts->gprs.cell.mo, NM_SEVER_INDETERMINATE, OSMO_EVT_EXT_ALARM,
+ txt->text);
break;
default:
LOGP(DPCU, LOGL_ERROR, "Unknown TXT_IND type %u received\n",
@@ -731,7 +732,7 @@ static void pcu_sock_close(struct pcu_sock_state *state)
bts = llist_entry(state->net->bts_list.next, struct gsm_bts, list);
LOGP(DPCU, LOGL_NOTICE, "PCU socket has LOST connection\n");
- oml_tx_failure_event_rep(&bts->gprs.cell.mo, OSMO_EVT_PCU_VERS,
+ oml_tx_failure_event_rep(&bts->gprs.cell.mo, NM_SEVER_MAJOR, OSMO_EVT_PCU_VERS,
"PCU socket has LOST connection");
bts->pcu_version[0] = '\0';
diff --git a/src/common/rsl.c b/src/common/rsl.c
index cc653ce2..92575b52 100644
--- a/src/common/rsl.c
+++ b/src/common/rsl.c
@@ -471,8 +471,8 @@ static int rsl_rx_paging_cmd(struct gsm_bts_trx *trx, struct msgb *msg)
if (rc < 0) {
/* FIXME: notfiy the BSC on other errors? */
if (rc == -ENOSPC) {
- oml_tx_failure_event_rep(&trx->bts->mo, OSMO_EVT_MIN_PAG_TAB_FULL,
- "BTS paging table is full");
+ oml_tx_failure_event_rep(&trx->bts->mo, NM_SEVER_WARNING,
+ OSMO_EVT_MIN_PAG_TAB_FULL, "BTS paging table is full");
}
}
@@ -2013,7 +2013,7 @@ static int rsl_rx_ipac_XXcx(struct msgb *msg)
if (!lchan->abis_ip.rtp_socket) {
LOGPLCHAN(lchan, DRTP, LOGL_ERROR, "IPAC Failed to create RTP/RTCP sockets\n");
oml_tx_failure_event_rep(&lchan->ts->trx->mo,
- OSMO_EVT_CRIT_RTP_TOUT,
+ NM_SEVER_MINOR, OSMO_EVT_CRIT_RTP_TOUT,
"%s IPAC Failed to create RTP/RTCP sockets",
gsm_lchan_name(lchan));
return tx_ipac_XXcx_nack(lchan, RSL_ERR_RES_UNAVAIL,
@@ -2050,7 +2050,7 @@ static int rsl_rx_ipac_XXcx(struct msgb *msg)
if (rc < 0) {
LOGPLCHAN(lchan, DRTP, LOGL_ERROR, "IPAC Failed to bind RTP/RTCP sockets\n");
oml_tx_failure_event_rep(&lchan->ts->trx->mo,
- OSMO_EVT_CRIT_RTP_TOUT,
+ NM_SEVER_MINOR, OSMO_EVT_CRIT_RTP_TOUT,
"%s IPAC Failed to bind RTP/RTCP sockets",
gsm_lchan_name(lchan));
osmo_rtp_socket_free(lchan->abis_ip.rtp_socket);
diff --git a/src/osmo-bts-oc2g/calib_file.c b/src/osmo-bts-oc2g/calib_file.c
index 72ec2665..6d2d5610 100644
--- a/src/osmo-bts-oc2g/calib_file.c
+++ b/src/osmo-bts-oc2g/calib_file.c
@@ -134,7 +134,7 @@ static int calib_file_open(struct oc2gl1_hdl *fl1h,
st->fp = fopen(fname, "rb");
if (!st->fp) {
LOGP(DL1C, LOGL_FATAL, "Failed to open '%s' for calibration data.\n", fname);
- oml_tx_failure_event_rep(&fl1h->phy_inst->trx->mo, OSMO_EVT_WARN_SW_WARN,
+ oml_tx_failure_event_rep(&fl1h->phy_inst->trx->mo, NM_SEVER_MAJOR, OSMO_EVT_WARN_SW_WARN,
"Failed to open '%s' for calibration data", fname);
return -1;
}
@@ -221,7 +221,7 @@ static int calib_file_send(struct oc2gl1_hdl *fl1h,
rc = calib_verify(fl1h, desc);
if (rc < 0) {
LOGP(DL1C, LOGL_FATAL, "Verify L1 calibration table %s -> failed (%d)\n", desc->fname, rc);
- oml_tx_failure_event_rep(&fl1h->phy_inst->trx->mo, OSMO_EVT_WARN_SW_WARN,
+ oml_tx_failure_event_rep(&fl1h->phy_inst->trx->mo, NM_SEVER_MAJOR, OSMO_EVT_WARN_SW_WARN,
"Verify L1 calibration table %s -> failed (%d)", desc->fname, rc);
st->last_file_idx = get_next_calib_file_idx(fl1h, st->last_file_idx);
@@ -278,7 +278,7 @@ int calib_load(struct oc2gl1_hdl *fl1h)
if (!calib_path) {
LOGP(DL1C, LOGL_FATAL, "Calibration file path not specified\n");
- oml_tx_failure_event_rep(&fl1h->phy_inst->trx->mo, OSMO_EVT_WARN_SW_WARN,
+ oml_tx_failure_event_rep(&fl1h->phy_inst->trx->mo, NM_SEVER_MAJOR, OSMO_EVT_WARN_SW_WARN,
"Calibration file path not specified");
return -1;
}