<p>Harald Welte <strong>merged</strong> this change.</p><p><a href="https://gerrit.osmocom.org/14111">View Change</a></p><div style="white-space:pre-wrap">Approvals:
  Harald Welte: Looks good to me, approved
  Vadim Yanitskiy: Looks good to me, but someone else must approve
  osmith: Looks good to me, but someone else must approve
  Jenkins Builder: Verified

</div><pre style="font-family: monospace,monospace; white-space: pre-wrap;">Use LOGPLCHAN whenever possible<br><br>There's no point in open-coding what LOGPLCHAN was created to do:<br>Log some event while stating the name of the logical channel.<br><br>Change-Id: I6913ac8fb543811126b85a54118333155c03bc03<br>---<br>M src/common/handover.c<br>M src/common/l1sap.c<br>M src/common/msg_utils.c<br>M src/common/oml.c<br>M src/common/rsl.c<br>M src/common/sysinfo.c<br>6 files changed, 150 insertions(+), 210 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/src/common/handover.c b/src/common/handover.c</span><br><span>index 54b131f..63a9832 100644</span><br><span>--- a/src/common/handover.c</span><br><span>+++ b/src/common/handover.c</span><br><span>@@ -44,9 +44,7 @@</span><br><span>    if (!msg)</span><br><span>            return -ENOMEM;</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-     LOGP(DHO, LOGL_INFO,</span><br><span style="color: hsl(0, 100%, 40%);">-            "%s Sending PHYSICAL INFORMATION to MS.\n",</span><br><span style="color: hsl(0, 100%, 40%);">-           gsm_lchan_name(lchan));</span><br><span style="color: hsl(120, 100%, 40%);">+       LOGPLCHAN(lchan, DHO, LOGL_INFO, "Sending PHYSICAL INFORMATION to MS.\n");</span><br><span> </span><br><span>     /* Build RSL UNITDATA REQUEST message with 04.08 PHYS INFO */</span><br><span>        msg->l3h = msg->data;</span><br><span>@@ -68,20 +66,18 @@</span><br><span>    struct gsm_lchan *lchan = data;</span><br><span>      struct gsm_bts *bts = lchan->ts->trx->bts;</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">- LOGP(DHO, LOGL_INFO, "%s T3105 timeout (%d resends left)\n",</span><br><span style="color: hsl(0, 100%, 40%);">-          gsm_lchan_name(lchan), bts->ny1 - lchan->ho.phys_info_count);</span><br><span style="color: hsl(120, 100%, 40%);">+   LOGPLCHAN(lchan, DHO, LOGL_INFO, "T3105 timeout (%d resends left)\n",</span><br><span style="color: hsl(120, 100%, 40%);">+                 bts->ny1 - lchan->ho.phys_info_count);</span><br><span> </span><br><span>   if (lchan->state != LCHAN_S_ACTIVE) {</span><br><span style="color: hsl(0, 100%, 40%);">-                LOGP(DHO, LOGL_NOTICE,</span><br><span style="color: hsl(0, 100%, 40%);">-                  "%s is in not active. It is in state %s. Ignoring\n",</span><br><span style="color: hsl(0, 100%, 40%);">-                 gsm_lchan_name(lchan), gsm_lchans_name(lchan->state));</span><br><span style="color: hsl(120, 100%, 40%);">+             LOGPLCHAN(lchan, DHO, LOGL_NOTICE, "is in not active. It is in state %s. Ignoring\n",</span><br><span style="color: hsl(120, 100%, 40%);">+                         gsm_lchans_name(lchan->state));</span><br><span>                 return;</span><br><span>      }</span><br><span> </span><br><span>        if (lchan->ho.phys_info_count >= bts->ny1) {</span><br><span>                /* HO Abort */</span><br><span style="color: hsl(0, 100%, 40%);">-          LOGP(DHO, LOGL_NOTICE, "%s NY1 reached, sending CONNection "</span><br><span style="color: hsl(0, 100%, 40%);">-                  "FAILure to BSC.\n", gsm_lchan_name(lchan));</span><br><span style="color: hsl(120, 100%, 40%);">+                LOGPLCHAN(lchan, DHO, LOGL_NOTICE, "NY1 reached, sending CONNection FAILure to BSC.\n");</span><br><span>           rsl_tx_conn_fail(lchan, RSL_ERR_HANDOVER_ACC_FAIL);</span><br><span>          return;</span><br><span>      }</span><br><span>@@ -98,23 +94,21 @@</span><br><span> </span><br><span>  /* Ignore invalid handover ref */</span><br><span>    if (lchan->ho.ref != ra) {</span><br><span style="color: hsl(0, 100%, 40%);">-           LOGP(DHO, LOGL_INFO, "%s RACH on dedicated channel received, but "</span><br><span style="color: hsl(0, 100%, 40%);">-                    "ra=0x%02x != expected ref=0x%02x. (This is no bug)\n",</span><br><span style="color: hsl(0, 100%, 40%);">-                       gsm_lchan_name(lchan), ra, lchan->ho.ref);</span><br><span style="color: hsl(120, 100%, 40%);">+         LOGPLCHAN(lchan, DHO, LOGL_INFO, "RACH on dedicated channel received, but "</span><br><span style="color: hsl(120, 100%, 40%);">+                   "ra=0x%02x != expected ref=0x%02x. (This is no bug)\n", ra, lchan->ho.ref);</span><br><span>           return;</span><br><span>      }</span><br><span> </span><br><span>        /* Ignore handover on channels other than DCCH and SACCH */</span><br><span>  if (lchan->type != GSM_LCHAN_SDCCH && lchan->type != GSM_LCHAN_TCH_H &&</span><br><span>                lchan->type != GSM_LCHAN_TCH_F) {</span><br><span style="color: hsl(0, 100%, 40%);">-            LOGP(DHO, LOGL_ERROR, "%s handover RACH received on %s?!\n",</span><br><span style="color: hsl(0, 100%, 40%);">-               gsm_lchan_name(lchan), gsm_lchant_name(lchan->type));</span><br><span style="color: hsl(120, 100%, 40%);">+         LOGPLCHAN(lchan, DHO, LOGL_ERROR, "handover RACH received on %s?!\n",</span><br><span style="color: hsl(120, 100%, 40%);">+                         gsm_lchant_name(lchan->type));</span><br><span>          return;</span><br><span>      }</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-   LOGP(DHO, LOGL_NOTICE,</span><br><span style="color: hsl(0, 100%, 40%);">-       "%s RACH on dedicated channel type %s received with TA=%u, ref=%u\n",</span><br><span style="color: hsl(0, 100%, 40%);">-         gsm_lchan_name(lchan), gsm_lchant_name(lchan->type), acc_delay, ra);</span><br><span style="color: hsl(120, 100%, 40%);">+  LOGPLCHAN(lchan, DHO, LOGL_NOTICE, "RACH on dedicated channel type %s received with "</span><br><span style="color: hsl(120, 100%, 40%);">+                 "TA=%u, ref=%u\n", gsm_lchant_name(lchan->type), acc_delay, ra);</span><br><span> </span><br><span>  /* Set timing advance */</span><br><span>     lchan->rqd_ta = acc_delay;</span><br><span>@@ -122,9 +116,7 @@</span><br><span>  /* Stop handover detection, wait for valid frame */</span><br><span>  lchan->ho.active = HANDOVER_WAIT_FRAME;</span><br><span>   if (l1sap_chan_modify(lchan->ts->trx, gsm_lchan2chan_nr(lchan)) != 0) {</span><br><span style="color: hsl(0, 100%, 40%);">-           LOGP(DHO, LOGL_ERROR,</span><br><span style="color: hsl(0, 100%, 40%);">-                   "%s failed to modify channel after handover\n",</span><br><span style="color: hsl(0, 100%, 40%);">-                       gsm_lchan_name(lchan));</span><br><span style="color: hsl(120, 100%, 40%);">+               LOGPLCHAN(lchan, DHO, LOGL_ERROR, "failed to modify channel after handover\n");</span><br><span>            rsl_tx_conn_fail(lchan, RSL_ERR_HANDOVER_ACC_FAIL);</span><br><span>          return;</span><br><span>      }</span><br><span>@@ -137,9 +129,7 @@</span><br><span>      ho_tx_phys_info(lchan);</span><br><span> </span><br><span>  /* Start T3105 */</span><br><span style="color: hsl(0, 100%, 40%);">-       LOGP(DHO, LOGL_DEBUG,</span><br><span style="color: hsl(0, 100%, 40%);">-           "%s Starting T3105 with %u ms\n",</span><br><span style="color: hsl(0, 100%, 40%);">-             gsm_lchan_name(lchan), bts->t3105_ms);</span><br><span style="color: hsl(120, 100%, 40%);">+     LOGPLCHAN(lchan, DHO, LOGL_DEBUG, "Starting T3105 with %u ms\n", bts->t3105_ms);</span><br><span>        lchan->ho.t3105.cb = ho_t3105_cb;</span><br><span>         lchan->ho.t3105.data = lchan;</span><br><span>     osmo_timer_schedule(&lchan->ho.t3105, 0, bts->t3105_ms * 1000);</span><br><span>@@ -148,8 +138,7 @@</span><br><span> /* received frist valid data frame on dedicated channel */</span><br><span> void handover_frame(struct gsm_lchan *lchan)</span><br><span> {</span><br><span style="color: hsl(0, 100%, 40%);">-      LOGP(DHO, LOGL_INFO,</span><br><span style="color: hsl(0, 100%, 40%);">-            "%s First valid frame detected\n", gsm_lchan_name(lchan));</span><br><span style="color: hsl(120, 100%, 40%);">+  LOGPLCHAN(lchan, DHO, LOGL_INFO, "First valid frame detected\n");</span><br><span>  handover_reset(lchan);</span><br><span> }</span><br><span> </span><br><span>diff --git a/src/common/l1sap.c b/src/common/l1sap.c</span><br><span>index 247763e..f31d822 100644</span><br><span>--- a/src/common/l1sap.c</span><br><span>+++ b/src/common/l1sap.c</span><br><span>@@ -114,9 +114,8 @@</span><br><span>   struct gsm_lchan *lchan = get_lchan_by_chan_nr(trx, chan_nr);</span><br><span> </span><br><span>    if (lchan && lchan->state != LCHAN_S_ACTIVE) {</span><br><span style="color: hsl(0, 100%, 40%);">-               LOGP(DL1P, LOGL_NOTICE, "%s: assuming active lchan, but "</span><br><span style="color: hsl(0, 100%, 40%);">-                  "state is %s\n", gsm_lchan_name(lchan),</span><br><span style="color: hsl(0, 100%, 40%);">-               gsm_lchans_name(lchan->state));</span><br><span style="color: hsl(120, 100%, 40%);">+               LOGPLCHAN(lchan, DL1P, LOGL_NOTICE, "assuming active lchan, but state is %s\n",</span><br><span style="color: hsl(120, 100%, 40%);">+                       gsm_lchans_name(lchan->state));</span><br><span>                 return NULL;</span><br><span>         }</span><br><span>    return lchan;</span><br><span>@@ -139,9 +138,9 @@</span><br><span>          r -= r % GSM_RTP_DURATION;</span><br><span> </span><br><span>               if (r != GSM_RTP_DURATION)</span><br><span style="color: hsl(0, 100%, 40%);">-                      LOGP(DRTP, LOGL_ERROR, "RTP clock out of sync with lower layer:"</span><br><span style="color: hsl(0, 100%, 40%);">-                              " %"PRIu32" vs %d (%"PRIu32"->%"PRIu32")\n",</span><br><span style="color: hsl(0, 100%, 40%);">-                         r, GSM_RTP_DURATION, lchan->tch.last_fn, fn);</span><br><span style="color: hsl(120, 100%, 40%);">+                      LOGPLCHAN(lchan, DRTP, LOGL_ERROR, "RTP clock out of sync with lower layer:"</span><br><span style="color: hsl(120, 100%, 40%);">+                                  " %"PRIu32" vs %d (%"PRIu32"->%"PRIu32")\n",</span><br><span style="color: hsl(120, 100%, 40%);">+                               r, GSM_RTP_DURATION, lchan->tch.last_fn, fn);</span><br><span>   }</span><br><span>    return GSM_RTP_DURATION;</span><br><span> }</span><br><span>@@ -183,8 +182,7 @@</span><br><span> {</span><br><span>     struct osmo_phsap_prim *l1sap;</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-      LOGP(DL1P, LOGL_DEBUG, "%s Rx -> RTP: %s\n",</span><br><span style="color: hsl(0, 100%, 40%);">-            gsm_lchan_name(lchan), osmo_hexdump(rmsg->data, rmsg->len));</span><br><span style="color: hsl(120, 100%, 40%);">+       LOGPLCHAN(lchan, DL1P, LOGL_DEBUG, "Rx -> RTP: %s\n", osmo_hexdump(rmsg->data, rmsg->len));</span><br><span> </span><br><span>   rmsg->l2h = rmsg->data;</span><br><span>        rmsg->l1h = msgb_push(rmsg, sizeof(*l1sap));</span><br><span>@@ -530,8 +528,8 @@</span><br><span>                return;</span><br><span> </span><br><span>  if (data + 63 > 255) { /* According to 3GPP TS 48.058 ยง9.3.37 Timing Offset field cannot exceed 255 */</span><br><span style="color: hsl(0, 100%, 40%);">-              LOGP(DL1P, LOGL_ERROR, "Attempting to set invalid Timing Offset value %d (MS TO = %u)!\n",</span><br><span style="color: hsl(0, 100%, 40%);">-                 data, set_ms_to);</span><br><span style="color: hsl(120, 100%, 40%);">+                LOGPLCHAN(lchan, DL1P, LOGL_ERROR, "Attempting to set invalid Timing Offset value "</span><br><span style="color: hsl(120, 100%, 40%);">+                   "%d (MS TO = %u)!\n", data, set_ms_to);</span><br><span>          return;</span><br><span>      }</span><br><span> </span><br><span>@@ -617,12 +615,10 @@</span><br><span>        struct osmo_phsap_prim *l1sap,</span><br><span>       struct info_act_cnf_param *info_act_cnf)</span><br><span> {</span><br><span style="color: hsl(0, 100%, 40%);">-   struct gsm_lchan *lchan;</span><br><span style="color: hsl(120, 100%, 40%);">+      struct gsm_lchan *lchan = get_lchan_by_chan_nr(trx, info_act_cnf->chan_nr);</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-      LOGP(DL1C, LOGL_INFO, "activate confirm chan_nr=%s trx=%d\n",</span><br><span style="color: hsl(0, 100%, 40%);">-         rsl_chan_nr_str(info_act_cnf->chan_nr), trx->nr);</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">- lchan = get_lchan_by_chan_nr(trx, info_act_cnf->chan_nr);</span><br><span style="color: hsl(120, 100%, 40%);">+  LOGPLCHAN(lchan, DL1C, LOGL_INFO, "activate confirm chan_nr=%s trx=%d\n",</span><br><span style="color: hsl(120, 100%, 40%);">+             rsl_chan_nr_str(info_act_cnf->chan_nr), trx->nr);</span><br><span> </span><br><span>        rsl_tx_chan_act_acknack(lchan, info_act_cnf->cause);</span><br><span> </span><br><span>@@ -642,12 +638,10 @@</span><br><span>  struct osmo_phsap_prim *l1sap,</span><br><span>       struct info_act_cnf_param *info_act_cnf)</span><br><span> {</span><br><span style="color: hsl(0, 100%, 40%);">-   struct gsm_lchan *lchan;</span><br><span style="color: hsl(120, 100%, 40%);">+      struct gsm_lchan *lchan = get_lchan_by_chan_nr(trx, info_act_cnf->chan_nr);</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-      LOGP(DL1C, LOGL_INFO, "deactivate confirm chan_nr=%s trx=%d\n",</span><br><span style="color: hsl(0, 100%, 40%);">-            rsl_chan_nr_str(info_act_cnf->chan_nr), trx->nr);</span><br><span style="color: hsl(0, 100%, 40%);">-</span><br><span style="color: hsl(0, 100%, 40%);">-    lchan = get_lchan_by_chan_nr(trx, info_act_cnf->chan_nr);</span><br><span style="color: hsl(120, 100%, 40%);">+  LOGPLCHAN(lchan, DL1C, LOGL_INFO, "deactivate confirm chan_nr=%s trx=%d\n",</span><br><span style="color: hsl(120, 100%, 40%);">+           rsl_chan_nr_str(info_act_cnf->chan_nr), trx->nr);</span><br><span> </span><br><span>        rsl_tx_rf_rel_ack(lchan);</span><br><span> </span><br><span>@@ -894,9 +888,9 @@</span><br><span>   * don't support it. */</span><br><span>  if(lchan->tch_mode == GSM48_CMODE_SPEECH_AMR &&</span><br><span>           !rtppayload_is_octet_aligned(resp_msg->data, resp_msg->len)) {</span><br><span style="color: hsl(0, 100%, 40%);">-            LOGP(DL1P, LOGL_NOTICE,</span><br><span style="color: hsl(0, 100%, 40%);">-                 "%s RTP->L1: Dropping unexpected AMR encoding (bw-efficient?) %s\n",</span><br><span style="color: hsl(0, 100%, 40%);">-                       gsm_lchan_name(lchan), osmo_hexdump(resp_msg->data, resp_msg->len));</span><br><span style="color: hsl(120, 100%, 40%);">+            LOGPLCHAN(lchan, DL1P, LOGL_NOTICE,</span><br><span style="color: hsl(120, 100%, 40%);">+                     "RTP->L1: Dropping unexpected AMR encoding (bw-efficient?) %s\n",</span><br><span style="color: hsl(120, 100%, 40%);">+                        osmo_hexdump(resp_msg->data, resp_msg->len));</span><br><span>                return false;</span><br><span>        }</span><br><span>    return true;</span><br><span>@@ -1469,8 +1463,8 @@</span><br><span>         struct gsm48_chan_desc *cd;</span><br><span>  int rc;</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-     LOGP(DL1C, LOGL_INFO, "activating channel chan_nr=%s trx=%d\n",</span><br><span style="color: hsl(0, 100%, 40%);">-               rsl_chan_nr_str(chan_nr), trx->nr);</span><br><span style="color: hsl(120, 100%, 40%);">+        LOGPLCHAN(lchan, DL1C, LOGL_INFO, "activating channel chan_nr=%s trx=%d\n",</span><br><span style="color: hsl(120, 100%, 40%);">+           rsl_chan_nr_str(chan_nr), trx->nr);</span><br><span> </span><br><span>         /* osmo-pcu calls this without a valid 'tp' parameter, so we</span><br><span>          * need to make sure ew don't crash here */</span><br><span>@@ -1483,8 +1477,8 @@</span><br><span>               * one one TRX, so we need to make sure not to activate</span><br><span>               * channels with a different TSC!! */</span><br><span>                if (cd->h0.tsc != (lchan->ts->trx->bts->bsic & 7)) {</span><br><span style="color: hsl(0, 100%, 40%);">-                 LOGP(DL1C, LOGL_ERROR, "lchan TSC %u != BSIC-TSC %u\n",</span><br><span style="color: hsl(0, 100%, 40%);">-                               cd->h0.tsc, lchan->ts->trx->bts->bsic & 7);</span><br><span style="color: hsl(120, 100%, 40%);">+                        LOGPLCHAN(lchan, DL1C, LOGL_ERROR, "lchan TSC %u != BSIC-TSC %u\n",</span><br><span style="color: hsl(120, 100%, 40%);">+                           cd->h0.tsc, lchan->ts->trx->bts->bsic & 7);</span><br><span>                     return -RSL_ERR_SERV_OPT_UNIMPL;</span><br><span>             }</span><br><span>    }</span><br><span>@@ -1517,8 +1511,8 @@</span><br><span> int l1sap_chan_rel(struct gsm_bts_trx *trx, uint8_t chan_nr)</span><br><span> {</span><br><span>       struct gsm_lchan *lchan = get_lchan_by_chan_nr(trx, chan_nr);</span><br><span style="color: hsl(0, 100%, 40%);">-   LOGP(DL1C, LOGL_INFO, "deactivating channel chan_nr=%s trx=%d\n",</span><br><span style="color: hsl(0, 100%, 40%);">-             rsl_chan_nr_str(chan_nr), trx->nr);</span><br><span style="color: hsl(120, 100%, 40%);">+        LOGPLCHAN(lchan, DL1C, LOGL_INFO, "deactivating channel chan_nr=%s trx=%d\n",</span><br><span style="color: hsl(120, 100%, 40%);">+                 rsl_chan_nr_str(chan_nr), trx->nr);</span><br><span> </span><br><span>         if (lchan->tch.dtx.dl_amr_fsm) {</span><br><span>          osmo_fsm_inst_free(lchan->tch.dtx.dl_amr_fsm);</span><br><span>@@ -1533,8 +1527,8 @@</span><br><span> {</span><br><span>       struct gsm_lchan *lchan = get_lchan_by_chan_nr(trx, chan_nr);</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-       LOGP(DL1C, LOGL_INFO, "deactivating sacch chan_nr=%s trx=%d\n",</span><br><span style="color: hsl(0, 100%, 40%);">-               rsl_chan_nr_str(chan_nr), trx->nr);</span><br><span style="color: hsl(120, 100%, 40%);">+        LOGPLCHAN(lchan, DL1C, LOGL_INFO, "deactivating sacch chan_nr=%s trx=%d\n",</span><br><span style="color: hsl(120, 100%, 40%);">+           rsl_chan_nr_str(chan_nr), trx->nr);</span><br><span> </span><br><span>         lchan->sacch_deact = 1;</span><br><span> </span><br><span>diff --git a/src/common/msg_utils.c b/src/common/msg_utils.c</span><br><span>index f936c98..52b0566 100644</span><br><span>--- a/src/common/msg_utils.c</span><br><span>+++ b/src/common/msg_utils.c</span><br><span>@@ -203,8 +203,8 @@</span><br><span> </span><br><span>        rc = osmo_amr_rtp_dec(rtp_pl, rtp_pl_len, &cmr, &cmi, &ft, &bfi, &sti);</span><br><span>  if (rc < 0) {</span><br><span style="color: hsl(0, 100%, 40%);">-                LOGP(DRTP, LOGL_ERROR, "failed to decode AMR RTP (length %zu, "</span><br><span style="color: hsl(0, 100%, 40%);">-                    "%p)\n", rtp_pl_len, rtp_pl);</span><br><span style="color: hsl(120, 100%, 40%);">+          LOGPLCHAN(lchan, DRTP, LOGL_ERROR, "failed to decode AMR RTP (length %zu, "</span><br><span style="color: hsl(120, 100%, 40%);">+                   "%p)\n", rtp_pl_len, rtp_pl);</span><br><span>            return rc;</span><br><span>   }</span><br><span> </span><br><span>@@ -274,7 +274,7 @@</span><br><span>  }</span><br><span> </span><br><span>        if (ft != AMR_NO_DATA) {</span><br><span style="color: hsl(0, 100%, 40%);">-                LOGP(DRTP, LOGL_ERROR, "unsupported AMR FT 0x%02x\n", ft);</span><br><span style="color: hsl(120, 100%, 40%);">+          LOGPLCHAN(lchan, DRTP, LOGL_ERROR, "unsupported AMR FT 0x%02x\n", ft);</span><br><span>             return -ENOTSUP;</span><br><span>     }</span><br><span> </span><br><span>@@ -505,9 +505,9 @@</span><br><span>          return lchan->tch.dtx.len + 1;</span><br><span>    }</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-   LOGP(DL1C, LOGL_DEBUG, "Have to send %s frame on TCH but SID buffer "</span><br><span style="color: hsl(0, 100%, 40%);">-      "is empty - sent nothing\n",</span><br><span style="color: hsl(0, 100%, 40%);">-          get_value_string(gsm48_chan_mode_names, lchan->tch_mode));</span><br><span style="color: hsl(120, 100%, 40%);">+    LOGPLCHAN(lchan, DL1C, LOGL_DEBUG, "Have to send %s frame on TCH but SID buffer "</span><br><span style="color: hsl(120, 100%, 40%);">+             "is empty - sent nothing\n",</span><br><span style="color: hsl(120, 100%, 40%);">+                get_value_string(gsm48_chan_mode_names, lchan->tch_mode));</span><br><span> </span><br><span>  return 0;</span><br><span> }</span><br><span>diff --git a/src/common/oml.c b/src/common/oml.c</span><br><span>index 260dfc4..186c2a2 100644</span><br><span>--- a/src/common/oml.c</span><br><span>+++ b/src/common/oml.c</span><br><span>@@ -527,9 +527,8 @@</span><br><span>            return -1;</span><br><span>   }</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-   DEBUGP(DLLAPD, "%s: Setting T200 D0=%u, D3=%u, S0=%u, S3=%u"</span><br><span style="color: hsl(0, 100%, 40%);">-          "(all in ms)\n", gsm_lchan_name(lchan), t200_dcch,</span><br><span style="color: hsl(0, 100%, 40%);">-            t200_dcch_sapi3, t200_acch, t200_acch_sapi3);</span><br><span style="color: hsl(120, 100%, 40%);">+ LOGPLCHAN(lchan, DLLAPD, LOGL_DEBUG, "Setting T200 D0=%u, D3=%u, S0=%u, S3=%u (all in ms)\n",</span><br><span style="color: hsl(120, 100%, 40%);">+                 t200_dcch, t200_dcch_sapi3, t200_acch, t200_acch_sapi3);</span><br><span> </span><br><span>       dl_set_t200(&lc->lapdm_dcch.datalink[DL_SAPI0], t200_dcch);</span><br><span>   dl_set_t200(&lc->lapdm_dcch.datalink[DL_SAPI3], t200_dcch_sapi3);</span><br><span>diff --git a/src/common/rsl.c b/src/common/rsl.c</span><br><span>index af0b72d..e6fbe6f 100644</span><br><span>--- a/src/common/rsl.c</span><br><span>+++ b/src/common/rsl.c</span><br><span>@@ -695,8 +695,7 @@</span><br><span>          switch (lchan->ts->pchan) {</span><br><span>            case GSM_PCHAN_TCH_F_TCH_H_PDCH:</span><br><span>                     if (lchan->ts->dyn.pchan_is != GSM_PCHAN_PDCH) {</span><br><span style="color: hsl(0, 100%, 40%);">-                          LOGP(DRSL, LOGL_ERROR,</span><br><span style="color: hsl(0, 100%, 40%);">-                               "%s (ss=%d) PDCH release: not in PDCH mode\n",</span><br><span style="color: hsl(120, 100%, 40%);">+                         LOGP(DRSL, LOGL_ERROR, "%s (ss=%d) PDCH release: not in PDCH mode\n",</span><br><span>                                   gsm_ts_and_pchan_name(lchan->ts), lchan->nr);</span><br><span>                             /* well, what to do about it ... carry on and hope it's fine. */</span><br><span>                         }</span><br><span>@@ -712,8 +711,8 @@</span><br><span>                      send_rel_ack = false;</span><br><span>                        break;</span><br><span>               default:</span><br><span style="color: hsl(0, 100%, 40%);">-                        LOGP(DRSL, LOGL_ERROR, "%s PCU rel ack for unexpected lchan kind %s\n",</span><br><span style="color: hsl(0, 100%, 40%);">-                            gsm_lchan_name(lchan), gsm_pchan_name(lchan->rel_act_kind));</span><br><span style="color: hsl(120, 100%, 40%);">+                  LOGPLCHAN(lchan, DRSL, LOGL_ERROR, "PCU rel ack for unexpected lchan kind %s\n",</span><br><span style="color: hsl(120, 100%, 40%);">+                              gsm_pchan_name(lchan->rel_act_kind));</span><br><span>                   /* Release certainly was not requested by the BSC via RSL, so don't ack. */</span><br><span>                      send_rel_ack = false;</span><br><span>                        break;</span><br><span>@@ -728,8 +727,7 @@</span><br><span>         }</span><br><span> </span><br><span>        if (!send_rel_ack) {</span><br><span style="color: hsl(0, 100%, 40%);">-            LOGP(DRSL, LOGL_NOTICE, "%s not sending REL ACK\n",</span><br><span style="color: hsl(0, 100%, 40%);">-                   gsm_lchan_name(lchan));</span><br><span style="color: hsl(120, 100%, 40%);">+               LOGPLCHAN(lchan, DRSL, LOGL_NOTICE, "%s not sending REL ACK\n", gsm_lchan_name(lchan));</span><br><span>            return 0;</span><br><span>    }</span><br><span> </span><br><span>@@ -779,7 +777,7 @@</span><br><span>  struct msgb *msg;</span><br><span>    uint8_t chan_nr = gsm_lchan2chan_nr(lchan);</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">- LOGP(DRSL, LOGL_INFO, "Sending HANDOver DETect\n");</span><br><span style="color: hsl(120, 100%, 40%);">+ LOGPLCHAN(lchan, DRSL, LOGL_INFO, "Sending HANDOver DETect\n");</span><br><span> </span><br><span>        msg = rsl_msgb_alloc(sizeof(struct abis_rsl_dchan_hdr));</span><br><span>     if (!msg)</span><br><span>@@ -826,8 +824,8 @@</span><br><span> int rsl_tx_chan_act_acknack(struct gsm_lchan *lchan, uint8_t cause)</span><br><span> {</span><br><span>  if (lchan->rel_act_kind != LCHAN_REL_ACT_RSL) {</span><br><span style="color: hsl(0, 100%, 40%);">-              LOGP(DRSL, LOGL_NOTICE, "%s not sending CHAN ACT %s\n",</span><br><span style="color: hsl(0, 100%, 40%);">-                       gsm_lchan_name(lchan), cause ? "NACK" : "ACK");</span><br><span style="color: hsl(120, 100%, 40%);">+           LOGPLCHAN(lchan, DRSL, LOGL_NOTICE, "not sending CHAN ACT %s\n",</span><br><span style="color: hsl(120, 100%, 40%);">+                      cause ? "NACK" : "ACK");</span><br><span>               return 0;</span><br><span>    }</span><br><span> </span><br><span>@@ -842,9 +840,7 @@</span><br><span>  struct msgb *msg;</span><br><span>    uint8_t chan_nr = gsm_lchan2chan_nr(lchan);</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">- LOGP(DRSL, LOGL_NOTICE,</span><br><span style="color: hsl(0, 100%, 40%);">-         "%s Sending Connection Failure: cause = 0x%02x\n",</span><br><span style="color: hsl(0, 100%, 40%);">-            gsm_lchan_name(lchan), cause);</span><br><span style="color: hsl(120, 100%, 40%);">+        LOGPLCHAN(lchan, DRSL, LOGL_NOTICE, "Sending Connection Failure: cause = 0x%02x\n", cause);</span><br><span> </span><br><span>    msg = rsl_msgb_alloc(sizeof(struct abis_rsl_dchan_hdr));</span><br><span>     if (!msg)</span><br><span>@@ -920,15 +916,13 @@</span><br><span>    /* check if the encryption algorithm sent by BSC is supported! */</span><br><span>    rc = bts_supports_cipher(bts, *val);</span><br><span>         if (rc != 1) {</span><br><span style="color: hsl(0, 100%, 40%);">-          LOGP(DRSL, LOGL_ERROR, "%s: BTS doesn't support cipher %s\n",</span><br><span style="color: hsl(0, 100%, 40%);">-                     gsm_lchan_name(lchan), ciph_name);</span><br><span style="color: hsl(120, 100%, 40%);">+            LOGPLCHAN(lchan, DRSL, LOGL_ERROR, "BTS doesn't support cipher %s\n", ciph_name);</span><br><span>              return -EINVAL;</span><br><span>      }</span><br><span> </span><br><span>        /* length can be '1' in case of no ciphering */</span><br><span>      if (len < 1) {</span><br><span style="color: hsl(0, 100%, 40%);">-               LOGP(DRSL, LOGL_ERROR, "%s: Encryption Info cannot have len=%d\n",</span><br><span style="color: hsl(0, 100%, 40%);">-                    gsm_lchan_name(lchan), len);</span><br><span style="color: hsl(120, 100%, 40%);">+          LOGPLCHAN(lchan, DRSL, LOGL_ERROR, "Encryption Info cannot have len=%d\n", len);</span><br><span>           return -EINVAL;</span><br><span>      }</span><br><span> </span><br><span>@@ -937,8 +931,7 @@</span><br><span>  if (lchan->encr.key_len > sizeof(lchan->encr.key))</span><br><span>          lchan->encr.key_len = sizeof(lchan->encr.key);</span><br><span>         memcpy(lchan->encr.key, val, lchan->encr.key_len);</span><br><span style="color: hsl(0, 100%, 40%);">-        DEBUGP(DRSL, "%s: Setting lchan cipher algorithm %s\n",</span><br><span style="color: hsl(0, 100%, 40%);">-               gsm_lchan_name(lchan), ciph_name);</span><br><span style="color: hsl(120, 100%, 40%);">+    LOGPLCHAN(lchan, DRSL, LOGL_DEBUG, "Setting lchan cipher algorithm %s\n", ciph_name);</span><br><span> </span><br><span>  return 0;</span><br><span> }</span><br><span>@@ -1026,9 +1019,8 @@</span><br><span>       int rc;</span><br><span> </span><br><span>  if (lchan->state != LCHAN_S_NONE) {</span><br><span style="color: hsl(0, 100%, 40%);">-          LOGP(DRSL, LOGL_ERROR,</span><br><span style="color: hsl(0, 100%, 40%);">-               "%s: error: lchan is not available, but in state: %s.\n",</span><br><span style="color: hsl(0, 100%, 40%);">-                     gsm_lchan_name(lchan), gsm_lchans_name(lchan->state));</span><br><span style="color: hsl(120, 100%, 40%);">+                LOGPLCHAN(lchan, DRSL, LOGL_ERROR, "error: lchan is not available, but in state: %s.\n",</span><br><span style="color: hsl(120, 100%, 40%);">+                      gsm_lchans_name(lchan->state));</span><br><span>                 return rsl_tx_chan_act_nack(lchan, RSL_ERR_EQUIPMENT_FAIL);</span><br><span>  }</span><br><span> </span><br><span>@@ -1050,8 +1042,8 @@</span><br><span>                }</span><br><span>    }</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-   LOGP(DRSL, LOGL_DEBUG, "%s: rx Channel Activation in state: %s.\n",</span><br><span style="color: hsl(0, 100%, 40%);">-        gsm_lchan_name(lchan), gsm_lchans_name(lchan->state));</span><br><span style="color: hsl(120, 100%, 40%);">+        LOGPLCHAN(lchan, DRSL, LOGL_DEBUG, "rx Channel Activation in state: %s.\n",</span><br><span style="color: hsl(120, 100%, 40%);">+           gsm_lchans_name(lchan->state));</span><br><span> </span><br><span>     /* Initialize channel defaults */</span><br><span>    lchan->ms_power = ms_pwr_ctl_lvl(lchan->ts->trx->bts->band, 0);</span><br><span>@@ -1062,7 +1054,7 @@</span><br><span> </span><br><span>   /* 9.3.3 Activation Type */</span><br><span>  if (!TLVP_PRESENT(&tp, RSL_IE_ACT_TYPE)) {</span><br><span style="color: hsl(0, 100%, 40%);">-          LOGP(DRSL, LOGL_NOTICE, "missing Activation Type\n");</span><br><span style="color: hsl(120, 100%, 40%);">+               LOGPLCHAN(lchan, DRSL, LOGL_NOTICE, "missing Activation Type\n");</span><br><span>          return rsl_tx_chan_act_nack(lchan, RSL_ERR_MAND_IE_ERROR);</span><br><span>   }</span><br><span>    type = *TLVP_VAL(&tp, RSL_IE_ACT_TYPE);</span><br><span>@@ -1070,7 +1062,7 @@</span><br><span>  /* 9.3.6 Channel Mode */</span><br><span>     if (type != RSL_ACT_OSMO_PDCH) {</span><br><span>             if (!TLVP_PRESENT(&tp, RSL_IE_CHAN_MODE)) {</span><br><span style="color: hsl(0, 100%, 40%);">-                 LOGP(DRSL, LOGL_NOTICE, "missing Channel Mode\n");</span><br><span style="color: hsl(120, 100%, 40%);">+                  LOGPLCHAN(lchan, DRSL, LOGL_NOTICE, "missing Channel Mode\n");</span><br><span>                     return rsl_tx_chan_act_nack(lchan, RSL_ERR_MAND_IE_ERROR);</span><br><span>           }</span><br><span>            cm = (struct rsl_ie_chan_mode *) TLVP_VAL(&tp, RSL_IE_CHAN_MODE);</span><br><span>@@ -1134,7 +1126,7 @@</span><br><span> </span><br><span>                    osmo_si = osmo_rsl2sitype(rsl_si);</span><br><span>                   if (osmo_si == SYSINFO_TYPE_NONE) {</span><br><span style="color: hsl(0, 100%, 40%);">-                             LOGP(DRSL, LOGL_NOTICE, " Rx SACCH SI 0x%02x not supported.\n", rsl_si);</span><br><span style="color: hsl(120, 100%, 40%);">+                            LOGPLCHAN(lchan, DRSL, LOGL_NOTICE, "Rx SACCH SI 0x%02x not supported.\n", rsl_si);</span><br><span>                                rsl_tx_error_report(msg->trx, RSL_ERR_IE_CONTENT, &dch->chan_nr,</span><br><span>                                               NULL, msg);</span><br><span>                              return rsl_tx_chan_act_acknack(lchan, RSL_ERR_IE_CONTENT);</span><br><span>@@ -1144,7 +1136,7 @@</span><br><span> </span><br><span>                       cur += si_len;</span><br><span>                       if (cur > val + tot_len) {</span><br><span style="color: hsl(0, 100%, 40%);">-                           LOGP(DRSL, LOGL_ERROR, "Error parsing SACCH INFO IE\n");</span><br><span style="color: hsl(120, 100%, 40%);">+                            LOGPLCHAN(lchan, DRSL, LOGL_ERROR, "Error parsing SACCH INFO IE\n");</span><br><span>                               rsl_tx_error_report(msg->trx, RSL_ERR_IE_CONTENT, &dch->chan_nr,</span><br><span>                                               NULL, msg);</span><br><span>                              return rsl_tx_chan_act_acknack(lchan, RSL_ERR_IE_CONTENT);</span><br><span>@@ -1157,7 +1149,7 @@</span><br><span>   /* 9.3.52 MultiRate Configuration */</span><br><span>         if (TLVP_PRESENT(&tp, RSL_IE_MR_CONFIG)) {</span><br><span>               if (TLVP_LEN(&tp, RSL_IE_MR_CONFIG) > sizeof(lchan->mr_bts_lv) - 1) {</span><br><span style="color: hsl(0, 100%, 40%);">-                 LOGP(DRSL, LOGL_ERROR, "Error parsing MultiRate conf IE\n");</span><br><span style="color: hsl(120, 100%, 40%);">+                        LOGPLCHAN(lchan, DRSL, LOGL_ERROR, "Error parsing MultiRate conf IE\n");</span><br><span>                   rsl_tx_error_report(msg->trx, RSL_ERR_IE_CONTENT, &dch->chan_nr, NULL, msg);</span><br><span>                       return rsl_tx_chan_act_acknack(lchan, RSL_ERR_IE_CONTENT);</span><br><span>           }</span><br><span>@@ -1172,9 +1164,8 @@</span><br><span>    /* 9.3.53 MultiRate Control */</span><br><span>       /* 9.3.54 Supported Codec Types */</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-  LOGP(DRSL, LOGL_INFO, "%s: chan_nr=%s type=0x%02x mode=%s\n",</span><br><span style="color: hsl(0, 100%, 40%);">-      gsm_lchan_name(lchan), rsl_chan_nr_str(dch->chan_nr), type,</span><br><span style="color: hsl(0, 100%, 40%);">-          gsm48_chan_mode_name(lchan->tch_mode));</span><br><span style="color: hsl(120, 100%, 40%);">+       LOGPLCHAN(lchan, DRSL, LOGL_INFO, "chan_nr=%s type=0x%02x mode=%s\n",</span><br><span style="color: hsl(120, 100%, 40%);">+                 rsl_chan_nr_str(dch->chan_nr), type, gsm48_chan_mode_name(lchan->tch_mode));</span><br><span> </span><br><span>     /* Connecting PDCH on dyn TS goes via PCU instead. */</span><br><span>        if (ts->pchan == GSM_PCHAN_TCH_F_TCH_H_PDCH</span><br><span>@@ -1362,9 +1353,8 @@</span><br><span>       struct ciph_mod_compl *cmc = data;</span><br><span>   const char *imeisv = NULL;</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-  LOGP(DRSL, LOGL_NOTICE,</span><br><span style="color: hsl(0, 100%, 40%);">-      "%s Sending FAKE CIPHERING MODE COMPLETE to BSC (Alg %u)\n",</span><br><span style="color: hsl(0, 100%, 40%);">-          gsm_lchan_name(cmc->lchan), cmc->lchan->encr.alg_id);</span><br><span style="color: hsl(120, 100%, 40%);">+   LOGPLCHAN(cmc->lchan, DRSL, LOGL_NOTICE, "Sending FAKE CIPHERING MODE COMPLETE to BSC (Alg %u)\n",</span><br><span style="color: hsl(120, 100%, 40%);">+                 cmc->lchan->encr.alg_id);</span><br><span> </span><br><span>        if (cmc->send_imeisv)</span><br><span>             imeisv = "0123456789012345";</span><br><span>@@ -1440,8 +1430,7 @@</span><br><span>       } else</span><br><span> #endif</span><br><span>     {</span><br><span style="color: hsl(0, 100%, 40%);">-       LOGP(DRSL, LOGL_INFO, "%s Fwd RSL ENCR CMD (Alg %u) to LAPDm\n",</span><br><span style="color: hsl(0, 100%, 40%);">-              gsm_lchan_name(lchan), lchan->encr.alg_id);</span><br><span style="color: hsl(120, 100%, 40%);">+        LOGPLCHAN(lchan, DRSL, LOGL_INFO, "Fwd RSL ENCR CMD (Alg %u) to LAPDm\n", lchan->encr.alg_id);</span><br><span>  /* hand it into RSLms for transmission of L3_INFO to the MS */</span><br><span>       lapdm_rslms_recvmsg(msg, &lchan->lapdm_ch);</span><br><span>   /* return 1 to make sure the msgb is not free'd */</span><br><span>@@ -1487,7 +1476,7 @@</span><br><span>       struct msgb *msg;</span><br><span>    uint8_t chan_nr = gsm_lchan2chan_nr(lchan);</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">- LOGP(DRSL, LOGL_INFO, "%s Tx MODE MODIF ACK\n", gsm_lchan_name(lchan));</span><br><span style="color: hsl(120, 100%, 40%);">+     LOGPLCHAN(lchan, DRSL, LOGL_INFO, "Tx MODE MODIF ACK\n");</span><br><span> </span><br><span>      msg = rsl_msgb_alloc(sizeof(struct abis_rsl_dchan_hdr));</span><br><span>     if (!msg)</span><br><span>@@ -1511,17 +1500,15 @@</span><br><span> </span><br><span>      /* 9.3.6 Channel Mode */</span><br><span>     if (!TLVP_PRESENT(&tp, RSL_IE_CHAN_MODE)) {</span><br><span style="color: hsl(0, 100%, 40%);">-         LOGP(DRSL, LOGL_NOTICE, "missing Channel Mode\n");</span><br><span style="color: hsl(120, 100%, 40%);">+          LOGPLCHAN(lchan, DRSL, LOGL_NOTICE, "missing Channel Mode\n");</span><br><span>             return rsl_tx_mode_modif_nack(lchan, RSL_ERR_MAND_IE_ERROR);</span><br><span>         }</span><br><span>    cm = (struct rsl_ie_chan_mode *) TLVP_VAL(&tp, RSL_IE_CHAN_MODE);</span><br><span>        lchan_tchmode_from_cmode(lchan, cm);</span><br><span> </span><br><span>     if (bts_supports_cm(lchan->ts->trx->bts, ts_pchan(lchan->ts), lchan->tch_mode) != 1) {</span><br><span style="color: hsl(0, 100%, 40%);">-           LOGP(DRSL, LOGL_ERROR,</span><br><span style="color: hsl(0, 100%, 40%);">-               "%s %s: invalid mode: %s (wrong BSC configuration?)\n",</span><br><span style="color: hsl(0, 100%, 40%);">-               gsm_ts_and_pchan_name(lchan->ts), gsm_lchan_name(lchan),</span><br><span style="color: hsl(0, 100%, 40%);">-                     gsm48_chan_mode_name(lchan->tch_mode));</span><br><span style="color: hsl(120, 100%, 40%);">+               LOGPLCHAN(lchan, DRSL, LOGL_ERROR, "%s: invalid mode: %s (wrong BSC configuration?)\n",</span><br><span style="color: hsl(120, 100%, 40%);">+                       gsm_ts_and_pchan_name(lchan->ts), gsm48_chan_mode_name(lchan->tch_mode));</span><br><span>            return rsl_tx_mode_modif_nack(lchan, RSL_ERR_SERV_OPT_UNAVAIL);</span><br><span>      }</span><br><span> </span><br><span>@@ -1541,7 +1528,7 @@</span><br><span>        /* 9.3.52 MultiRate Configuration */</span><br><span>         if (TLVP_PRESENT(&tp, RSL_IE_MR_CONFIG)) {</span><br><span>               if (TLVP_LEN(&tp, RSL_IE_MR_CONFIG) > sizeof(lchan->mr_bts_lv) - 1) {</span><br><span style="color: hsl(0, 100%, 40%);">-                 LOGP(DRSL, LOGL_ERROR, "Error parsing MultiRate conf IE\n");</span><br><span style="color: hsl(120, 100%, 40%);">+                        LOGPLCHAN(lchan, DRSL, LOGL_ERROR, "Error parsing MultiRate conf IE\n");</span><br><span>                   rsl_tx_error_report(msg->trx, RSL_ERR_IE_CONTENT, &dch->chan_nr, NULL, msg);</span><br><span>                       return rsl_tx_mode_modif_nack(lchan, RSL_ERR_IE_CONTENT);;</span><br><span>           }</span><br><span>@@ -1576,8 +1563,7 @@</span><br><span>            lchan->ms_power_ctrl.fixed = 1;</span><br><span>           lchan->ms_power_ctrl.current = pwr;</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-              LOGP(DRSL, LOGL_NOTICE, "%s forcing power to %d\n",</span><br><span style="color: hsl(0, 100%, 40%);">-                   gsm_lchan_name(lchan), lchan->ms_power_ctrl.current);</span><br><span style="color: hsl(120, 100%, 40%);">+              LOGPLCHAN(lchan, DRSL, LOGL_NOTICE, "forcing power to %d\n", lchan->ms_power_ctrl.current);</span><br><span>             bts_model_adjst_ms_pwr(lchan);</span><br><span>       }</span><br><span> </span><br><span>@@ -1596,7 +1582,7 @@</span><br><span>        rsl_tlv_parse(&tp, msgb_l3(msg), msgb_l3len(msg));</span><br><span> </span><br><span>   if (TLVP_PRESENT(&tp, RSL_IE_STARTNG_TIME)) {</span><br><span style="color: hsl(0, 100%, 40%);">-               LOGP(DRSL, LOGL_NOTICE, "Starting time not supported\n");</span><br><span style="color: hsl(120, 100%, 40%);">+           LOGPLCHAN(lchan, DRSL, LOGL_NOTICE, "Starting time not supported\n");</span><br><span>              return rsl_tx_error_report(msg->trx, RSL_ERR_SERV_OPT_UNIMPL, &dch->chan_nr, NULL, msg);</span><br><span>   }</span><br><span> </span><br><span>@@ -1610,8 +1596,7 @@</span><br><span> </span><br><span>    osmo_si = osmo_rsl2sitype(rsl_si);</span><br><span>   if (osmo_si == SYSINFO_TYPE_NONE) {</span><br><span style="color: hsl(0, 100%, 40%);">-             LOGP(DRSL, LOGL_NOTICE, "%s Rx SACCH SI 0x%02x not supported.\n",</span><br><span style="color: hsl(0, 100%, 40%);">-                     gsm_lchan_name(lchan), rsl_si);</span><br><span style="color: hsl(120, 100%, 40%);">+               LOGPLCHAN(lchan, DRSL, LOGL_NOTICE, "Rx SACCH SI 0x%02x not supported.\n", rsl_si);</span><br><span>                return rsl_tx_error_report(msg->trx, RSL_ERR_IE_CONTENT, &dch->chan_nr, NULL, msg);</span><br><span>        }</span><br><span>    if (TLVP_PRESENT(&tp, RSL_IE_L3_INFO)) {</span><br><span>@@ -1623,14 +1608,12 @@</span><br><span>               else</span><br><span>                         lchan->si.overridden &= ~(1 << osmo_si);</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-               LOGP(DRSL, LOGL_INFO, "%s Rx RSL SACCH FILLING (SI%s)\n",</span><br><span style="color: hsl(0, 100%, 40%);">-                     gsm_lchan_name(lchan),</span><br><span style="color: hsl(0, 100%, 40%);">-                  get_value_string(osmo_sitype_strs, osmo_si));</span><br><span style="color: hsl(120, 100%, 40%);">+         LOGPLCHAN(lchan, DRSL, LOGL_INFO, "Rx RSL SACCH FILLING (SI%s)\n",</span><br><span style="color: hsl(120, 100%, 40%);">+                    get_value_string(osmo_sitype_strs, osmo_si));</span><br><span>      } else {</span><br><span>             lchan->si.valid &= ~(1 << osmo_si);</span><br><span style="color: hsl(0, 100%, 40%);">-                LOGP(DRSL, LOGL_INFO, "%s Rx RSL Disabling SACCH FILLING (SI%s)\n",</span><br><span style="color: hsl(0, 100%, 40%);">-                   gsm_lchan_name(lchan),</span><br><span style="color: hsl(0, 100%, 40%);">-                  get_value_string(osmo_sitype_strs, osmo_si));</span><br><span style="color: hsl(120, 100%, 40%);">+         LOGPLCHAN(lchan, DRSL, LOGL_INFO, "Rx RSL Disabling SACCH FILLING (SI%s)\n",</span><br><span style="color: hsl(120, 100%, 40%);">+                          get_value_string(osmo_sitype_strs, osmo_si));</span><br><span>      }</span><br><span> </span><br><span>        return 0;</span><br><span>@@ -1700,8 +1683,8 @@</span><br><span> {</span><br><span>       struct msgb *nmsg;</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-  LOGP(DRSL, LOGL_NOTICE, "%s Sending RTP delete indication: cause = %s\n",</span><br><span style="color: hsl(0, 100%, 40%);">-          gsm_lchan_name(lchan), rsl_err_name(cause));</span><br><span style="color: hsl(120, 100%, 40%);">+     LOGPLCHAN(lchan, DRSL, LOGL_NOTICE, "Sending RTP delete indication: cause = %s\n",</span><br><span style="color: hsl(120, 100%, 40%);">+            rsl_err_name(cause));</span><br><span> </span><br><span>  nmsg = rsl_msgb_alloc(sizeof(struct abis_rsl_dchan_hdr));</span><br><span>    if (!nmsg)</span><br><span>@@ -1732,9 +1715,8 @@</span><br><span>           name = "MDCX";</span><br><span> </span><br><span>         ia.s_addr = htonl(lchan->abis_ip.bound_ip);</span><br><span style="color: hsl(0, 100%, 40%);">-  LOGP(DRSL, LOGL_INFO, "%s RSL Tx IPAC_%s_ACK (local %s:%u, ",</span><br><span style="color: hsl(0, 100%, 40%);">-      gsm_lchan_name(lchan), name,</span><br><span style="color: hsl(0, 100%, 40%);">-            inet_ntoa(ia), lchan->abis_ip.bound_port);</span><br><span style="color: hsl(120, 100%, 40%);">+    LOGPLCHAN(lchan, DRSL, LOGL_INFO, "RSL Tx IPAC_%s_ACK (local %s:%u, ",</span><br><span style="color: hsl(120, 100%, 40%);">+                name, inet_ntoa(ia), lchan->abis_ip.bound_port);</span><br><span>        ia.s_addr = htonl(lchan->abis_ip.connect_ip);</span><br><span>     LOGPC(DRSL, LOGL_INFO, "remote %s:%u)\n",</span><br><span>          inet_ntoa(ia), lchan->abis_ip.connect_port);</span><br><span>@@ -1773,8 +1755,7 @@</span><br><span>      struct msgb *msg;</span><br><span>    uint8_t chan_nr = gsm_lchan2chan_nr(lchan);</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">- LOGP(DRSL, LOGL_INFO, "%s RSL Tx IPAC_DLCX_ACK\n",</span><br><span style="color: hsl(0, 100%, 40%);">-            gsm_lchan_name(lchan));</span><br><span style="color: hsl(120, 100%, 40%);">+       LOGPLCHAN(lchan, DRSL, LOGL_INFO, "RSL Tx IPAC_DLCX_ACK\n");</span><br><span> </span><br><span>   msg = rsl_msgb_alloc(sizeof(struct abis_rsl_dchan_hdr));</span><br><span>     if (!msg)</span><br><span>@@ -1797,8 +1778,7 @@</span><br><span>    struct msgb *msg;</span><br><span>    uint8_t chan_nr = gsm_lchan2chan_nr(lchan);</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">- LOGP(DRSL, LOGL_INFO, "%s RSL Tx IPAC_DLCX_NACK\n",</span><br><span style="color: hsl(0, 100%, 40%);">-           gsm_lchan_name(lchan));</span><br><span style="color: hsl(120, 100%, 40%);">+       LOGPLCHAN(lchan, DRSL, LOGL_INFO, "RSL Tx IPAC_DLCX_NACK\n");</span><br><span> </span><br><span>  msg = rsl_msgb_alloc(sizeof(struct abis_rsl_dchan_hdr));</span><br><span>     if (!msg)</span><br><span>@@ -1825,8 +1805,7 @@</span><br><span>    uint8_t chan_nr = gsm_lchan2chan_nr(lchan);</span><br><span> </span><br><span>      /* FIXME: allocate new msgb and copy old over */</span><br><span style="color: hsl(0, 100%, 40%);">-        LOGP(DRSL, LOGL_NOTICE, "%s RSL Tx IPAC_BIND_NACK\n",</span><br><span style="color: hsl(0, 100%, 40%);">-         gsm_lchan_name(lchan));</span><br><span style="color: hsl(120, 100%, 40%);">+       LOGPLCHAN(lchan, DRSL, LOGL_NOTICE, "RSL Tx IPAC_BIND_NACK\n");</span><br><span> </span><br><span>        msg = rsl_msgb_alloc(sizeof(struct abis_rsl_dchan_hdr));</span><br><span>     if (!msg)</span><br><span>@@ -1926,7 +1905,7 @@</span><br><span>            return tx_ipac_XXcx_nack(lchan, RSL_ERR_MAND_IE_ERROR,</span><br><span>                                        0, dch->c.msg_type);</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-    LOGP(DRSL, LOGL_DEBUG, "%s IPAC_%s: ", gsm_lchan_name(lchan), name);</span><br><span style="color: hsl(120, 100%, 40%);">+        LOGPLCHAN(lchan, DRSL, LOGL_DEBUG, "IPAC_%s: ", name);</span><br><span>     if (TLVP_PRES_LEN(&tp, RSL_IE_IPAC_REMOTE_IP, 4)) {</span><br><span>              connect_ip = tlvp_val32_unal(&tp, RSL_IE_IPAC_REMOTE_IP);</span><br><span>                addr.s_addr = connect_ip;</span><br><span>@@ -1955,9 +1934,8 @@</span><br><span>            inc_ip_port = 1;</span><br><span> </span><br><span>         if (payload_type && payload_type2) {</span><br><span style="color: hsl(0, 100%, 40%);">-            LOGP(DRSL, LOGL_ERROR, "%s Rx RSL IPAC %s, "</span><br><span style="color: hsl(0, 100%, 40%);">-                  "RTP_PT and RTP_PT2 in same msg !?!\n",</span><br><span style="color: hsl(0, 100%, 40%);">-                       gsm_lchan_name(lchan), name);</span><br><span style="color: hsl(120, 100%, 40%);">+         LOGPLCHAN(lchan, DRSL, LOGL_ERROR, "Rx RSL IPAC %s, "</span><br><span style="color: hsl(120, 100%, 40%);">+                       "RTP_PT and RTP_PT2 in same msg !?!\n", name);</span><br><span>             return tx_ipac_XXcx_nack(lchan, RSL_ERR_MAND_IE_ERROR,</span><br><span>                                        inc_ip_port, dch->c.msg_type);</span><br><span>   }</span><br><span>@@ -1966,9 +1944,8 @@</span><br><span>            char cname[32];</span><br><span>              char *ipstr = NULL;</span><br><span>          if (lchan->abis_ip.rtp_socket) {</span><br><span style="color: hsl(0, 100%, 40%);">-                     LOGP(DRSL, LOGL_ERROR, "%s Rx RSL IPAC CRCX, "</span><br><span style="color: hsl(0, 100%, 40%);">-                                "but we already have socket!\n",</span><br><span style="color: hsl(0, 100%, 40%);">-                              gsm_lchan_name(lchan));</span><br><span style="color: hsl(120, 100%, 40%);">+                       LOGPLCHAN(lchan, DRSL, LOGL_ERROR, "Rx RSL IPAC CRCX, "</span><br><span style="color: hsl(120, 100%, 40%);">+                               "but we already have socket!\n");</span><br><span>                        return tx_ipac_XXcx_nack(lchan, RSL_ERR_RES_UNAVAIL,</span><br><span>                                                  inc_ip_port, dch->c.msg_type);</span><br><span>           }</span><br><span>@@ -1978,9 +1955,7 @@</span><br><span>            lchan->abis_ip.rtp_socket = osmo_rtp_socket_create(lchan->ts->trx,</span><br><span>                                                          OSMO_RTP_F_POLL);</span><br><span>            if (!lchan->abis_ip.rtp_socket) {</span><br><span style="color: hsl(0, 100%, 40%);">-                    LOGP(DRTP, LOGL_ERROR,</span><br><span style="color: hsl(0, 100%, 40%);">-                       "%s IPAC Failed to create RTP/RTCP sockets\n",</span><br><span style="color: hsl(0, 100%, 40%);">-                        gsm_lchan_name(lchan));</span><br><span style="color: hsl(120, 100%, 40%);">+                  LOGPLCHAN(lchan, DRTP, LOGL_ERROR, "IPAC Failed to create RTP/RTCP sockets\n");</span><br><span>                    oml_tx_failure_event_rep(&lchan->ts->trx->mo,</span><br><span>                                            OSMO_EVT_CRIT_RTP_TOUT,</span><br><span>                                              "%s IPAC Failed to create RTP/RTCP sockets",</span><br><span>@@ -1994,13 +1969,10 @@</span><br><span>                                           OSMO_RTP_P_JITBUF,</span><br><span>                                           bts->rtp_jitter_buf_ms);</span><br><span>           if (rc < 0)</span><br><span style="color: hsl(0, 100%, 40%);">-                  LOGP(DRTP, LOGL_ERROR,</span><br><span style="color: hsl(0, 100%, 40%);">-                       "%s IPAC Failed to set RTP socket parameters: %s\n",</span><br><span style="color: hsl(0, 100%, 40%);">-                          gsm_lchan_name(lchan), strerror(-rc));</span><br><span style="color: hsl(120, 100%, 40%);">+                   LOGPLCHAN(lchan, DRTP, LOGL_ERROR,</span><br><span style="color: hsl(120, 100%, 40%);">+                              "IPAC Failed to set RTP socket parameters: %s\n", strerror(-rc));</span><br><span>                else</span><br><span style="color: hsl(0, 100%, 40%);">-                    LOGP(DRTP, LOGL_INFO,</span><br><span style="color: hsl(0, 100%, 40%);">-                        "%s IPAC set RTP socket parameters: %d\n",</span><br><span style="color: hsl(0, 100%, 40%);">-                            gsm_lchan_name(lchan), rc);</span><br><span style="color: hsl(120, 100%, 40%);">+                      LOGPLCHAN(lchan, DRTP, LOGL_INFO, "IPAC set RTP socket parameters: %d\n", rc);</span><br><span>             lchan->abis_ip.rtp_socket->priv = lchan;</span><br><span>               lchan->abis_ip.rtp_socket->rx_cb = &l1sap_rtp_rx_cb;</span><br><span> </span><br><span>@@ -2020,9 +1992,7 @@</span><br><span>           }</span><br><span>            rc = bind_rtp(bts, lchan->abis_ip.rtp_socket, ipstr);</span><br><span>             if (rc < 0) {</span><br><span style="color: hsl(0, 100%, 40%);">-                        LOGP(DRTP, LOGL_ERROR,</span><br><span style="color: hsl(0, 100%, 40%);">-                       "%s IPAC Failed to bind RTP/RTCP sockets\n",</span><br><span style="color: hsl(0, 100%, 40%);">-                          gsm_lchan_name(lchan));</span><br><span style="color: hsl(120, 100%, 40%);">+                  LOGPLCHAN(lchan, DRTP, LOGL_ERROR, "IPAC Failed to bind RTP/RTCP sockets\n");</span><br><span>                      oml_tx_failure_event_rep(&lchan->ts->trx->mo,</span><br><span>                                            OSMO_EVT_CRIT_RTP_TOUT,</span><br><span>                                              "%s IPAC Failed to bind RTP/RTCP sockets",</span><br><span>@@ -2043,9 +2013,8 @@</span><br><span>        } else {</span><br><span>             /* MDCX */</span><br><span>           if (!lchan->abis_ip.rtp_socket) {</span><br><span style="color: hsl(0, 100%, 40%);">-                    LOGP(DRSL, LOGL_ERROR, "%s Rx RSL IPAC MDCX, "</span><br><span style="color: hsl(0, 100%, 40%);">-                                "but we have no RTP socket!\n",</span><br><span style="color: hsl(0, 100%, 40%);">-                               gsm_lchan_name(lchan));</span><br><span style="color: hsl(120, 100%, 40%);">+                       LOGPLCHAN(lchan, DRSL, LOGL_ERROR, "Rx RSL IPAC MDCX, "</span><br><span style="color: hsl(120, 100%, 40%);">+                               "but we have no RTP socket!\n");</span><br><span>                         return tx_ipac_XXcx_nack(lchan, RSL_ERR_RES_UNAVAIL,</span><br><span>                                                  inc_ip_port, dch->c.msg_type);</span><br><span>           }</span><br><span>@@ -2064,9 +2033,7 @@</span><br><span>    rc = osmo_rtp_socket_connect(lchan->abis_ip.rtp_socket,</span><br><span>                                inet_ntoa(ia), ntohs(connect_port));</span><br><span>    if (rc < 0) {</span><br><span style="color: hsl(0, 100%, 40%);">-                LOGP(DRTP, LOGL_ERROR,</span><br><span style="color: hsl(0, 100%, 40%);">-               "%s Failed to connect RTP/RTCP sockets\n",</span><br><span style="color: hsl(0, 100%, 40%);">-                    gsm_lchan_name(lchan));</span><br><span style="color: hsl(120, 100%, 40%);">+          LOGPLCHAN(lchan, DRTP, LOGL_ERROR, "Failed to connect RTP/RTCP sockets\n");</span><br><span>                osmo_rtp_socket_free(lchan->abis_ip.rtp_socket);</span><br><span>          lchan->abis_ip.rtp_socket = NULL;</span><br><span>                 msgb_queue_flush(&lchan->dl_tch_queue);</span><br><span>@@ -2081,9 +2048,7 @@</span><br><span>                                       &lchan->abis_ip.bound_ip,</span><br><span>                                     &port);</span><br><span>  if (rc < 0)</span><br><span style="color: hsl(0, 100%, 40%);">-          LOGP(DRTP, LOGL_ERROR, "%s IPAC cannot obtain "</span><br><span style="color: hsl(0, 100%, 40%);">-                    "locally bound IP/port: %d\n",</span><br><span style="color: hsl(0, 100%, 40%);">-                gsm_lchan_name(lchan), rc);</span><br><span style="color: hsl(120, 100%, 40%);">+              LOGPLCHAN(lchan, DRTP, LOGL_ERROR, "IPAC cannot obtain locally bound IP/port: %d\n", rc);</span><br><span>  lchan->abis_ip.bound_port = port;</span><br><span> </span><br><span>     /* Everything has succeeded, we can store new values in lchan */</span><br><span>@@ -2145,8 +2110,7 @@</span><br><span>     struct msgb *msg;</span><br><span>    uint8_t ie[2];</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-      LOGP(DRSL, LOGL_NOTICE, "%s Tx PDCH %s ACK\n",</span><br><span style="color: hsl(0, 100%, 40%);">-             gsm_lchan_name(lchan), pdch_act? "ACT" : "DEACT");</span><br><span style="color: hsl(120, 100%, 40%);">+   LOGPLCHAN(lchan, DRSL, LOGL_NOTICE, "Tx PDCH %s ACK\n", pdch_act? "ACT" : "DEACT");</span><br><span> </span><br><span>        msg = rsl_msgb_alloc(sizeof(struct abis_rsl_dchan_hdr));</span><br><span>     if (!msg)</span><br><span>@@ -2173,8 +2137,8 @@</span><br><span>    struct msgb *msg;</span><br><span>    uint8_t chan_nr = gsm_lchan2chan_nr(lchan);</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">- LOGP(DRSL, LOGL_NOTICE, "%s Tx PDCH %s NACK (cause = 0x%02x)\n",</span><br><span style="color: hsl(0, 100%, 40%);">-           gsm_lchan_name(lchan), pdch_act? "ACT" : "DEACT", cause);</span><br><span style="color: hsl(120, 100%, 40%);">+    LOGPLCHAN(lchan, DRSL, LOGL_NOTICE, "Tx PDCH %s NACK (cause = 0x%02x)\n",</span><br><span style="color: hsl(120, 100%, 40%);">+             pdch_act ? "ACT" : "DEACT", cause);</span><br><span> </span><br><span>        msg = rsl_msgb_alloc(sizeof(struct abis_rsl_dchan_hdr));</span><br><span>     if (!msg)</span><br><span>@@ -2236,11 +2200,11 @@</span><br><span>  if (ts->flags & TS_F_PDCH_PENDING_MASK) {</span><br><span>             /* Only one of the pending flags should ever be set at the same</span><br><span>               * time, but just log both in case both should be set. */</span><br><span style="color: hsl(0, 100%, 40%);">-               LOGP(DRSL, LOGL_ERROR,</span><br><span style="color: hsl(0, 100%, 40%);">-               "%s Request to PDCH %s, but PDCH%s%s is still pending\n",</span><br><span style="color: hsl(0, 100%, 40%);">-                     gsm_lchan_name(lchan), pdch_act? "ACT" : "DEACT",</span><br><span style="color: hsl(0, 100%, 40%);">-                   (ts->flags & TS_F_PDCH_ACT_PENDING)? " ACT" : "",</span><br><span style="color: hsl(0, 100%, 40%);">-                    (ts->flags & TS_F_PDCH_DEACT_PENDING)? " DEACT" : "");</span><br><span style="color: hsl(120, 100%, 40%);">+                LOGPLCHAN(lchan, DRSL, LOGL_ERROR,</span><br><span style="color: hsl(120, 100%, 40%);">+                      "Request to PDCH %s, but PDCH%s%s is still pending\n",</span><br><span style="color: hsl(120, 100%, 40%);">+                      pdch_act? "ACT" : "DEACT",</span><br><span style="color: hsl(120, 100%, 40%);">+                        (ts->flags & TS_F_PDCH_ACT_PENDING)? " ACT" : "",</span><br><span style="color: hsl(120, 100%, 40%);">+                          (ts->flags & TS_F_PDCH_DEACT_PENDING)? " DEACT" : "");</span><br><span>          rsl_tx_dyn_pdch_nack(lchan, pdch_act, RSL_ERR_NORMAL_UNSPEC);</span><br><span>                return;</span><br><span>      }</span><br><span>@@ -2263,18 +2227,16 @@</span><br><span> </span><br><span>      /* ensure that this is indeed a dynamic-PDCH channel */</span><br><span>      if (ts->pchan != GSM_PCHAN_TCH_F_PDCH) {</span><br><span style="color: hsl(0, 100%, 40%);">-             LOGP(DRSL, LOGL_ERROR,</span><br><span style="color: hsl(0, 100%, 40%);">-               "%s Attempt to PDCH %s on TS that is not a TCH/F_PDCH (is %s)\n",</span><br><span style="color: hsl(0, 100%, 40%);">-                     gsm_lchan_name(lchan), pdch_act? "ACT" : "DEACT",</span><br><span style="color: hsl(0, 100%, 40%);">-                   gsm_pchan_name(ts->pchan));</span><br><span style="color: hsl(120, 100%, 40%);">+           LOGPLCHAN(lchan, DRSL, LOGL_ERROR,</span><br><span style="color: hsl(120, 100%, 40%);">+                      "Attempt to PDCH %s on TS that is not a TCH/F_PDCH (is %s)\n",</span><br><span style="color: hsl(120, 100%, 40%);">+                      pdch_act? "ACT" : "DEACT", gsm_pchan_name(ts->pchan));</span><br><span>              ipacc_dyn_pdch_complete(ts, -EINVAL);</span><br><span>                return;</span><br><span>      }</span><br><span> </span><br><span>        if (is_pdch_act == pdch_act) {</span><br><span style="color: hsl(0, 100%, 40%);">-          LOGP(DL1C, LOGL_NOTICE,</span><br><span style="color: hsl(0, 100%, 40%);">-              "%s Request to PDCH %s, but is already so\n",</span><br><span style="color: hsl(0, 100%, 40%);">-                 gsm_lchan_name(lchan), pdch_act? "ACT" : "DEACT");</span><br><span style="color: hsl(120, 100%, 40%);">+           LOGPLCHAN(lchan, DL1C, LOGL_NOTICE, "Request to PDCH %s, but is already so\n",</span><br><span style="color: hsl(120, 100%, 40%);">+                        pdch_act? "ACT" : "DEACT");</span><br><span>            ipacc_dyn_pdch_complete(ts, 0);</span><br><span>              return;</span><br><span>      }</span><br><span>@@ -2590,8 +2552,8 @@</span><br><span> </span><br><span>        lchan = lchan_lookup(trx, rh->chan_nr, "RSL rx RLL: ");</span><br><span>         if (!lchan) {</span><br><span style="color: hsl(0, 100%, 40%);">-           LOGP(DRLL, LOGL_NOTICE, "Rx RLL %s for unknown lchan\n",</span><br><span style="color: hsl(0, 100%, 40%);">-                      rsl_msg_name(rh->c.msg_type));</span><br><span style="color: hsl(120, 100%, 40%);">+             LOGPLCHAN(lchan, DRLL, LOGL_NOTICE, "Rx RLL %s for unknown lchan\n",</span><br><span style="color: hsl(120, 100%, 40%);">+                          rsl_msg_name(rh->c.msg_type));</span><br><span>          return rsl_reject_unknown_lchan(msg);</span><br><span>        }</span><br><span> </span><br><span>@@ -2717,9 +2679,8 @@</span><br><span>        int res_valid = lchan->meas.flags & LC_UL_M_F_RES_VALID;</span><br><span>      struct gsm_bts *bts = lchan->ts->trx->bts;</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">- LOGP(DRSL, LOGL_DEBUG,</span><br><span style="color: hsl(0, 100%, 40%);">-       "%s chan_num:%u Tx MEAS RES valid(%d), flags(%02x)\n",</span><br><span style="color: hsl(0, 100%, 40%);">-        gsm_lchan_name(lchan), chan_nr, res_valid, lchan->meas.flags);</span><br><span style="color: hsl(120, 100%, 40%);">+        LOGPLCHAN(lchan, DRSL, LOGL_DEBUG, "chan_num:%u Tx MEAS RES valid(%d), flags(%02x)\n",</span><br><span style="color: hsl(120, 100%, 40%);">+                chan_nr, res_valid, lchan->meas.flags);</span><br><span> </span><br><span>     if (!res_valid)</span><br><span>              return -EINPROGRESS;</span><br><span>@@ -2728,9 +2689,8 @@</span><br><span>         if (!msg)</span><br><span>            return -ENOMEM;</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-     LOGP(DRSL, LOGL_DEBUG,</span><br><span style="color: hsl(0, 100%, 40%);">-       "%s Send Meas RES: NUM:%u, RXLEV_FULL:%u, RXLEV_SUB:%u, RXQUAL_FULL:%u, RXQUAL_SUB:%u, MS_PWR:%u, UL_TA:%u, L3_LEN:%d, TimingOff:%u\n",</span><br><span style="color: hsl(0, 100%, 40%);">-       gsm_lchan_name(lchan),</span><br><span style="color: hsl(120, 100%, 40%);">+   LOGPLCHAN(lchan, DRSL, LOGL_DEBUG,</span><br><span style="color: hsl(120, 100%, 40%);">+         "Send Meas RES: NUM:%u, RXLEV_FULL:%u, RXLEV_SUB:%u, RXQUAL_FULL:%u, RXQUAL_SUB:%u, MS_PWR:%u, UL_TA:%u, L3_LEN:%d, TimingOff:%u\n",</span><br><span>       lchan->meas.res_nr,</span><br><span>       lchan->meas.ul_res.full.rx_lev,</span><br><span>           lchan->meas.ul_res.sub.rx_lev,</span><br><span>@@ -2794,9 +2754,8 @@</span><br><span>       rh = msgb_l2(msg);</span><br><span> </span><br><span>       if (lchan->state != LCHAN_S_ACTIVE) {</span><br><span style="color: hsl(0, 100%, 40%);">-                LOGP(DRSL, LOGL_ERROR, "%s(%s) is not active. Dropping message (len=%u): %s\n",</span><br><span style="color: hsl(0, 100%, 40%);">-                       gsm_lchan_name(lchan), gsm_lchans_name(lchan->state),</span><br><span style="color: hsl(0, 100%, 40%);">-                        msgb_l2len(msg), msgb_hexdump_l2(msg));</span><br><span style="color: hsl(120, 100%, 40%);">+               LOGPLCHAN(lchan, DRSL, LOGL_ERROR, "(%s) is not active. Dropping message (len=%u): %s\n",</span><br><span style="color: hsl(120, 100%, 40%);">+                     gsm_lchans_name(lchan->state), msgb_l2len(msg), msgb_hexdump_l2(msg));</span><br><span>          msgb_free(msg);</span><br><span>              return 0;</span><br><span>    }</span><br><span>@@ -2809,19 +2768,20 @@</span><br><span>  if (rslms_is_meas_rep(msg)) {</span><br><span>                int rc;</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-             LOGP(DRSL, LOGL_INFO, "%s Handing RLL msg %s from LAPDm to MEAS REP\n",</span><br><span style="color: hsl(0, 100%, 40%);">-                       gsm_lchan_name(lchan), rsl_msg_name(rh->msg_type));</span><br><span style="color: hsl(120, 100%, 40%);">+                LOGPLCHAN(lchan, DRSL, LOGL_INFO, "Handing RLL msg %s from LAPDm to MEAS REP\n",</span><br><span style="color: hsl(120, 100%, 40%);">+                      rsl_msg_name(rh->msg_type));</span><br><span> </span><br><span>                /* REL_IND handling */</span><br><span>               if (rh->msg_type == RSL_MT_REL_IND &&</span><br><span>                     (lchan->type == GSM_LCHAN_TCH_F || lchan->type == GSM_LCHAN_TCH_H)) {</span><br><span style="color: hsl(0, 100%, 40%);">-                     LOGP(DRSL, LOGL_INFO, "%s Scheduling %s to L3 in next associated TCH-RTS.ind\n",</span><br><span style="color: hsl(0, 100%, 40%);">-                              gsm_lchan_name(lchan),</span><br><span style="color: hsl(0, 100%, 40%);">-                          rsl_msg_name(rh->msg_type));</span><br><span style="color: hsl(120, 100%, 40%);">+                       LOGPLCHAN(lchan, DRSL, LOGL_INFO,</span><br><span style="color: hsl(120, 100%, 40%);">+                               "Scheduling %s to L3 in next associated TCH-RTS.ind\n",</span><br><span style="color: hsl(120, 100%, 40%);">+                             rsl_msg_name(rh->msg_type));</span><br><span> </span><br><span>                        if(lchan->pending_rel_ind_msg) {</span><br><span style="color: hsl(0, 100%, 40%);">-                             LOGP(DRSL, LOGL_INFO, "Dropping pending release indication message\n");</span><br><span style="color: hsl(0, 100%, 40%);">-                                       msgb_free(lchan->pending_rel_ind_msg);</span><br><span style="color: hsl(120, 100%, 40%);">+                             LOGPLCHAN(lchan, DRSL, LOGL_INFO,</span><br><span style="color: hsl(120, 100%, 40%);">+                                       "Dropping pending release indication message\n");</span><br><span style="color: hsl(120, 100%, 40%);">+                         msgb_free(lchan->pending_rel_ind_msg);</span><br><span>                    }</span><br><span> </span><br><span>                        lchan->pending_rel_ind_msg = msg;</span><br><span>@@ -2834,8 +2794,8 @@</span><br><span>         } else if (rslms_is_gprs_susp_req(msg)) {</span><br><span>            return handle_gprs_susp_req(msg);</span><br><span>    } else {</span><br><span style="color: hsl(0, 100%, 40%);">-                LOGP(DRSL, LOGL_INFO, "%s Fwd RLL msg %s from LAPDm to A-bis\n",</span><br><span style="color: hsl(0, 100%, 40%);">-                      gsm_lchan_name(lchan), rsl_msg_name(rh->msg_type));</span><br><span style="color: hsl(120, 100%, 40%);">+                LOGPLCHAN(lchan, DRSL, LOGL_INFO, "Fwd RLL msg %s from LAPDm to A-bis\n",</span><br><span style="color: hsl(120, 100%, 40%);">+                     rsl_msg_name(rh->msg_type));</span><br><span> </span><br><span>                return abis_bts_rsl_sendmsg(msg);</span><br><span>    }</span><br><span>@@ -2868,8 +2828,7 @@</span><br><span>            return rsl_reject_unknown_lchan(msg);</span><br><span>        }</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-   LOGP(DRSL, LOGL_INFO, "%s Rx RSL %s\n", gsm_lchan_name(msg->lchan),</span><br><span style="color: hsl(0, 100%, 40%);">-                rsl_msg_name(cch->c.msg_type));</span><br><span style="color: hsl(120, 100%, 40%);">+    LOGPLCHAN(msg->lchan, DRSL, LOGL_INFO, "Rx RSL %s\n", rsl_msg_name(cch->c.msg_type));</span><br><span> </span><br><span>    switch (cch->c.msg_type) {</span><br><span>        case RSL_MT_BCCH_INFO:</span><br><span>@@ -2886,13 +2845,13 @@</span><br><span>             break;</span><br><span>       case RSL_MT_SMS_BC_REQ:</span><br><span>      case RSL_MT_NOT_CMD:</span><br><span style="color: hsl(0, 100%, 40%);">-            LOGP(DRSL, LOGL_NOTICE, "unimplemented RSL cchan msg_type %s\n",</span><br><span style="color: hsl(0, 100%, 40%);">-                      rsl_msg_name(cch->c.msg_type));</span><br><span style="color: hsl(120, 100%, 40%);">+            LOGPLCHAN(msg->lchan, DRSL, LOGL_NOTICE, "unimplemented RSL cchan msg_type %s\n",</span><br><span style="color: hsl(120, 100%, 40%);">+                          rsl_msg_name(cch->c.msg_type));</span><br><span>                 rsl_tx_error_report(trx, RSL_ERR_MSG_TYPE, &cch->chan_nr, NULL, msg);</span><br><span>                 break;</span><br><span>       default:</span><br><span style="color: hsl(0, 100%, 40%);">-                LOGP(DRSL, LOGL_NOTICE, "undefined RSL cchan msg_type 0x%02x\n",</span><br><span style="color: hsl(0, 100%, 40%);">-                      cch->c.msg_type);</span><br><span style="color: hsl(120, 100%, 40%);">+          LOGPLCHAN(msg->lchan, DRSL, LOGL_NOTICE, "undefined RSL cchan msg_type 0x%02x\n",</span><br><span style="color: hsl(120, 100%, 40%);">+                          cch->c.msg_type);</span><br><span>               rsl_tx_error_report(trx, RSL_ERR_MSG_TYPE, &cch->chan_nr, NULL, msg);</span><br><span>                 ret = -EINVAL;</span><br><span>               break;</span><br><span>@@ -2963,13 +2922,13 @@</span><br><span>     case RSL_MT_PRE_HANDO_NOTIF:</span><br><span>         case RSL_MT_MR_CODEC_MOD_REQ:</span><br><span>        case RSL_MT_TFO_MOD_REQ:</span><br><span style="color: hsl(0, 100%, 40%);">-                LOGP(DRSL, LOGL_NOTICE, "unimplemented RSL dchan msg_type %s\n",</span><br><span style="color: hsl(0, 100%, 40%);">-                      rsl_msg_name(dch->c.msg_type));</span><br><span style="color: hsl(120, 100%, 40%);">+            LOGPLCHAN(msg->lchan, DRSL, LOGL_NOTICE, "unimplemented RSL dchan msg_type %s\n",</span><br><span style="color: hsl(120, 100%, 40%);">+                          rsl_msg_name(dch->c.msg_type));</span><br><span>                 rsl_tx_error_report(trx, RSL_ERR_MSG_TYPE, &dch->chan_nr, NULL, msg);</span><br><span>                 break;</span><br><span>       default:</span><br><span style="color: hsl(0, 100%, 40%);">-                LOGP(DRSL, LOGL_NOTICE, "undefined RSL dchan msg_type 0x%02x\n",</span><br><span style="color: hsl(0, 100%, 40%);">-                      dch->c.msg_type);</span><br><span style="color: hsl(120, 100%, 40%);">+          LOGPLCHAN(msg->lchan, DRSL, LOGL_NOTICE, "undefined RSL dchan msg_type 0x%02x\n",</span><br><span style="color: hsl(120, 100%, 40%);">+                          dch->c.msg_type);</span><br><span>               rsl_tx_error_report(trx, RSL_ERR_MSG_TYPE, &dch->chan_nr, NULL, msg);</span><br><span>                 ret = -EINVAL;</span><br><span>       }</span><br><span>@@ -3033,8 +2992,7 @@</span><br><span>            return rsl_reject_unknown_lchan(msg);</span><br><span>        }</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-   LOGP(DRSL, LOGL_INFO, "%s Rx RSL %s\n", gsm_lchan_name(msg->lchan),</span><br><span style="color: hsl(0, 100%, 40%);">-                rsl_ipac_msg_name(dch->c.msg_type));</span><br><span style="color: hsl(120, 100%, 40%);">+       LOGPLCHAN(msg->lchan, DRSL, LOGL_INFO, "Rx RSL %s\n", rsl_ipac_msg_name(dch->c.msg_type));</span><br><span> </span><br><span>       switch (dch->c.msg_type) {</span><br><span>        case RSL_MT_IPAC_CRCX:</span><br><span>@@ -3045,8 +3003,8 @@</span><br><span>               ret = rsl_rx_ipac_dlcx(msg);</span><br><span>                 break;</span><br><span>       default:</span><br><span style="color: hsl(0, 100%, 40%);">-                LOGP(DRSL, LOGL_NOTICE, "unsupported RSL ip.access msg_type 0x%02x\n",</span><br><span style="color: hsl(0, 100%, 40%);">-                        dch->c.msg_type);</span><br><span style="color: hsl(120, 100%, 40%);">+          LOGPLCHAN(msg->lchan, DRSL, LOGL_NOTICE, "unsupported RSL ip.access msg_type 0x%02x\n",</span><br><span style="color: hsl(120, 100%, 40%);">+                    dch->c.msg_type);</span><br><span>               rsl_tx_error_report(trx, RSL_ERR_MSG_TYPE, &dch->chan_nr, NULL, msg);</span><br><span>                 ret = -EINVAL;</span><br><span>       }</span><br><span>diff --git a/src/common/sysinfo.c b/src/common/sysinfo.c</span><br><span>index 5c66e08..e4a05c8 100644</span><br><span>--- a/src/common/sysinfo.c</span><br><span>+++ b/src/common/sysinfo.c</span><br><span>@@ -172,6 +172,6 @@</span><br><span>                 lchan->si.last = tmp;</span><br><span>             return GSM_LCHAN_SI(lchan, tmp);</span><br><span>     }</span><br><span style="color: hsl(0, 100%, 40%);">-       LOGP(DL1P, LOGL_NOTICE, "%s SACCH no SI available\n", gsm_lchan_name(lchan));</span><br><span style="color: hsl(120, 100%, 40%);">+       LOGPLCHAN(lchan, DL1P, LOGL_NOTICE, "SACCH no SI available\n");</span><br><span>    return NULL;</span><br><span> }</span><br><span></span><br></pre><p>To view, visit <a href="https://gerrit.osmocom.org/14111">change 14111</a>. To unsubscribe, or for help writing mail filters, visit <a href="https://gerrit.osmocom.org/settings">settings</a>.</p><div itemscope itemtype="http://schema.org/EmailMessage"><div itemscope itemprop="action" itemtype="http://schema.org/ViewAction"><link itemprop="url" href="https://gerrit.osmocom.org/14111"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: osmo-bts </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-MessageType: merged </div>
<div style="display:none"> Gerrit-Change-Id: I6913ac8fb543811126b85a54118333155c03bc03 </div>
<div style="display:none"> Gerrit-Change-Number: 14111 </div>
<div style="display:none"> Gerrit-PatchSet: 6 </div>
<div style="display:none"> Gerrit-Owner: Harald Welte <laforge@gnumonks.org> </div>
<div style="display:none"> Gerrit-Reviewer: Harald Welte <laforge@gnumonks.org> </div>
<div style="display:none"> Gerrit-Reviewer: Jenkins Builder (1000002) </div>
<div style="display:none"> Gerrit-Reviewer: Vadim Yanitskiy <axilirator@gmail.com> </div>
<div style="display:none"> Gerrit-Reviewer: osmith <osmith@sysmocom.de> </div>