bsc: make ho_config_tests more robust against timing

In f_probe_for_handover disable the RSL emulation before the vty handover
command.  Otherwise, osmo-bsc may be too fast to issue the handoverCommand, so
that RSLem still handles it and says: "RSL for unknown Dchan".

(f_probe_for_handover() receives the handoverCommand directly, just to detect
whether a handover would be initiated, and then quickly aborts the handover
procedure.)

Related: OS#4264
Change-Id: I7f73ef8cbdf46e31a46c9e1b7ad0fa2bd41c0a12
This commit is contained in:
Neels Hofmeyr 2020-05-11 00:16:42 +02:00 committed by laforge
parent 71238c135d
commit b3fc898c2d
1 changed files with 5 additions and 5 deletions

View File

@ -3668,6 +3668,11 @@ private function f_probe_for_handover(charstring log_label,
boolean is_inter_bsc_handover := false)
runs on MSC_ConnHdlr
{
/* We're going to thwart any and all handover attempts, just be ready to handle (and ignore) handover target
* lchans to be established on bts 1 or bts 2. */
f_rslem_suspend(RSL1_PROC);
f_rslem_suspend(RSL2_PROC);
var RSL_Message rsl;
var charstring log_msg := " (expecting handover)"
@ -3677,11 +3682,6 @@ runs on MSC_ConnHdlr
log("f_probe_for_handover starting: " & log_label & ": " & log_descr & log_msg);
f_vty_transceive(BSCVTY, handover_vty_cmd);
/* We're going to thwart any and all handover attempts, just be ready to handle (and ignore) handover target
* lchans to be established on bts 1 or bts 2. */
f_rslem_suspend(RSL1_PROC);
f_rslem_suspend(RSL2_PROC);
timer T := 2.0;
T.start;