path: root/src/libbsc/bsc_api.c
diff options
authorNeels Hofmeyr <neels@hofmeyr.de>2018-05-04 22:47:45 +0200
committerNeels Hofmeyr <neels@hofmeyr.de>2018-05-05 01:50:49 +0200
commita82c0b1c42796368355e3596a3347b2cf356ba70 (patch)
treec74af59d305115e8b3b42883cb2a9e273dcfb9b0 /src/libbsc/bsc_api.c
parentbf7099262adf0f27e71a08387747c5cb0d459360 (diff)
dyn TS, assignment: set lchan state to LCHAN_S_ACT_REQ in the proper place
Set lchan->state to LCHAN_S_ACT_REQ in rsl_chan_activate_lchan(), not in handle_new_assignment(). This is the first part of a fix for dynamic timeslots handling in the gscon. Rationale: In rsl_chan_activate_lchan(), we may choose to set the lchan state to LCHAN_S_REL_REQ and wait for dyn TS switchover from PDCH. So the caller from bsc_api.c handle_new_assignment() must not bluntly set the state to LCHAN_S_ACT_REQ, which is not accurate in the case of dyn TS switchover. In case of dyn TS switchover, a later release ack received from the BTS will cause rsl_chan_activate_lchan() to be called again, at which point we may accurately set state LCHAN_S_ACT_REQ, and continue the Assignment. Related: OS#3211 Change-Id: Iedb4fb63bf1959d5f1d2c6edb6a7f5097ff16bd7
Diffstat (limited to 'src/libbsc/bsc_api.c')
1 files changed, 0 insertions, 2 deletions
diff --git a/src/libbsc/bsc_api.c b/src/libbsc/bsc_api.c
index 19859cf8a..13fe099ec 100644
--- a/src/libbsc/bsc_api.c
+++ b/src/libbsc/bsc_api.c
@@ -156,8 +156,6 @@ static int handle_new_assignment(struct gsm_subscriber_connection *conn, int cha
/* remember that we have the channel */
conn->secondary_lchan = new_lchan;
new_lchan->conn = conn;
- rsl_lchan_set_state(new_lchan, LCHAN_S_ACT_REQ);
return 0;