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/.
neels gerrit-no-reply at lists.osmocom.orgneels has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-bsc/+/20103 ) Change subject: paging: do not set bsub->lac during Paging Request / drop bsub->lac ...................................................................... paging: do not set bsub->lac during Paging Request / drop bsub->lac It does not make sense to set the bsc_subscr's LAC from a Paging Request, especially since the paging code has loops that possibly kick off several pagings. To not cause any functional change for locked_paging_bts(), pass the LAC as function parameter instead of in the subscr->lac. (BTW, I suspect that the locked_paging_bts() condition for the LAC does not make much sense, seems to be an early non-feature of OpenBSC. Why page on an RF-locked BTS?? I don't understand, hence leaving the behavior unchanged.) At this point, there remains no code setting bsub->lac anywhere. We could set it during rx of Complete Layer 3, but since there is no use for it besides a vty dump, let's just drop the bsub->lac completely, and the vty dump of it. Change-Id: Id017bd494d329b6fc254d7135b4074ac2b224d66 --- M include/osmocom/bsc/bsc_subscriber.h M include/osmocom/bsc/osmo_bsc_grace.h M src/osmo-bsc/bsc_vty.c M src/osmo-bsc/osmo_bsc_bssap.c M src/osmo-bsc/osmo_bsc_grace.c 5 files changed, 11 insertions(+), 10 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-bsc refs/changes/03/20103/1 diff --git a/include/osmocom/bsc/bsc_subscriber.h b/include/osmocom/bsc/bsc_subscriber.h index 53fa7be..a602a9e 100644 --- a/include/osmocom/bsc/bsc_subscriber.h +++ b/include/osmocom/bsc/bsc_subscriber.h @@ -16,7 +16,6 @@ char imsi[GSM23003_IMSI_MAX_DIGITS+1]; uint32_t tmsi; - uint16_t lac; }; const char *bsc_subscr_name(struct bsc_subscr *bsub); diff --git a/include/osmocom/bsc/osmo_bsc_grace.h b/include/osmocom/bsc/osmo_bsc_grace.h index d78e41c..cc613be 100644 --- a/include/osmocom/bsc/osmo_bsc_grace.h +++ b/include/osmocom/bsc/osmo_bsc_grace.h @@ -31,6 +31,7 @@ struct bsc_subscr *subscr, int chan_needed, struct bsc_msc_data *msc, - struct gsm_bts *bts); + struct gsm_bts *bts, + uint16_t lac); #endif diff --git a/src/osmo-bsc/bsc_vty.c b/src/osmo-bsc/bsc_vty.c index 3524506..8197320 100644 --- a/src/osmo-bsc/bsc_vty.c +++ b/src/osmo-bsc/bsc_vty.c @@ -6154,7 +6154,7 @@ static void dump_one_sub(struct vty *vty, struct bsc_subscr *bsub) { - vty_out(vty, " %15s %08x %5u %d%s", bsub->imsi, bsub->tmsi, bsub->lac, bsub->use_count, + vty_out(vty, " %15s %08x %d%s", bsub->imsi, bsub->tmsi, bsub->use_count, VTY_NEWLINE); } @@ -6165,8 +6165,8 @@ { struct bsc_subscr *bsc_subscr; - vty_out(vty, " IMSI TMSI LAC Use%s", VTY_NEWLINE); - /* " 001010123456789 ffffffff 65534 1" */ + vty_out(vty, " IMSI TMSI Use%s", VTY_NEWLINE); + /* " 001010123456789 ffffffff 1" */ llist_for_each_entry(bsc_subscr, bsc_gsmnet->bsc_subscribers, entry) dump_one_sub(vty, bsc_subscr); diff --git a/src/osmo-bsc/osmo_bsc_bssap.c b/src/osmo-bsc/osmo_bsc_bssap.c index a253b01..2b51787 100644 --- a/src/osmo-bsc/osmo_bsc_bssap.c +++ b/src/osmo-bsc/osmo_bsc_bssap.c @@ -135,10 +135,9 @@ return; } - subscr->lac = lac; subscr->tmsi = tmsi; - ret = bsc_grace_paging_request(msc->network->rf_ctrl->policy, subscr, chan_needed, msc, bts); + ret = bsc_grace_paging_request(msc->network->rf_ctrl->policy, subscr, chan_needed, msc, bts, lac); if (ret == 0) LOGP(DMSC, LOGL_INFO, "Paging request failed or repeated paging: BTS: %d IMSI: '%s' TMSI: '0x%x/%u' LAC: 0x%x\n", bts->nr, mi_string, tmsi, tmsi, lac); diff --git a/src/osmo-bsc/osmo_bsc_grace.c b/src/osmo-bsc/osmo_bsc_grace.c index a26a716..628992e 100644 --- a/src/osmo-bsc/osmo_bsc_grace.c +++ b/src/osmo-bsc/osmo_bsc_grace.c @@ -38,6 +38,7 @@ /* Return value is like paging_request_bts(): * returns 1 on success (one BTS was paged); 0 in case of error (e.g. TRX down) */ static int locked_paging_bts(struct gsm_bts *bts, + uint16_t lac, struct bsc_subscr *subscr, int chan_needed, struct bsc_msc_data *msc) @@ -47,7 +48,7 @@ return 0; /* in case of no lac patching is in place, check the BTS */ - if (msc->core_lac == -1 && subscr->lac != bts->location_area_code) + if (msc->core_lac == -1 && lac != bts->location_area_code) return 0; return paging_request_bts(bts, subscr, chan_needed, msc); @@ -66,9 +67,10 @@ struct bsc_subscr *subscr, int chan_needed, struct bsc_msc_data *msc, - struct gsm_bts *bts) + struct gsm_bts *bts, + uint16_t lac) { if (rf_policy == S_RF_ON) return paging_request_bts(bts, subscr, chan_needed, msc); - return locked_paging_bts(bts, subscr, chan_needed, msc); + return locked_paging_bts(bts, lac, subscr, chan_needed, msc); } -- To view, visit https://gerrit.osmocom.org/c/osmo-bsc/+/20103 To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings Gerrit-Project: osmo-bsc Gerrit-Branch: master Gerrit-Change-Id: Id017bd494d329b6fc254d7135b4074ac2b224d66 Gerrit-Change-Number: 20103 Gerrit-PatchSet: 1 Gerrit-Owner: neels <nhofmeyr at sysmocom.de> Gerrit-MessageType: newchange -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20200912/0cfc1a5b/attachment.htm>