From da69ced35393a86f03b3a5e503bf3ae1ec80ba41 Mon Sep 17 00:00:00 2001 From: Pau Espin Pedrol Date: Fri, 26 Jun 2020 12:09:34 +0200 Subject: sgsn_libgtp: Avoid ps-paging MS on GMM Suspended state The MS notifies movement to GMM SUSPEND state because it is for instance handling a call and cannot use PDCH anymore. Once it releases the TCH it will ASAP move to either dedicated mode or trigger RAU, which means it will get out of SUSPEND state. So it doesn't make sense to try paging the MS when in that state. Related: OS#4616 Change-Id: Ia245899eb9f16c7f839785def4ceb721a1c3a11b --- src/sgsn/sgsn_libgtp.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'src/sgsn/sgsn_libgtp.c') diff --git a/src/sgsn/sgsn_libgtp.c b/src/sgsn/sgsn_libgtp.c index 717df4ab0..e237eed3b 100644 --- a/src/sgsn/sgsn_libgtp.c +++ b/src/sgsn/sgsn_libgtp.c @@ -661,11 +661,10 @@ static int cb_data_ind(struct pdp_t *lib, void *packet, unsigned int len) switch (mm->gmm_fsm->state) { case ST_GMM_REGISTERED_SUSPENDED: /* initiate PS PAGING procedure */ - LOGMMCTXP(LOGL_INFO, mm, "Paging MS in GMM state %s\n", + LOGMMCTXP(LOGL_INFO, mm, "Dropping DL packet for MS in GMM state %s\n", osmo_fsm_inst_state_name(mm->gmm_fsm)); - gprs_gb_page_ps_ra(mm); - /* FIXME: queue the packet we received from GTP */ - break; + msgb_free(msg); + return -1; case ST_GMM_REGISTERED_NORMAL: OSMO_ASSERT(mm->gb.mm_state_fsm->state != ST_MM_IDLE); if (mm->gb.mm_state_fsm->state == ST_MM_STANDBY) { -- cgit v1.2.3