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/osmocom-commitlog@lists.osmocom.org/.
gitosis at osmocom.org gitosis at osmocom.orgThis is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "The OpenBSC GSM Base Station Controller (+MSC/HLR/SGSN)". The branch, master has been updated via d5d39ae2b680c64c2dc616d6ca3886dac9092066 (commit) via 423269f8035f107d5bc76e10cf17728fdbb3e2e4 (commit) via baa6c5546e719757073fa97fcc4b1f0d32c39165 (commit) via a0a08d80b8fe8712f24a222abca6a7f422c11417 (commit) via d35fc4408c82193253e197aace9207fbe6d73b92 (commit) via a2ef7d6477a2e3b026e56db78bbd407c67e61df1 (commit) via b74a2c8e290e58a371c07b9d8a82872e54de6a2f (commit) via cd150a8f7473347b17728d0797bc6464441dde9a (commit) via 2ae305de46547c2c8424ab14d01f03bb4780ff39 (commit) from 7130683ffee026b0907902f8f20091987281c7f8 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- http://cgit.osmocom.org/openbsc/commit/?id=d5d39ae2b680c64c2dc616d6ca3886dac9092066 commit d5d39ae2b680c64c2dc616d6ca3886dac9092066 Author: Neels Hofmeyr <nhofmeyr at sysmocom.de> Date: Wed Aug 24 17:02:19 2016 +0200 log: rsl notice: tiny tweak for readability Change-Id: I57c3b7d27d857c96e3fa3dacf7b766bc43100fc3 http://cgit.osmocom.org/openbsc/commit/?id=423269f8035f107d5bc76e10cf17728fdbb3e2e4 commit 423269f8035f107d5bc76e10cf17728fdbb3e2e4 Author: Neels Hofmeyr <nhofmeyr at sysmocom.de> Date: Wed Aug 24 16:48:00 2016 +0200 log: improve for rsl_lchan_mark_broken() In rsl_lchan_mark_broken(), call rsl_lchan_set_state() so the state transition gets logged in the debug log. Remove logging for the broken channel at the callers, instead log the error actually in rsl_lchan_mark_broken() itself, with the reason message passed by the caller anyway. (Removes code dup and ensures it's always logged.) Change-Id: I54ae9bbd3f193bae7b1bda1fef3e33e62b353bf5 http://cgit.osmocom.org/openbsc/commit/?id=baa6c5546e719757073fa97fcc4b1f0d32c39165 commit baa6c5546e719757073fa97fcc4b1f0d32c39165 Author: Neels Hofmeyr <nhofmeyr at sysmocom.de> Date: Wed Aug 24 14:48:39 2016 +0200 dyn TS: debug log: if still in use, also log lchan type and state Change-Id: Ifbf31cde24b2d1022b7a472966c17959c96e6dda http://cgit.osmocom.org/openbsc/commit/?id=a0a08d80b8fe8712f24a222abca6a7f422c11417 commit a0a08d80b8fe8712f24a222abca6a7f422c11417 Author: Neels Hofmeyr <nhofmeyr at sysmocom.de> Date: Wed Aug 24 14:42:58 2016 +0200 dyn TS: debug log 'switchover complete' only when there was a switchover Change-Id: I7ddcb41edce1cd7b22fe91e33bdcaedb21856222 http://cgit.osmocom.org/openbsc/commit/?id=d35fc4408c82193253e197aace9207fbe6d73b92 commit d35fc4408c82193253e197aace9207fbe6d73b92 Author: Neels Hofmeyr <nhofmeyr at sysmocom.de> Date: Wed Aug 24 17:02:37 2016 +0200 dyn TS: fix OS#1798: on late RF CHAN REL ACK, activate PDCH Tested by hacking a REL ACK delay of a couple of seconds into osmo-bts' rsl.c for the first TCH_H lchan: [[[ diff --git a/include/osmo-bts/rsl.h b/include/osmo-bts/rsl.h index 093e9cb..b35c3bb 100644 --- a/include/osmo-bts/rsl.h +++ b/include/osmo-bts/rsl.h @@ -22,6 +22,7 @@ int rsl_tx_est_ind(struct gsm_lchan *lchan, uint8_t link_id, uint8_t *data, int int rsl_tx_chan_act_acknack(struct gsm_lchan *lchan, uint8_t cause); int rsl_tx_conn_fail(struct gsm_lchan *lchan, uint8_t cause); int rsl_tx_rf_rel_ack(struct gsm_lchan *lchan); +int rsl_tx_rf_rel_ack_later(struct gsm_lchan *lchan); int rsl_tx_hando_det(struct gsm_lchan *lchan, uint8_t *ho_delay); /* call-back for LAPDm code, called when it wants to send msgs UP */ diff --git a/src/common/l1sap.c b/src/common/l1sap.c index 3802e25..1f92b0d 100644 --- a/src/common/l1sap.c +++ b/src/common/l1sap.c @@ -491,7 +491,16 @@ static int l1sap_info_rel_cnf(struct gsm_bts_trx *trx, lchan = get_lchan_by_chan_nr(trx, info_act_cnf->chan_nr); - rsl_tx_rf_rel_ack(lchan); + static int yyy = 0; + + DEBUGP(DRSL, "%s YYYYYYYYYYYYYYYYYYYYY %d %s\n", + gsm_lchan_name(lchan), yyy, gsm_lchant_name(lchan->type)); + + if (lchan->type == GSM_LCHAN_TCH_H && !yyy) { + yyy ++; + rsl_tx_rf_rel_ack_later(lchan); + } else + rsl_tx_rf_rel_ack(lchan); /* During PDCH DEACT, this marks the deactivation of the PDTCH as * requested by the PCU. Next up, we disconnect the TS completely and diff --git a/src/common/rsl.c b/src/common/rsl.c index 3c97af9..7926f21 100644 --- a/src/common/rsl.c +++ b/src/common/rsl.c @@ -534,6 +534,22 @@ int rsl_tx_rf_rel_ack(struct gsm_lchan *lchan) return abis_bts_rsl_sendmsg(msg); } +struct osmo_timer_list yyy_timer; + +static void yyy_timer_cb(void *data) +{ + rsl_tx_rf_rel_ack(data); +} + +int rsl_tx_rf_rel_ack_later(struct gsm_lchan *lchan) +{ + yyy_timer.cb = yyy_timer_cb; + yyy_timer.data = lchan; + osmo_timer_schedule(&yyy_timer, 10, 0); + return 0; +} + + /* 8.4.2 sending CHANnel ACTIVation ACKnowledge */ static int rsl_tx_chan_act_ack(struct gsm_lchan *lchan) { ]]] Change-Id: I87e07e1d54882f8f3d667fa300c6e3679f5c920d Fixes: OS#1798 http://cgit.osmocom.org/openbsc/commit/?id=a2ef7d6477a2e3b026e56db78bbd407c67e61df1 commit a2ef7d6477a2e3b026e56db78bbd407c67e61df1 Author: Neels Hofmeyr <nhofmeyr at sysmocom.de> Date: Wed Aug 24 16:57:31 2016 +0200 dyn TS: fix: properly run an lchan activation timeout Actually schedule an activation timer for the activation part of a dyn TS switchover. It needs to be restarted because the channel release procedure in the first part of a switchover actually removes the activation timer. Change-Id: Ibf50d13ba10298464a8b07e34716763161438990 http://cgit.osmocom.org/openbsc/commit/?id=b74a2c8e290e58a371c07b9d8a82872e54de6a2f commit b74a2c8e290e58a371c07b9d8a82872e54de6a2f Author: Neels Hofmeyr <nhofmeyr at sysmocom.de> Date: Wed Aug 24 16:57:31 2016 +0200 dyn TS: clearly use lchan[0], fixing minor confusion The dyn_ts_switchover_*() functions made the impression that they act on a specific lchan of a timeslot. The assumption that we would remember to use e.g. lchan[1] across a PDCH deactivation is brain damaged to begin with; and factually we always use lchan[0] anyway (the only case for using lchan[1] would be when switching to TCH/H, but the channel allocator will always return lchan[0] for that). Instead of the brain damaged lchan args, use a ts arg across all dyn_ts_switchover_*() functions, with one exception: The dyn_ts_switchover_complete() actually receives an RSL activation ack message on a specific lchan and needs to evaluate its lchan type. This will always be lchan[0] as it is now, but we should stick with the lchan the message was sent for. For PDCH, a check to use lchan[0] already existed, when composing the ACT message in rsl_chan_activate_lchan_as_pdch(). Replace with an assertion. Adjust all callers to pass ts instead of lchan. In dyn_ts_switchover_start(), there was a dead code check that jumps to switchover_complete() in case the pchan already matches. This never hits, because we only call dyn_ts_switchover_start() when pchans mismatch. So avoid guessing at passing lchan[0] to dyn_ts_switchover_complete() by not calling it at all but logging an error instead. In rsl_chan_activate_lchan(), we remember some values before going into switchover from PDCH. Explicitly store them in lchan[0], because after a PDCH release we have always and will activate no other than lchan[0]. In dyn_ts_switchover_continue(), move the check for any existing lchan->rqd_ref further above, and more correctly check all lchans that were so far valid on the TS, instead of just one. This partly prepares for a subsequent commit to fix the act_timer use for dyn TS: with the old lchan arg, we might schedule an activation timer on lchan[1] but receive an ack on lchan[0] (for PDCH), leading to an act_timer expiry. Change-Id: I3f5d48a9bdaa49a42a1908d4a03744638c59796a http://cgit.osmocom.org/openbsc/commit/?id=cd150a8f7473347b17728d0797bc6464441dde9a commit cd150a8f7473347b17728d0797bc6464441dde9a Author: Neels Hofmeyr <nhofmeyr at sysmocom.de> Date: Wed Aug 24 14:45:44 2016 +0200 dyn TS: fix error recovery: switch to PDCH after lchan error state Tested by hacking a CHAN ACT ACK delay of a couple of seconds into osmo-bts' rsl.c for the first TCH_H lchan: [[[ diff --git a/src/common/rsl.c b/src/common/rsl.c index 3c97af9..4bfd27a 100644 --- a/src/common/rsl.c +++ b/src/common/rsl.c @@ -559,6 +559,22 @@ static int rsl_tx_chan_act_ack(struct gsm_lchan *lchan) return abis_bts_rsl_sendmsg(msg); } +struct osmo_timer_list xxx_timer; + +static void xxx_timer_cb(void *data) +{ + rsl_tx_chan_act_ack(data); +} + +static int rsl_tx_chan_act_ack_later(struct gsm_lchan *lchan) +{ + xxx_timer.cb = xxx_timer_cb; + xxx_timer.data = lchan; + osmo_timer_schedule(&xxx_timer, 10, 0); + return 0; +} + + /* 8.4.7 sending HANDOver DETection */ int rsl_tx_hando_det(struct gsm_lchan *lchan, uint8_t *ho_delay) { @@ -614,6 +630,18 @@ int rsl_tx_chan_act_acknack(struct gsm_lchan *lchan, uint8_t cause) if (cause) return rsl_tx_chan_act_nack(lchan, cause); + + static int xxx = 0; + + DEBUGP(DRSL, "%s XXXXXXXXXXXXXXXXXXXXX %d %s\n", + gsm_lchan_name(lchan), xxx, gsm_lchant_name(lchan->type)); + + if (lchan->type == GSM_LCHAN_TCH_H) { + if (!xxx) { + xxx ++; + return rsl_tx_chan_act_ack_later(lchan); + } + } return rsl_tx_chan_act_ack(lchan); } ]]] Change-Id: Ie82dec9c9fefc476fdf5b5afdad2246b9d6fe304 http://cgit.osmocom.org/openbsc/commit/?id=2ae305de46547c2c8424ab14d01f03bb4780ff39 commit 2ae305de46547c2c8424ab14d01f03bb4780ff39 Author: Neels Hofmeyr <nhofmeyr at sysmocom.de> Date: Wed Aug 24 14:44:11 2016 +0200 dyn TS: move check whether to switch to PDCH to separate function Prepares for an upcoming commit using the same check in error_timeout_cb(). Change-Id: I8abfa964631040f798212cc3e360f67f9e09b7c5 ----------------------------------------------------------------------- Summary of changes: openbsc/include/openbsc/abis_rsl.h | 2 +- openbsc/src/libbsc/abis_rsl.c | 175 +++++++++++++++++++++++-------------- openbsc/src/libbsc/bsc_dyn_ts.c | 2 +- 3 files changed, 109 insertions(+), 70 deletions(-) hooks/post-receive -- The OpenBSC GSM Base Station Controller (+MSC/HLR/SGSN)