pespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-bsc/+/40997?usp=email )
Change subject: Fix wrong list entry derreference during bts_depend_find_entry() ......................................................................
Fix wrong list entry derreference during bts_depend_find_entry()
Commit 92dc38d1c2b49efd0d4626e7ad5fb2db5ae7e5bc converted bts->depends_on from bitmask to a list, but introduced an error while doing so, iterating the wrong list and hence derreferring wrong entries from it.
This caused for instance sporadic malfunction where osmo-bsc refused a BTS from connecting with "Dependency not full-filled".
Related: SYS#7062 Related: SYS#7624 Fixes: 92dc38d1c2b49efd0d4626e7ad5fb2db5ae7e5bc Change-Id: I50c8111d71ee4493076cd2cf3d4d850fee3c0414 (cherry picked from commit 5ee02ae7f6e4dc58882298c0e7055cd79f35c93b) --- M src/osmo-bsc/bts.c 1 file changed, 1 insertion(+), 1 deletion(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-bsc refs/changes/97/40997/1
diff --git a/src/osmo-bsc/bts.c b/src/osmo-bsc/bts.c index 730cf7a..2cc6153 100644 --- a/src/osmo-bsc/bts.c +++ b/src/osmo-bsc/bts.c @@ -932,7 +932,7 @@ static struct bts_depends_on_entry *bts_depend_find_entry(const struct gsm_bts *bts, gsm_bts_nr_t dep) { struct bts_depends_on_entry *entry; - llist_for_each_entry(entry, &bts->trx_list, list) { + llist_for_each_entry(entry, &bts->depends_on, list) { if (entry->bts_nr == dep) return entry; }