Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
O
OpenXG UE
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
Michael Black
OpenXG UE
Commits
92ba86a8
Commit
92ba86a8
authored
Sep 06, 2021
by
Laurent Thomas
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
add F1-U callbacks implem
parent
8d9480a7
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
30 additions
and
26 deletions
+30
-26
common/utils/assertions.h
common/utils/assertions.h
+1
-7
common/utils/backtrace.c
common/utils/backtrace.c
+1
-6
common/utils/backtrace.h
common/utils/backtrace.h
+0
-3
openair2/F1AP/f1ap_du_ue_context_management.c
openair2/F1AP/f1ap_du_ue_context_management.c
+5
-0
openair2/LAYER2/nr_pdcp/nr_pdcp_oai_api.c
openair2/LAYER2/nr_pdcp/nr_pdcp_oai_api.c
+23
-10
No files found.
common/utils/assertions.h
View file @
92ba86a8
...
...
@@ -26,14 +26,8 @@
#include <stdlib.h>
#include <inttypes.h>
#include <platform_types.h>
#include <common/utils/backtrace.h>
#if defined(ENB_MODE)
# define display_backtrace()
#else
# include "backtrace.h"
#endif
void
output_log_mem
(
void
);
#define _Assert_Exit_ \
fprintf(stderr, "\nExiting execution\n"); \
display_backtrace(); \
...
...
common/utils/backtrace.c
View file @
92ba86a8
...
...
@@ -28,7 +28,7 @@
#include <signal.h>
#include <execinfo.h>
#include
"backtrace.h"
#include
<common/utils/backtrace.h>
/* Obtain a backtrace and print it to stdout. */
void
display_backtrace
(
void
)
{
...
...
@@ -49,8 +49,3 @@ void display_backtrace(void) {
free
(
strings
);
}
void
backtrace_handle_signal
(
siginfo_t
*
info
)
{
display_backtrace
();
//exit(EXIT_FAILURE);
}
common/utils/backtrace.h
View file @
92ba86a8
...
...
@@ -26,10 +26,7 @@
#ifdef __cplusplus
extern
"C"
{
#endif
void
display_backtrace
(
void
);
void
backtrace_handle_signal
(
siginfo_t
*
info
);
#ifdef __cplusplus
}
#endif
...
...
openair2/F1AP/f1ap_du_ue_context_management.c
View file @
92ba86a8
...
...
@@ -52,6 +52,10 @@ boolean_t DURecvCb( protocol_ctxt_t *ctxt_pP,
const
pdcp_transmission_mode_t
modeP
,
const
uint32_t
*
sourceL2Id
,
const
uint32_t
*
destinationL2Id
)
{
// The buffer comes from the stack in gtp-u thread, we have a make a separate buffer to enqueue in a inter-thread message queue
mem_block_t
*
sdu
=
get_free_mem_block
(
sdu_buffer_sizeP
,
__func__
);
memcpy
(
sdu
->
data
,
sdu_buffer_pP
,
sdu_buffer_sizeP
);
du_rlc_data_req
(
ctxt_pP
,
srb_flagP
,
false
,
rb_idP
,
muiP
,
confirmP
,
sdu_buffer_sizeP
,
sdu
);
return
true
;
}
...
...
@@ -64,6 +68,7 @@ int DU_handle_UE_CONTEXT_SETUP_REQUEST(instance_t instance,
F1AP_UEContextSetupRequest_t
*
container
;
int
i
;
DevAssert
(
pdu
);
AssertFatal
(
0
,
""
);
msg_p
=
itti_alloc_new_message
(
TASK_DU_F1
,
0
,
F1AP_UE_CONTEXT_SETUP_REQ
);
f1ap_ue_context_setup_req_t
*
f1ap_ue_context_setup_req
=
&
F1AP_UE_CONTEXT_SETUP_REQ
(
msg_p
);
container
=
&
pdu
->
choice
.
initiatingMessage
->
value
.
choice
.
UEContextSetupRequest
;
...
...
openair2/LAYER2/nr_pdcp/nr_pdcp_oai_api.c
View file @
92ba86a8
...
...
@@ -160,8 +160,7 @@ static void enqueue_rlc_data_req(const protocol_ctxt_t *const ctxt_pP,
const
mui_t
muiP
,
confirm_t
confirmP
,
sdu_size_t
sdu_sizeP
,
mem_block_t
*
sdu_pP
,
void
*
_unused1
,
void
*
_unused2
)
mem_block_t
*
sdu_pP
)
{
int
i
;
int
logged
=
0
;
...
...
@@ -206,9 +205,7 @@ void du_rlc_data_req(const protocol_ctxt_t *const ctxt_pP,
rb_idP
,
muiP
,
confirmP
,
sdu_sizeP
,
sdu_pP
,
NULL
,
NULL
);
sdu_pP
);
}
/****************************************************************************/
...
...
@@ -529,7 +526,7 @@ rb_found:
LOG_D
(
PDCP
,
"%s(): (srb %d) calling rlc_data_req size %d
\n
"
,
__func__
,
rb_id
,
size
);
//for (i = 0; i < size; i++) printf(" %2.2x", (unsigned char)memblock->data[i]);
//printf("\n");
enqueue_rlc_data_req
(
&
ctxt
,
0
,
MBMS_FLAG_NO
,
rb_id
,
sdu_id
,
0
,
size
,
memblock
,
NULL
,
NULL
);
enqueue_rlc_data_req
(
&
ctxt
,
0
,
MBMS_FLAG_NO
,
rb_id
,
sdu_id
,
0
,
size
,
memblock
);
}
static
void
deliver_sdu_srb
(
void
*
_ue
,
nr_pdcp_entity_t
*
entity
,
...
...
@@ -613,7 +610,7 @@ srb_found:
memblock
=
get_free_mem_block
(
size
,
__FUNCTION__
);
memcpy
(
memblock
->
data
,
buf
,
size
);
enqueue_rlc_data_req
(
&
ctxt
,
1
,
MBMS_FLAG_NO
,
srb_id
,
sdu_id
,
0
,
size
,
memblock
,
NULL
,
NULL
);
enqueue_rlc_data_req
(
&
ctxt
,
1
,
MBMS_FLAG_NO
,
srb_id
,
sdu_id
,
0
,
size
,
memblock
);
}
else
{
MessageDef
*
message_p
=
itti_alloc_new_message
(
TASK_RRC_GNB
,
0
,
F1AP_DL_RRC_MESSAGE
);
...
...
@@ -1225,9 +1222,25 @@ boolean_t cu_f1u_data_req(
,
const
uint32_t
*
const
sourceL2Id
,
const
uint32_t
*
const
destinationL2Id
#endif
)
{
LOG_E
(
PDCP
,
"Implementation is pending"
);
)
{
MessageDef
*
message_p
=
itti_alloc_new_message_sized
(
TASK_PDCP_ENB
,
0
,
GTPV1U_GNB_TUNNEL_DATA_REQ
,
sizeof
(
gtpv1u_gnb_tunnel_data_req_t
)
+
sdu_buffer_size
+
GTPU_HEADER_OVERHEAD_MAX
);
AssertFatal
(
message_p
!=
NULL
,
"OUT OF MEMORY"
);
gtpv1u_gnb_tunnel_data_req_t
*
req
=&
GTPV1U_GNB_TUNNEL_DATA_REQ
(
message_p
);
uint8_t
*
gtpu_buffer_p
=
(
uint8_t
*
)(
req
+
1
);
memcpy
(
gtpu_buffer_p
+
GTPU_HEADER_OVERHEAD_MAX
,
sdu_buffer
,
sdu_buffer_size
);
req
->
buffer
=
gtpu_buffer_p
;
req
->
length
=
sdu_buffer_size
;
req
->
offset
=
GTPU_HEADER_OVERHEAD_MAX
;
req
->
rnti
=
ctxt_pP
->
rnti
;
req
->
pdusession_id
=
rb_id
;
LOG_D
(
PDCP
,
"%s() (drb %ld) sending message to gtp size %d
\n
"
,
__func__
,
rb_id
,
sdu_buffer_size
);
itti_send_msg_to_task
(
TASK_VARIABLE
,
INSTANCE_DEFAULT
,
message_p
);
return
true
;
}
...
...
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