diff options
author | Stefan Sperling <ssperling@sysmocom.de> | 2018-11-19 17:18:41 +0100 |
---|---|---|
committer | Stefan Sperling <ssperling@sysmocom.de> | 2018-11-19 17:30:37 +0100 |
commit | 797558ea1768e464f9559c5f7a4f3f4285c5de25 (patch) | |
tree | 6e03a9424741aabfd21994afa9256f2001a33a2f /tests | |
parent | 5a25c3ec4dcb6d3789c6ce94e3c3a165cc5c04d8 (diff) |
send NS_POUT_UNBLOCK_ACK before signalling S_NS_UNBLOCK
In gprs_ns_process_msg(), we were dispatching the S_NS_UNBLOCK
signal before sending out the NS_POUT_UNBLOCK_ACK message.
Signal handlers might send messages to the other side, assuming
that NS is now unblocked. However, since such messages will arrive
before the UNBLOCK_ACK message the receiver might discard them.
This problem has been observed with our TTCN3 BSSGP_Emulation
as a peer to osmo-pcu.
This patch makes TTCN3 PCU TC_paging() test pass regardless of
whether the test or osmo-pcu is started first. Before this patch,
this test would only pass if the test was started before osmo-pcu.
A remaining problem is that the test does not yet keep passing
reliably unless osmo-pcu is restarted between test runs.
Change-Id: I3af54a14bb6bcfa167c9a9d9f67835e7f5b9f1bb
Related: OS#2890
Related: OS#2388
Diffstat (limited to 'tests')
-rw-r--r-- | tests/gb/gprs_ns_test.ok | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/tests/gb/gprs_ns_test.ok b/tests/gb/gprs_ns_test.ok index 669e1824..3cb1dfcf 100644 --- a/tests/gb/gprs_ns_test.ok +++ b/tests/gb/gprs_ns_test.ok @@ -133,10 +133,10 @@ result (ALIVE) = 1 PROCESSING UNBLOCK from 0x01020304:1111 06 -==> got signal NS_UNBLOCK, NS-VC 0x1122/1.2.3.4:1111 MESSAGE to BSS, msg length 1 07 +==> got signal NS_UNBLOCK, NS-VC 0x1122/1.2.3.4:1111 result (UNBLOCK) = 1 PROCESSING ALIVE_ACK from 0x01020304:1111 @@ -277,10 +277,10 @@ result (ALIVE) = 1 PROCESSING UNBLOCK from 0x01020304:1111 06 -==> got signal NS_UNBLOCK, NS-VC 0x1001/1.2.3.4:1111 MESSAGE to BSS, msg length 1 07 +==> got signal NS_UNBLOCK, NS-VC 0x1001/1.2.3.4:1111 result (UNBLOCK) = 1 PROCESSING ALIVE_ACK from 0x01020304:1111 @@ -318,10 +318,10 @@ result (ALIVE) = 1 PROCESSING UNBLOCK from 0x01020304:2222 06 -==> got signal NS_UNBLOCK, NS-VC 0x2001/1.2.3.4:2222 MESSAGE to BSS, msg length 1 07 +==> got signal NS_UNBLOCK, NS-VC 0x2001/1.2.3.4:2222 result (UNBLOCK) = 1 PROCESSING ALIVE_ACK from 0x01020304:2222 @@ -421,10 +421,10 @@ result (ALIVE) = 1 PROCESSING UNBLOCK from 0x01020304:1111 06 -==> got signal NS_UNBLOCK, NS-VC 0x2001/1.2.3.4:1111 MESSAGE to BSS, msg length 1 07 +==> got signal NS_UNBLOCK, NS-VC 0x2001/1.2.3.4:1111 result (UNBLOCK) = 1 PROCESSING ALIVE_ACK from 0x01020304:1111 @@ -597,10 +597,10 @@ result (ALIVE) = 1 PROCESSING UNBLOCK from 0x01020304:2222 06 -==> got signal NS_UNBLOCK, NS-VC 0x1001/1.2.3.4:2222 MESSAGE to BSS, msg length 1 07 +==> got signal NS_UNBLOCK, NS-VC 0x1001/1.2.3.4:2222 result (UNBLOCK) = 1 PROCESSING ALIVE_ACK from 0x01020304:2222 |