[PATCH 4/5] paging: Stop paging everywhere before dispatching any signal

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/OpenBSC@lists.osmocom.org/.

Holger Hans Peter Freyther holger at freyther.de
Mon Aug 3 10:03:22 UTC 2015


From: Holger Hans Peter Freyther <holger at moiji-mobile.com>

---
 openbsc/src/libmsc/gsm_subscriber.c | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

diff --git a/openbsc/src/libmsc/gsm_subscriber.c b/openbsc/src/libmsc/gsm_subscriber.c
index 4559de5..145cbdd 100644
--- a/openbsc/src/libmsc/gsm_subscriber.c
+++ b/openbsc/src/libmsc/gsm_subscriber.c
@@ -84,6 +84,15 @@ static int subscr_paging_dispatch(unsigned int hooknum, unsigned int event,
 
 	OSMO_ASSERT(subscr->is_paging);
 
+	/*
+	 * Stop paging on all other BTS. E.g. if this is
+	 * the first timeout on a BTS then the others will
+	 * timeout soon as well. Let's just stop everything
+	 * and forget we wanted to page.
+	 */
+	paging_request_stop(NULL, subscr, NULL, NULL);
+	subscr->is_paging = 0;
+
 	/* Inform parts of the system we don't know */
 	sig_data.subscr = subscr;
 	sig_data.bts	= conn ? conn->bts : NULL;
@@ -96,15 +105,6 @@ static int subscr_paging_dispatch(unsigned int hooknum, unsigned int event,
 		&sig_data
 	);
 
-	/*
-	 * Stop paging on all other BTS. E.g. if this is
-	 * the first timeout on a BTS then the others will
-	 * timeout soon as well. Let's just stop everything
-	 * and forget we wanted to page.
-	 */
-	paging_request_stop(NULL, subscr, NULL, NULL);
-	subscr->is_paging = 0;
-
 	llist_for_each_entry_safe(request, tmp, &subscr->requests, entry) {
 		llist_del(&request->entry);
 		request->cbfn(hooknum, event, msg, data, request->param);
-- 
2.3.5




More information about the OpenBSC mailing list