From 4d1d2e78b1f598101dadc8a6212b2c2e43044f5c Mon Sep 17 00:00:00 2001 From: Alexander Couzens Date: Tue, 8 Oct 2019 17:31:10 +0200 Subject: sgsn: Gb: implementing PS Paging when MS is MM_STANDBY When the MS is in MM_STANDBY, the Routing Area is known, but not the exact cell. Start the paging procedure. (Even this is only supported for the last known cell, not the Routing Area. Routing Area paging is not yet supported.) Change-Id: Icc2c6ba70f8f74054546a1e31741fc90b232a23c --- src/sgsn/sgsn_libgtp.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/sgsn/sgsn_libgtp.c b/src/sgsn/sgsn_libgtp.c index a39687f8a..c45431ae3 100644 --- a/src/sgsn/sgsn_libgtp.c +++ b/src/sgsn/sgsn_libgtp.c @@ -54,6 +54,7 @@ #include #include #include +#include #include #include @@ -664,6 +665,11 @@ static int cb_data_ind(struct pdp_t *lib, void *packet, unsigned int len) /* FIXME: queue the packet we received from GTP */ break; 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) + gprs_gb_page_ps_ra(mm); + + /* FIXME: queue the packet we received from GTP */ break; default: LOGP(DGPRS, LOGL_ERROR, "GTP DATA IND for TLLI %08X in state " -- cgit v1.2.3