Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
O
OpenXG-RAN
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
lizhongxiao
OpenXG-RAN
Commits
0f2cb0aa
Commit
0f2cb0aa
authored
7 years ago
by
Xu Bo
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix the timer between reestablishment and reestablishmentComplete
parent
27c3074f
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
20 additions
and
6 deletions
+20
-6
openair2/LAYER2/MAC/eNB_scheduler.c
openair2/LAYER2/MAC/eNB_scheduler.c
+10
-1
openair2/RRC/LITE/rrc_eNB.c
openair2/RRC/LITE/rrc_eNB.c
+10
-5
No files found.
openair2/LAYER2/MAC/eNB_scheduler.c
View file @
0f2cb0aa
...
...
@@ -712,7 +712,16 @@ eNB_dlsch_ulsch_scheduler(module_id_t module_idP, frame_t frameP,
RC
.
mac
[
module_idP
]
->
UE_list
.
UE_sched_ctrl
[
i
].
ue_reestablishment_reject_timer
++
;
if
(
RC
.
mac
[
module_idP
]
->
UE_list
.
UE_sched_ctrl
[
i
].
ue_reestablishment_reject_timer
>=
RC
.
mac
[
module_idP
]
->
UE_list
.
UE_sched_ctrl
[
i
].
ue_reestablishment_reject_timer_thres
)
{
RC
.
mac
[
module_idP
]
->
UE_list
.
UE_sched_ctrl
[
i
].
ue_reestablishment_reject_timer
=
0
;
RC
.
mac
[
module_idP
]
->
UE_list
.
UE_sched_ctrl
[
i
].
ue_reestablishment_reject_timer
=
0
;
for
(
int
ue_id_l
=
0
;
ue_id_l
<
NUMBER_OF_UE_MAX
;
ue_id_l
++
)
{
if
(
reestablish_rnti_map
[
ue_id_l
][
0
]
==
rnti
)
{
// clear currentC-RNTI from map
reestablish_rnti_map
[
ue_id_l
][
0
]
=
0
;
reestablish_rnti_map
[
ue_id_l
][
1
]
=
0
;
break
;
}
}
for
(
int
ii
=
0
;
ii
<
NUMBER_OF_UE_MAX
;
ii
++
)
{
LTE_eNB_ULSCH_t
*
ulsch
=
NULL
;
ulsch
=
RC
.
eNB
[
module_idP
][
CC_id
]
->
ulsch
[
ii
];
...
...
This diff is collapsed.
Click to expand it.
openair2/RRC/LITE/rrc_eNB.c
View file @
0f2cb0aa
...
...
@@ -1195,9 +1195,10 @@ rrc_eNB_generate_RRCConnectionReestablishment(
// remove UE after 10 frames after RRCConnectionReestablishmentRelease is triggered
//ue_context_pP->ue_context.ue_release_timer_thres = 100;
// activate release timer, if RRCComplete not received after 100 frames, remove UE
ue_context_pP
->
ue_context
.
ue_reestablishment_timer
=
1
;
int
UE_id
=
find_UE_id
(
ctxt_pP
->
module_id
,
ctxt_pP
->
rnti
);
RC
.
mac
[
ctxt_pP
->
module_id
]
->
UE_list
.
UE_sched_ctrl
[
UE_id
].
ue_reestablishment_reject_timer
=
1
;
// remove UE after 100 frames after RRCConnectionReestablishmentRelease is triggered
ue_context_pP
->
ue_context
.
ue_reestablishmen
t_timer_thres
=
1000
;
RC
.
mac
[
ctxt_pP
->
module_id
]
->
UE_list
.
UE_sched_ctrl
[
UE_id
].
ue_reestablishment_rejec
t_timer_thres
=
1000
;
}
//-----------------------------------------------------------------------------
...
...
@@ -5482,12 +5483,12 @@ rrc_eNB_decode_ccch(
rrc_eNB_generate_RRCConnectionReestablishmentReject
(
ctxt_pP
,
ue_context_p
,
CC_id
);
break
;
}
if
(
ue_context_p
->
ue_context
.
ue_reestablishment_timer
>
0
){
int
UE_id
=
find_UE_id
(
ctxt_pP
->
module_id
,
c_rnti
);
if
(
ue_context_p
->
ue_context
.
ue_reestablishment_timer
>
0
||
RC
.
mac
[
ctxt_pP
->
module_id
]
->
UE_list
.
UE_sched_ctrl
[
UE_id
].
ue_reestablishment_reject_timer
>
0
){
LOG_I
(
RRC
,
PROTOCOL_RRC_CTXT_UE_FMT
" RRCConnectionReestablishment(Previous) don't complete, let's reject the UE
\n
"
,
PROTOCOL_RRC_CTXT_UE_ARGS
(
ctxt_pP
));
rrc_eNB_generate_RRCConnectionReestablishmentReject
(
ctxt_pP
,
ue_context_p
,
CC_id
);
ue_context_p
->
ue_context
.
ue_reestablishment_timer_thres
=
1000
;
break
;
}
LOG_D
(
RRC
,
...
...
@@ -6123,6 +6124,8 @@ if (ue_context_p->ue_context.nb_of_modify_e_rabs > 0) {
DCCH
,
sdu_sizeP
);
{
int
UE_id
=
find_UE_id
(
ctxt_pP
->
module_id
,
ctxt_pP
->
rnti
);
RC
.
mac
[
ctxt_pP
->
module_id
]
->
UE_list
.
UE_sched_ctrl
[
UE_id
].
ue_reestablishment_reject_timer
=
0
;
rnti_t
reestablish_rnti
=
0
;
// select C-RNTI from map
for
(
i
=
0
;
i
<
NUMBER_OF_UE_MAX
;
i
++
)
{
...
...
@@ -6163,7 +6166,9 @@ if (ue_context_p->ue_context.nb_of_modify_e_rabs > 0) {
#endif
}
//ue_context_p->ue_context.ue_release_timer = 0;
ue_context_p
->
ue_context
.
ue_reestablishment_timer
=
1
;
ue_context_p
->
ue_context
.
ue_reestablishment_timer
=
1
;
// remove UE after 100 frames after RRCConnectionReestablishmentRelease is triggered
ue_context_p
->
ue_context
.
ue_reestablishment_timer_thres
=
1000
;
}
break
;
...
...
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment