diff options
author | Vadim Yanitskiy <vyanitskiy@sysmocom.de> | 2021-10-30 02:13:29 +0300 |
---|---|---|
committer | Vadim Yanitskiy <vyanitskiy@sysmocom.de> | 2021-11-04 15:46:04 +0300 |
commit | c13b325877ff87338af6d6e1e352aaf57cf53159 (patch) | |
tree | b10f42998bda6f6fea1d26ce73ae6f458cf69c4c /include/osmo-bts | |
parent | 5c705a676d8604b2b25472bc5ad9ae7e23cc3cc8 (diff) |
l1sap: rework handling of DATA.ind on SACCH
Currently an Uplink SACCH block is being passed to LAPDm first, and
then gets forwareded to the BSC in handle_ms_meas_report(), together
with the Uplink measurements collected so far.
This approach has a serious flaw: handle_ms_meas_report() won't be
called if an Uplink block contains SAPI=3 data (SMS) or was not
decoded at all (len=0) fow whatever reason. Therefore, no RSL
MEASurement RESult message will be sent to the BSC.
Rename handle_ms_meas_report() to lchan_meas_handle_sacch(), and call
it from l1sap_ph_data_ind(). This way perioduc RSL MEASurement RESult
messages will be sent regardless of what happens on Uplink SACCH.
Change-Id: Ifed91f87fd653debc87a09da3fd31ad64a13f330
Fixes: TC_meas_res_speech_{tchf, tchh}_sapi3
Related: SYS#5319
Diffstat (limited to 'include/osmo-bts')
-rw-r--r-- | include/osmo-bts/measurement.h | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/include/osmo-bts/measurement.h b/include/osmo-bts/measurement.h index f63a05a0..ad86d8de 100644 --- a/include/osmo-bts/measurement.h +++ b/include/osmo-bts/measurement.h @@ -20,8 +20,6 @@ bool ts45008_83_is_sub(struct gsm_lchan *lchan, uint32_t fn); int is_meas_complete(struct gsm_lchan *lchan, uint32_t fn); -int handle_ms_meas_report(struct gsm_lchan *lchan, - const struct gsm48_hdr *gh, - unsigned int len); +void lchan_meas_handle_sacch(struct gsm_lchan *lchan, struct msgb *msg); #endif |