[PATCH] osmo-msc[master]: a_iface_bssap: Treat inbound RESET as implicit RESET ACK

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/.

Harald Welte gerrit-no-reply at lists.osmocom.org
Sun Mar 18 21:38:27 UTC 2018


Review at  https://gerrit.osmocom.org/7375

a_iface_bssap: Treat inbound RESET as implicit RESET ACK

If both sides are sending RESET at the same time, they are not aware
of each other.  This leads to synchronization problems in wich
the remote side is transmitting e.g. a COMPL L3 INFO after receiving
a RESET ACK, but before even receiving or processing the RESET in
the inverse direction.  So let's treat receiving a RESET as an implicit
RESET ACK to any RESET we may have sent.

Change-Id: I0ae34fbb3735592bb7cffa5aaf421b14a8acc90e
---
M src/libmsc/a_iface_bssap.c
1 file changed, 4 insertions(+), 0 deletions(-)


  git pull ssh://gerrit.osmocom.org:29418/osmo-msc refs/changes/75/7375/1

diff --git a/src/libmsc/a_iface_bssap.c b/src/libmsc/a_iface_bssap.c
index f131eca..2be9afa 100644
--- a/src/libmsc/a_iface_bssap.c
+++ b/src/libmsc/a_iface_bssap.c
@@ -121,6 +121,10 @@
 
 	if (!a_conn_info->bsc->reset)
 		a_start_reset(a_conn_info->bsc, true);
+
+	/* Treat an incoming RESET like an ACK to any RESET request we may have just sent.
+	 * After all, what we wanted is the A interface to be reset, which we now know has happened. */
+	a_reset_ack_confirm(a_conn_info->bsc->reset);
 }
 
 /* Endpoint to handle BSSMAP reset acknowlegement */

-- 
To view, visit https://gerrit.osmocom.org/7375
To unsubscribe, visit https://gerrit.osmocom.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I0ae34fbb3735592bb7cffa5aaf421b14a8acc90e
Gerrit-PatchSet: 1
Gerrit-Project: osmo-msc
Gerrit-Branch: master
Gerrit-Owner: Harald Welte <laforge at gnumonks.org>



More information about the gerrit-log mailing list