This is merely a historical archive of years 2008-2021, before the migration to mailman3.
A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.
Max gerrit-no-reply at lists.osmocom.orgMax has uploaded this change for review. ( https://gerrit.osmocom.org/13205 Change subject: BSSGP: add logging macro wrappers ...................................................................... BSSGP: add logging macro wrappers Add BSSGP-specific wrappers for LOGP/DEBUGP to unify log messages similar to LOGPFSM* wrappers. Change-Id: I8cd2bdb12aa3a5a7dfcb7a85fee35ec3a3a9820b --- M include/osmocom/gprs/gprs_bssgp.h M src/gb/gprs_bssgp.c M src/gb/gprs_bssgp_bss.c M src/gb/gprs_bssgp_util.c 4 files changed, 74 insertions(+), 111 deletions(-) git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/05/13205/1 diff --git a/include/osmocom/gprs/gprs_bssgp.h b/include/osmocom/gprs/gprs_bssgp.h index 400c3e0..0b772cf 100644 --- a/include/osmocom/gprs/gprs_bssgp.h +++ b/include/osmocom/gprs/gprs_bssgp.h @@ -11,6 +11,12 @@ #include <osmocom/gprs/protocol/gsm_08_18.h> +#define LOGBSSGP(bvci, nsei, lvl, fmt, args...) \ + LOGP(DBSSGP, lvl, "BSSGP (BVCI=%u, NSEI=%u) " fmt, bvci, nsei, ## args) + +#define DEBUGBSSGP(bvci, nsei, fmt, args...) \ + DEBUGP(DBSSGP, "BSSGP (BVCI=%u, NSEI=%u) " fmt, bvci, nsei, ## args) + /* gprs_bssgp_util.c */ extern struct gprs_ns_inst *bssgp_nsi; struct msgb *bssgp_msgb_alloc(void); diff --git a/src/gb/gprs_bssgp.c b/src/gb/gprs_bssgp.c index 7acc9d9..b0a1089 100644 --- a/src/gb/gprs_bssgp.c +++ b/src/gb/gprs_bssgp.c @@ -94,8 +94,7 @@ llist_for_each_entry(bctx, &bssgp_bvc_ctxts, list) { if (bctx->nsei == nsei && bctx->bvci != BVCI_SIGNALLING) { - LOGP(DBSSGP, LOGL_DEBUG, "NSEI=%u/BVCI=%u RESET due to %s\n", - nsei, bctx->bvci, bssgp_cause_str(cause)); + DEBUGBSSGP(bctx->bvci, nsei, "RESET due to %s\n", bssgp_cause_str(cause)); rc = bssgp_tx_bvc_reset(bctx, bctx->bvci, cause); if (rc < 0) return rc; @@ -262,8 +261,7 @@ uint16_t bvci; bvci = tlvp_val16be(tp, BSSGP_IE_BVCI); - DEBUGP(DBSSGP, "BSSGP BVCI=%u Rx RESET cause=%s\n", bvci, - bssgp_cause_str(*TLVP_VAL(tp, BSSGP_IE_CAUSE))); + DEBUGBSSGP(bvci, nsei, "Rx RESET cause=%s\n", bssgp_cause_str(*TLVP_VAL(tp, BSSGP_IE_CAUSE))); /* look-up or create the BTS context for this BVC */ bctx = btsctx_by_bvci_nsei(bvci, nsei); @@ -277,15 +275,13 @@ * informs us about its RAC + Cell ID, so we can create a mapping */ if (bvci != 0 && bvci != 1) { if (!TLVP_PRESENT(tp, BSSGP_IE_CELL_ID)) { - LOGP(DBSSGP, LOGL_ERROR, "BSSGP BVCI=%u Rx RESET " - "missing mandatory IE\n", bvci); + LOGBSSGP(bvci, nsei, LOGL_ERROR, "Rx RESET missing mandatory IE\n"); return -EINVAL; } /* actually extract RAC / CID */ bctx->cell_id = bssgp_parse_cell_id(&bctx->ra_id, TLVP_VAL(tp, BSSGP_IE_CELL_ID)); - LOGP(DBSSGP, LOGL_NOTICE, "Cell %s CI %u on BVCI %u\n", - osmo_rai_name(&bctx->ra_id), bctx->cell_id, bvci); + LOGBSSGP(bvci, nsei, LOGL_NOTICE, "Cell %s CI %u\n", osmo_rai_name(&bctx->ra_id), bctx->cell_id); } /* Send NM_BVC_RESET.ind to NM */ @@ -313,13 +309,11 @@ bvci = tlvp_val16be(tp, BSSGP_IE_BVCI); if (bvci == BVCI_SIGNALLING) { /* 8.3.2: Signalling BVC shall never be blocked */ - LOGP(DBSSGP, LOGL_ERROR, "NSEI=%u/BVCI=%u " - "received block for signalling BVC!?!\n", - nsei, msgb_bvci(msg)); + LOGBSSGP(bvci, nsei, LOGL_ERROR, "received block for signalling BVC!?!\n"); return 0; } - LOGP(DBSSGP, LOGL_INFO, "BSSGP Rx BVCI=%u BVC-BLOCK\n", bvci); + LOGBSSGP(bvci, nsei, LOGL_INFO, "Rx BVC-BLOCK\n"); ptp_ctx = btsctx_by_bvci_nsei(bvci, nsei); if (!ptp_ctx) @@ -351,13 +345,11 @@ bvci = tlvp_val16be(tp, BSSGP_IE_BVCI); if (bvci == BVCI_SIGNALLING) { /* 8.3.2: Signalling BVC shall never be blocked */ - LOGP(DBSSGP, LOGL_ERROR, "NSEI=%u/BVCI=%u " - "received unblock for signalling BVC!?!\n", - nsei, msgb_bvci(msg)); + LOGBSSGP(bvci, nsei, LOGL_ERROR, "received unblock for signalling BVC!?!\n"); return 0; } - DEBUGP(DBSSGP, "BSSGP BVCI=%u Rx BVC-UNBLOCK\n", bvci); + DEBUGBSSGP(bvci, nsei, "Rx BVC-UNBLOCK\n"); ptp_ctx = btsctx_by_bvci_nsei(bvci, nsei); if (!ptp_ctx) @@ -389,13 +381,13 @@ /* extract TLLI and parse TLV IEs */ msgb_tlli(msg) = osmo_ntohl(budh->tlli); - DEBUGP(DBSSGP, "BSSGP TLLI=0x%08x Rx UPLINK-UNITDATA\n", msgb_tlli(msg)); + DEBUGBSSGP(ctx->bvci, ctx->nsei, "TLLI=0x%08x Rx UPLINK-UNITDATA\n", msgb_tlli(msg)); /* Cell ID and LLC_PDU are the only mandatory IE */ if (!TLVP_PRESENT(tp, BSSGP_IE_CELL_ID) || !TLVP_PRESENT(tp, BSSGP_IE_LLC_PDU)) { - LOGP(DBSSGP, LOGL_ERROR, "BSSGP TLLI=0x%08x Rx UL-UD " - "missing mandatory IE\n", msgb_tlli(msg)); + LOGBSSGP(ctx->bvci, ctx->nsei, LOGL_ERROR, "TLLI=0x%08x Rx UL-UD missing mandatory IE\n", + msgb_tlli(msg)); return bssgp_tx_status(BSSGP_CAUSE_MISSING_MAND_IE, NULL, msg); } @@ -424,15 +416,13 @@ if (!TLVP_PRESENT(tp, BSSGP_IE_TLLI) || !TLVP_PRESENT(tp, BSSGP_IE_ROUTEING_AREA)) { - LOGP(DBSSGP, LOGL_ERROR, "BSSGP BVCI=%u Rx SUSPEND " - "missing mandatory IE\n", ns_bvci); + LOGBSSGP(ns_bvci, nsei, LOGL_ERROR, "Rx SUSPEND missing mandatory IE\n"); return bssgp_tx_status(BSSGP_CAUSE_MISSING_MAND_IE, NULL, msg); } tlli = tlvp_val32be(tp, BSSGP_IE_TLLI); - DEBUGP(DBSSGP, "BSSGP BVCI=%u TLLI=0x%08x Rx SUSPEND\n", - ns_bvci, tlli); + DEBUGBSSGP(ns_bvci, nsei, "TLLI=0x%08x Rx SUSPEND\n", tlli); gsm48_parse_ra(&raid, TLVP_VAL(tp, BSSGP_IE_ROUTEING_AREA)); @@ -466,15 +456,14 @@ if (!TLVP_PRESENT(tp, BSSGP_IE_TLLI) || !TLVP_PRESENT(tp, BSSGP_IE_ROUTEING_AREA) || !TLVP_PRESENT(tp, BSSGP_IE_SUSPEND_REF_NR)) { - LOGP(DBSSGP, LOGL_ERROR, "BSSGP BVCI=%u Rx RESUME " - "missing mandatory IE\n", ns_bvci); + LOGBSSGP(ns_bvci, nsei, LOGL_ERROR, "Rx RESUME missing mandatory IE\n"); return bssgp_tx_status(BSSGP_CAUSE_MISSING_MAND_IE, NULL, msg); } tlli = tlvp_val32be(tp, BSSGP_IE_TLLI); suspend_ref = *TLVP_VAL(tp, BSSGP_IE_SUSPEND_REF_NR); - DEBUGP(DBSSGP, "BSSGP BVCI=%u TLLI=0x%08x Rx RESUME\n", ns_bvci, tlli); + DEBUGBSSGP(ns_bvci, nsei, "TLLI=0x%08x Rx RESUME\n", tlli); gsm48_parse_ra(&raid, TLVP_VAL(tp, BSSGP_IE_ROUTEING_AREA)); @@ -509,15 +498,13 @@ !TLVP_PRESENT(tp, BSSGP_IE_LLC_FRAMES_DISCARDED) || !TLVP_PRESENT(tp, BSSGP_IE_BVCI) || !TLVP_PRESENT(tp, BSSGP_IE_NUM_OCT_AFF)) { - LOGP(DBSSGP, LOGL_ERROR, "BSSGP BVCI=%u Rx LLC DISCARDED " - "missing mandatory IE\n", ctx->bvci); + LOGBSSGP(ctx->bvci, nsei, LOGL_ERROR, "Rx LLC DISCARDED missing mandatory IE\n"); } if (TLVP_PRESENT(tp, BSSGP_IE_TLLI)) tlli = tlvp_val32be(tp, BSSGP_IE_TLLI); - DEBUGP(DBSSGP, "BSSGP BVCI=%u TLLI=%08x Rx LLC DISCARDED\n", - ctx->bvci, tlli); + DEBUGBSSGP(ctx->bvci, nsei, "TLLI=%08x Rx LLC DISCARDED\n", tlli); rate_ctr_inc(&ctx->ctrg->ctr[BSSGP_CTR_DISCARDED]); @@ -541,22 +528,18 @@ enum gprs_bssgp_cause cause; if (!TLVP_PRESENT(tp, BSSGP_IE_CAUSE)) { - LOGP(DBSSGP, LOGL_ERROR, "BSSGP BVCI=%u Rx STATUS " - "missing mandatory IE\n", bvci); + LOGBSSGP(bvci, nsei, LOGL_ERROR, "Rx STATUS missing mandatory IE\n"); cause = BSSGP_CAUSE_PROTO_ERR_UNSPEC; } else { cause = *TLVP_VAL(tp, BSSGP_IE_CAUSE); } - LOGP(DBSSGP, LOGL_NOTICE, "BSSGP BVCI=%u Rx BVC STATUS, cause=%s\n", - bvci, bssgp_cause_str(cause)); + LOGBSSGP(bvci, nsei, LOGL_NOTICE, "Rx BVC STATUS, cause=%s\n", bssgp_cause_str(cause)); if (cause == BSSGP_CAUSE_BVCI_BLOCKED || cause == BSSGP_CAUSE_UNKNOWN_BVCI) { if (!TLVP_PRESENT(tp, BSSGP_IE_BVCI)) - LOGP(DBSSGP, LOGL_ERROR, - "BSSGP BVCI=%u Rx STATUS cause=%s " - "missing conditional BVCI IE\n", - bvci, bssgp_cause_str(cause)); + LOGBSSGP(bvci, nsei, LOGL_ERROR, "Rx STATUS cause=%s missing conditional BVCI IE\n", + bssgp_cause_str(cause)); } if (bctx) @@ -805,16 +788,14 @@ uint32_t old_r_def_ms = bctx->r_default_ms; uint16_t nsei = msgb_nsei(msg); - DEBUGP(DBSSGP, "BSSGP BVCI=%u Rx Flow Control BVC\n", - bctx->bvci); + DEBUGBSSGP(bctx->bvci, nsei, "Rx Flow Control BVC\n"); if (!TLVP_PRESENT(tp, BSSGP_IE_TAG) || !TLVP_PRESENT(tp, BSSGP_IE_BVC_BUCKET_SIZE) || !TLVP_PRESENT(tp, BSSGP_IE_BUCKET_LEAK_RATE) || !TLVP_PRESENT(tp, BSSGP_IE_BMAX_DEFAULT_MS) || !TLVP_PRESENT(tp, BSSGP_IE_R_DEFAULT_MS)) { - LOGP(DBSSGP, LOGL_ERROR, "BSSGP BVCI=%u Rx FC BVC " - "missing mandatory IE\n", bctx->bvci); + LOGBSSGP(bctx->bvci, nsei, LOGL_ERROR, "Rx FC BVC missing mandatory IE\n"); return bssgp_tx_status(BSSGP_CAUSE_MISSING_MAND_IE, NULL, msg); } @@ -828,18 +809,18 @@ bctx->r_default_ms = 100 * tlvp_val16be(tp, BSSGP_IE_R_DEFAULT_MS) / 8; if (old_leak_rate != 0 && bctx->fc->bucket_leak_rate == 0) - LOGP(DBSSGP, LOGL_NOTICE, "BSS instructs us to bucket leak " - "rate of 0, stopping all DL GPRS!\n"); + LOGBSSGP(bctx->bvci, nsei, LOGL_NOTICE, + "BSS instructs us to bucket leak rate of 0, stopping all DL GPRS!\n"); else if (old_leak_rate == 0 && bctx->fc->bucket_leak_rate != 0) - LOGP(DBSSGP, LOGL_NOTICE, "BSS instructs us to bucket leak " - "rate of != 0, restarting all DL GPRS!\n"); + LOGBSSGP(bctx->bvci, nsei, LOGL_NOTICE, + "BSS instructs us to bucket leak rate of != 0, restarting all DL GPRS!\n"); if (old_r_def_ms != 0 && bctx->r_default_ms == 0) - LOGP(DBSSGP, LOGL_NOTICE, "BSS instructs us to MS default " - "bucket leak rate of 0, stopping DL GPRS!\n"); + LOGBSSGP(bctx->bvci, nsei, LOGL_NOTICE, + "BSS instructs us to MS default bucket leak rate of 0, stopping DL GPRS!\n"); else if (old_r_def_ms == 0 && bctx->r_default_ms != 0) - LOGP(DBSSGP, LOGL_NOTICE, "BSS instructs us to MS default " - "bucket leak rate != 0, restarting DL GPRS!\n"); + LOGBSSGP(bctx->bvci, nsei, LOGL_NOTICE, + "BSS instructs us to MS default bucket leak rate != 0, restarting DL GPRS!\n"); /* reconfigure the timer for flow control based on new values */ fc_queue_timer_cfg(bctx->fc); @@ -875,13 +856,12 @@ break; case BSSGP_PDUT_RA_CAPABILITY: /* BSS requests RA capability or IMSI */ - DEBUGP(DBSSGP, "BSSGP BVCI=%u Rx RA CAPABILITY UPDATE\n", - bctx->bvci); + DEBUGBSSGP(bctx->bvci, bctx->nsei, "Rx RA CAPABILITY UPDATE\n"); /* FIXME: send GMM_RA_CAPABILITY_UPDATE.ind to GMM */ /* FIXME: send RA_CAPA_UPDATE_ACK */ break; case BSSGP_PDUT_RADIO_STATUS: - DEBUGP(DBSSGP, "BSSGP BVCI=%u Rx RADIO STATUS\n", bctx->bvci); + DEBUGBSSGP(bctx->bvci, bctx->nsei, "Rx RADIO STATUS\n"); /* BSS informs us of some exception */ /* FIXME: send GMM_RADIO_STATUS.ind to GMM */ break; @@ -891,8 +871,7 @@ break; case BSSGP_PDUT_FLOW_CONTROL_MS: /* BSS informs us of available bandwidth to one MS */ - DEBUGP(DBSSGP, "BSSGP BVCI=%u Rx Flow Control MS\n", - bctx->bvci); + DEBUGBSSGP(bctx->bvci, bctx->nsei, "Rx Flow Control MS\n"); /* FIXME: actually implement flow control */ /* FIXME: Send FLOW_CONTROL_MS_ACK */ break; @@ -904,8 +883,7 @@ case BSSGP_PDUT_CREATE_BSS_PFC_NACK: case BSSGP_PDUT_MODIFY_BSS_PFC: case BSSGP_PDUT_DELETE_BSS_PFC_ACK: - DEBUGP(DBSSGP, "BSSGP BVCI=%u Rx PDU type %s not [yet] " - "implemented\n", bctx->bvci, bssgp_pdu_str(pdu_type)); + DEBUGBSSGP(bctx->bvci, bctx->nsei, "Rx PDU type %s not [yet] implemented\n", bssgp_pdu_str(pdu_type)); rc = bssgp_tx_status(BSSGP_CAUSE_PDU_INCOMP_FEAT, NULL, msg); break; /* those only exist in the SGSN -> BSS direction */ @@ -915,14 +893,12 @@ case BSSGP_PDUT_RA_CAPA_UPDATE_ACK: case BSSGP_PDUT_FLOW_CONTROL_BVC_ACK: case BSSGP_PDUT_FLOW_CONTROL_MS_ACK: - DEBUGP(DBSSGP, "BSSGP BVCI=%u PDU type %s only exists in DL\n", - bctx->bvci, bssgp_pdu_str(pdu_type)); + DEBUGBSSGP(bctx->bvci, bctx->nsei, "PDU type %s only exists in DL\n", bssgp_pdu_str(pdu_type)); bssgp_tx_status(BSSGP_CAUSE_PROTO_ERR_UNSPEC, NULL, msg); rc = -EINVAL; break; default: - DEBUGP(DBSSGP, "BSSGP BVCI=%u PDU type %s unknown\n", - bctx->bvci, bssgp_pdu_str(pdu_type)); + DEBUGBSSGP(bctx->bvci, bctx->nsei, "PDU type %s unknown\n", bssgp_pdu_str(pdu_type)); rc = bssgp_tx_status(BSSGP_CAUSE_PROTO_ERR_UNSPEC, NULL, msg); break; } @@ -940,6 +916,7 @@ int rc = 0; uint16_t ns_bvci = msgb_bvci(msg); uint16_t bvci = bctx ? bctx->bvci : ns_bvci; + uint16_t nsei = bctx ? bctx->nsei : msgb_nsei(msg); switch (bgph->pdu_type) { case BSSGP_PDUT_SUSPEND: @@ -952,14 +929,13 @@ break; case BSSGP_PDUT_FLUSH_LL_ACK: /* BSS informs us it has performed LL FLUSH */ - DEBUGP(DBSSGP, "BSSGP Rx BVCI=%u FLUSH LL ACK\n", bvci); + DEBUGBSSGP(bvci, nsei, "Rx FLUSH LL ACK\n"); /* FIXME: send NM_FLUSH_LL.res to NM */ break; case BSSGP_PDUT_LLC_DISCARD: /* BSS informs that some LLC PDU's have been discarded */ if (!bctx) { - LOGP(DBSSGP, LOGL_ERROR, - "BSSGP Rx LLC-DISCARD missing mandatory BVCI\n"); + LOGBSSGP(bvci, nsei, LOGL_ERROR, "Rx LLC-DISCARD missing mandatory BVCI\n"); goto err_mand_ie; } rc = bssgp_rx_llc_disc(msg, tp, bctx); @@ -968,8 +944,7 @@ /* BSS tells us that BVC shall be blocked */ if (!TLVP_PRESENT(tp, BSSGP_IE_BVCI) || !TLVP_PRESENT(tp, BSSGP_IE_CAUSE)) { - LOGP(DBSSGP, LOGL_ERROR, "BSSGP Rx BVC-BLOCK " - "missing mandatory IE\n"); + LOGBSSGP(bvci, nsei, LOGL_ERROR, "Rx BVC-BLOCK missing mandatory IE\n"); goto err_mand_ie; } rc = bssgp_rx_bvc_block(msg, tp); @@ -977,21 +952,19 @@ case BSSGP_PDUT_BVC_UNBLOCK: /* BSS tells us that BVC shall be unblocked */ if (!TLVP_PRESENT(tp, BSSGP_IE_BVCI)) { - LOGP(DBSSGP, LOGL_ERROR, "BSSGP Rx BVC-UNBLOCK " - "missing mandatory IE\n"); + LOGBSSGP(bvci, nsei, LOGL_ERROR, "Rx BVC-UNBLOCK missing mandatory IE\n"); goto err_mand_ie; } rc = bssgp_rx_bvc_unblock(msg, tp); break; case BSSGP_PDUT_BVC_RESET_ACK: - LOGP(DBSSGP, LOGL_ERROR, "BSSGP BVCI=%u Rx BVC-RESET-ACK\n", bvci); + LOGBSSGP(bvci, nsei, LOGL_ERROR, "Rx BVC-RESET-ACK\n"); break; case BSSGP_PDUT_BVC_RESET: /* BSS tells us that BVC init is required */ if (!TLVP_PRESENT(tp, BSSGP_IE_BVCI) || !TLVP_PRESENT(tp, BSSGP_IE_CAUSE)) { - LOGP(DBSSGP, LOGL_ERROR, "BSSGP Rx BVC-RESET " - "missing mandatory IE\n"); + LOGBSSGP(bvci, nsei, LOGL_ERROR, "Rx BVC-RESET missing mandatory IE\n"); goto err_mand_ie; } rc = bssgp_rx_bvc_reset(msg, tp, ns_bvci); @@ -1010,14 +983,12 @@ case BSSGP_PDUT_BVC_BLOCK_ACK: case BSSGP_PDUT_BVC_UNBLOCK_ACK: case BSSGP_PDUT_SGSN_INVOKE_TRACE: - DEBUGP(DBSSGP, "BSSGP BVCI=%u Rx PDU type %s only exists in DL\n", - bvci, bssgp_pdu_str(pdu_type)); + DEBUGBSSGP(bvci, nsei, "Rx PDU type %s only exists in DL\n", bssgp_pdu_str(pdu_type)); bssgp_tx_status(BSSGP_CAUSE_PROTO_ERR_UNSPEC, NULL, msg); rc = -EINVAL; break; default: - DEBUGP(DBSSGP, "BSSGP BVCI=%u Rx PDU type %s unknown\n", - bvci, bssgp_pdu_str(pdu_type)); + DEBUGBSSGP(bvci, nsei, "Rx PDU type %s unknown\n", bssgp_pdu_str(pdu_type)); rc = bssgp_tx_status(BSSGP_CAUSE_PROTO_ERR_UNSPEC, NULL, msg); break; } @@ -1053,7 +1024,7 @@ rc = bssgp_tlv_parse(&tp, budh->data, data_len); } if (rc < 0) { - LOGP(DBSSGP, LOGL_ERROR, "Failed to parse BSSGP %s message. Invalid message was: %s\n", + LOGBSSGP(ns_bvci, ns_nsei, LOGL_ERROR, "Failed to parse %s message. Invalid message was: %s\n", bssgp_pdu_str(pdu_type), msgb_hexdump(msg)); if (pdu_type != BSSGP_PDUT_STATUS) return bssgp_tx_status(BSSGP_CAUSE_INV_MAND_INF, NULL, msg); @@ -1083,9 +1054,8 @@ * registered if a BVCI is given. */ if (!bctx && bvci != BVCI_SIGNALLING && pdu_type != BSSGP_PDUT_BVC_RESET) { - LOGP(DBSSGP, LOGL_NOTICE, "NSEI=%u/BVCI=%u Rejecting PDU " - "type %s for unknown BVCI\n", ns_nsei, bvci, - bssgp_pdu_str(pdu_type)); + LOGBSSGP(ns_bvci, ns_nsei, LOGL_NOTICE, "Rejecting PDU type %s for unknown BVCI %u\n", + bssgp_pdu_str(pdu_type), bvci); return bssgp_tx_status(BSSGP_CAUSE_UNKNOWN_BVCI, &bvci, msg); } @@ -1096,10 +1066,8 @@ else if (bctx) rc = bssgp_rx_ptp(msg, &tp, bctx); else - LOGP(DBSSGP, LOGL_NOTICE, - "NSEI=%u/BVCI=%u Cannot handle PDU type %s for " - "unknown BVCI, NS BVCI %u\n", - ns_nsei, bvci, bssgp_pdu_str(pdu_type), ns_bvci); + LOGBSSGP(ns_bvci, ns_nsei, LOGL_NOTICE, "Cannot handle PDU type %s for unknown BVCI %u\n", + bssgp_pdu_str(pdu_type), bvci); return rc; } @@ -1121,16 +1089,14 @@ /* Identifiers from UP: TLLI, BVCI, NSEI (all in msgb->cb) */ if (bvci <= BVCI_PTM ) { - LOGP(DBSSGP, LOGL_ERROR, "Cannot send DL-UD to BVCI %u\n", - bvci); + LOGBSSGP(bvci, nsei, LOGL_ERROR, "Cannot send DL-UD to BVCI\n"); msgb_free(msg); return -EINVAL; } bctx = btsctx_by_bvci_nsei(bvci, nsei); if (!bctx) { - LOGP(DBSSGP, LOGL_ERROR, "Cannot send DL-UD to unknown BVCI %u\n", - bvci); + LOGBSSGP(bvci, nsei, LOGL_ERROR, "Cannot send DL-UD to unknown BVCI\n"); msgb_free(msg); return -ENODEV; } diff --git a/src/gb/gprs_bssgp_bss.c b/src/gb/gprs_bssgp_bss.c index f06c403..574b47a 100644 --- a/src/gb/gprs_bssgp_bss.c +++ b/src/gb/gprs_bssgp_bss.c @@ -60,8 +60,7 @@ struct bssgp_normal_hdr *bgph = (struct bssgp_normal_hdr *) msgb_put(msg, sizeof(*bgph)); - LOGP(DBSSGP, LOGL_NOTICE, "BSSGP (BVCI=0) Tx SUSPEND (TLLI=0x%04x)\n", - tlli); + LOGBSSGP(0, nsei, LOGL_NOTICE, "Tx SUSPEND (TLLI=0x%04x)\n", tlli); msgb_nsei(msg) = nsei; msgb_bvci(msg) = 0; /* Signalling */ bgph->pdu_type = BSSGP_PDUT_SUSPEND; @@ -80,7 +79,7 @@ struct bssgp_normal_hdr *bgph = (struct bssgp_normal_hdr *) msgb_put(msg, sizeof(*bgph)); - LOGP(DBSSGP, LOGL_NOTICE, "BSSGP (BVCI=0) Tx RESUME (TLLI=0x%04x)\n", + LOGBSSGP(0, nsei, LOGL_NOTICE, "Tx RESUME (TLLI=0x%04x)\n", tlli); msgb_nsei(msg) = nsei; msgb_bvci(msg) = 0; /* Signalling */ @@ -101,8 +100,7 @@ struct bssgp_normal_hdr *bgph = (struct bssgp_normal_hdr *) msgb_put(msg, sizeof(*bgph)); - LOGP(DBSSGP, LOGL_NOTICE, "BSSGP (BVCI=%u) Tx RA-CAPA-UPD (TLLI=0x%04x)\n", - bctx->bvci, tlli); + LOGBSSGP(bctx->bvci, bctx->nsei, LOGL_NOTICE, "Tx RA-CAPA-UPD (TLLI=0x%04x)\n", tlli); /* set NSEI and BVCI in msgb cb */ msgb_nsei(msg) = bctx->nsei; @@ -123,8 +121,7 @@ struct bssgp_normal_hdr *bgph = (struct bssgp_normal_hdr *) msgb_put(msg, sizeof(*bgph)); - LOGP(DBSSGP, LOGL_NOTICE, "BSSGP (BVCI=%u) Tx RADIO-STATUS ", - bctx->bvci); + LOGBSSGP(bctx->bvci, bctx->nsei, LOGL_NOTICE, "Tx RADIO-STATUS "); /* set NSEI and BVCI in msgb cb */ msgb_nsei(msg) = bctx->nsei; @@ -232,9 +229,8 @@ uint16_t _bvci = osmo_htons(bctx->bvci); uint32_t _oct_aff = osmo_htonl(num_octets & 0xFFFFFF); - LOGP(DBSSGP, LOGL_NOTICE, "BSSGP (BVCI=%u) Tx LLC-DISCARDED " - "TLLI=0x%04x, FRAMES=%u, OCTETS=%u\n", bctx->bvci, tlli, - num_frames, num_octets); + LOGBSSGP(bctx->bvci, bctx->nsei, LOGL_NOTICE, "Tx LLC-DISCARDED TLLI=0x%04x, FRAMES=%u, OCTETS=%u\n", + tlli, num_frames, num_octets); msgb_nsei(msg) = bctx->nsei; msgb_bvci(msg) = 0; /* Signalling */ bgph->pdu_type = BSSGP_PDUT_LLC_DISCARD; @@ -256,8 +252,7 @@ (struct bssgp_normal_hdr *) msgb_put(msg, sizeof(*bgph)); uint16_t _bvci = osmo_htons(bctx->bvci); - LOGP(DBSSGP, LOGL_NOTICE, "BSSGP (BVCI=%u) Tx BVC-BLOCK " - "CAUSE=%s\n", bctx->bvci, bssgp_cause_str(cause)); + LOGBSSGP(bctx->bvci, bctx->nsei, LOGL_NOTICE, "Tx BVC-BLOCK CAUSE=%s\n", bssgp_cause_str(cause)); msgb_nsei(msg) = bctx->nsei; msgb_bvci(msg) = 0; /* Signalling */ @@ -277,7 +272,7 @@ (struct bssgp_normal_hdr *) msgb_put(msg, sizeof(*bgph)); uint16_t _bvci = osmo_htons(bctx->bvci); - LOGP(DBSSGP, LOGL_NOTICE, "BSSGP (BVCI=%u) Tx BVC-UNBLOCK\n", bctx->bvci); + LOGBSSGP(bctx->bvci, bctx->nsei, LOGL_NOTICE, "Tx BVC-UNBLOCK\n"); msgb_nsei(msg) = bctx->nsei; msgb_bvci(msg) = 0; /* Signalling */ @@ -296,8 +291,7 @@ (struct bssgp_normal_hdr *) msgb_put(msg, sizeof(*bgph)); uint16_t _bvci = osmo_htons(bvci); - LOGP(DBSSGP, LOGL_NOTICE, "BSSGP (BVCI=%u) Tx BVC-RESET " - "CAUSE=%s\n", bvci, bssgp_cause_str(cause)); + LOGBSSGP(bvci, bctx->nsei, LOGL_NOTICE, "Tx BVC-RESET CAUSE=%s\n", bssgp_cause_str(cause)); msgb_nsei(msg) = bctx->nsei; msgb_bvci(msg) = 0; /* Signalling */ diff --git a/src/gb/gprs_bssgp_util.c b/src/gb/gprs_bssgp_util.c index 95bf8285..fdc4868 100644 --- a/src/gb/gprs_bssgp_util.c +++ b/src/gb/gprs_bssgp_util.c @@ -216,7 +216,7 @@ /* Chapter 10.4.14: Status */ int bssgp_tx_status(uint8_t cause, uint16_t *bvci, struct msgb *orig_msg) { - uint16_t nsei = msgb_nsei(orig_msg); + uint16_t nsei = msgb_nsei(orig_msg), b = bvci ? *bvci : 0; struct msgb *msg = bssgp_msgb_alloc(); struct bssgp_normal_hdr *bgph = (struct bssgp_normal_hdr *) msgb_put(msg, sizeof(*bgph)); @@ -225,18 +225,15 @@ cause is either "BVCI blocked" or "BVCI unknown" */ if (cause == BSSGP_CAUSE_UNKNOWN_BVCI || cause == BSSGP_CAUSE_BVCI_BLOCKED) { if (bvci == NULL) - LOGP(DBSSGP, LOGL_ERROR, "BSSGP Tx STATUS, cause=%s: " - "missing conditional BVCI\n", - bssgp_cause_str(cause)); + LOGBSSGP(b, nsei, LOGL_ERROR, "Tx STATUS, cause=%s: missing conditional BVCI\n", + bssgp_cause_str(cause)); } else { if (bvci != NULL) - LOGP(DBSSGP, LOGL_ERROR, "BSSGP Tx STATUS, cause=%s: " - "unexpected conditional BVCI\n", - bssgp_cause_str(cause)); + LOGBSSGP(b, nsei, LOGL_ERROR, "Tx STATUS, cause=%s: unexpected conditional BVCI\n", + bssgp_cause_str(cause)); } - LOGP(DBSSGP, LOGL_NOTICE, "BSSGP BVCI=%u Tx STATUS, cause=%s\n", - bvci ? *bvci : 0, bssgp_cause_str(cause)); + LOGBSSGP(b, nsei, LOGL_NOTICE, "Tx STATUS, cause=%s\n", bssgp_cause_str(cause)); msgb_nsei(msg) = nsei; msgb_bvci(msg) = 0; -- To view, visit https://gerrit.osmocom.org/13205 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: libosmocore Gerrit-Branch: master Gerrit-MessageType: newchange Gerrit-Change-Id: I8cd2bdb12aa3a5a7dfcb7a85fee35ec3a3a9820b Gerrit-Change-Number: 13205 Gerrit-PatchSet: 1 Gerrit-Owner: Max <msuraev at sysmocom.de> -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20190311/8c64d8a2/attachment.htm>