Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added code to get imsi64 from timer handlers #2220

Merged

Conversation

rsarwad
Copy link
Contributor

@rsarwad rsarwad commented Aug 6, 2020

Description:
Issue #1 : While testing the Implicit detach timer with MME restart observed that UE contexts were not updated to redis DB. Because on timer expiry, imsi64 was neither received from timer module nor got from the handler function. So imsi64 was set to "INVALID_IMSI64". Only for valid imsi64 values, UE contexts are updated to DB.
Approach followed to address above issue:
Modified code to get imsi64 for all timers on expiry.
Issue #2: The prototype of timer start function is int timer_setup(
uint32_t interval_sec, uint32_t interval_us, task_id_t task_id,
int32_t instance, timer_type_t type, void* timer_arg, size_t arg_size,
long* timer_id)
Which expects seconds and micro-seconds to be of datatype uint32_t, but for most timers while calling timer_setup, seconds and micro-seconds were defined as long
Modified the datatype of duration of all timers to to match prototype of timer start function.
Test Plan:
Executed s1ap tester sanity test suite

Signed-off-by: rashmi <rashmi.sarwad@radisys.com>
Copy link
Collaborator

@ssanadhya ssanadhya left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please clean-up this PR to remove the committed code from @themarwhal .

@rsarwad rsarwad force-pushed the rsarwad_new_pr_get_imsi_from_timer_handlers branch from a6f7d3c to 6b1a7f4 Compare August 12, 2020 10:46
Signed-off-by: rashmi <rashmi.sarwad@radisys.com>
@@ -802,7 +805,7 @@ static int _emm_tracking_area_update_accept(

OAILOG_INFO(
LOG_NAS_EMM,
"EMM-PROC - Timer T3450 (%ld) expires in %ld"
"EMM-PROC - Timer T3450 (%ld) expires in %d"
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As timer.sec has changed from "long" to "uint32_t", the printf specifier would change from %ld to %lu .

@@ -1953,8 +1956,7 @@ static int _emm_attach_accept_retx(emm_context_t* emm_context) {
attach_proc->ue_id);
OAILOG_DEBUG(
LOG_NAS_EMM,
"UE " MME_UE_S1AP_ID_FMT
" Timer T3450 (%ld) expires in %ld seconds\n",
"UE " MME_UE_S1AP_ID_FMT " Timer T3450 (%ld) expires in %d seconds\n",
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Use %lu instead of %d for uint32_t

Signed-off-by: rashmi <rashmi.sarwad@radisys.com>
@ssanadhya ssanadhya merged commit fc0a56c into magma:master Aug 17, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants