On 10/09/18 02:50, Neels Hofmeyr wrote:
b) the code path that would trigger the mode modif currently doesn't, and instead we assign a new lchan ( http://git.osmocom.org/osmo-bsc/tree/src/osmo-bsc/assignment_fsm.c?id=981f8b... ).
Thanks for explaining that!
c) Even though current osmo-bsc never invokes Chan Mode Modif, I kind of expected osmo-bts code to also invoke the same function somewhere for the chan act case. But it doesn't :P
osmo-nitb, however, doesn't do late assignment, so commonly reaches the Chan Mode Modif code path.
Either way, even though osmo-bsc doesn't currently use this code path, we still want it fixed for the future, not only for osmo-nitb.
Solution: bts_supports_cm() should never be fed with dynamic pchan kinds. To test my patch, I'd need to setup an osmo-nitb ... Keith, can you take over the test whether this fixes the problem instead?
OK tested, works fine, I have pushed gerrit #10864
Placed it on branch neels/dyn_modif in osmo-bts; it's just:
if (bts_supports_cm(lchan->ts->trx->bts, lchan->ts->pchan, lchan->tch_mode) != 1) {
if (bts_supports_cm(lchan->ts->trx->bts, ts_pchan(lchan->ts), lchan->tch_mode) != 1) {
I pushed before actually looking at your branch, you'ld probably prefer a different commit message. and maybe not include the logging changes.. anyway, please comment on gerrit.
If it's any difficulty to build osmo-bts, I do have a compile for sysmoBTS ready to fire up and could also test myself if you ask me back.
No problems, I also have a build machine for sysmoBTS ready, but I am getting great value at the moment from the LimeSDR-mini and osmo-trx-lms running on x86!!
So a code refactoring would be good to make it easier to add new code around checking pchan types -- https://osmocom.org/issues/1902. Such a refactoring has already happened in osmo-bsc, but that's unrelated to this issue.)
Good to know, it might help me to spot these things in the future.
~N
k/