Commit Graph
920 Commits
Author SHA1 Message Date
Wu Jing 2c7ee8cd20 avoid segfault in S1AP when doing ReleaseCommane s1ap_ue_context=NULL is possible 2019-06-08 13:40:19 +09:00
Wu Jing 61fc53f851 skip crnti if c-plane is not completed 2019-06-08 13:30:09 +09:00
Raphael Defosseux f31694533e fix a few cppcheck errors.
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2019-04-26 13:53:06 +02:00
Louis Adrien Dufrene e5eb58d227 Fix for CU/DU split error. To test. 2019-04-26 08:37:46 +02:00
Louis Adrien Dufrene 5ae494e974 merge from develop 2019-04-16 09:13:25 +02:00
Louis Adrien Dufrene d7cddc2825 Bug fix of drx_config == PrNothing is now handled. Bug fix for dci0_ongoing not working. To investigate 2019-04-15 10:57:39 +02:00
OAI-admin 7dc2b23115 minor modification in print info 2019-04-11 08:45:27 +02:00
OAI-admin 58082d84b8 Clean version. Check if there is a bug to fix. 2019-04-11 08:37:52 +02:00
OAI-admin 85ebe2d261 Build fix 2019-04-11 08:16:41 +02:00
Louis Adrien Dufrene 46b0a9fb38 Remove bypass_cdrx variable and add cdrx_waiting_ack. The CDRX is now activated at RRC COnnection Reconfiguration Complete reception. To Test 2019-04-11 07:36:05 +02:00
Louis Adrien Dufrene 62fba7c03d To clean and test: in rrc_eNB.c RRC Connection reconfiguration: CAT-M1 should not be configured 2019-04-10 10:19:36 +02:00
Louis Adrien Dufrene 3406634b6b This is version 1.0. To test. Cleanup of phy_procedures_lte_eNb.c eNB_scheduler_dlsch.c eNB_scheduler_ulsch.c pre_processor.c and asn1_msg.c 2019-04-10 08:48:37 +02:00
Louis Adrien Dufrene a73f639d8a Cleanup of rrc_eNB.c 2019-04-09 10:01:48 +02:00
frtabu 3535263cc3 Add a LOG in nas_config.c, apply astyle for the 6 files CI mentioned as not well formatted 2019-04-08 18:21:03 +02:00
frtabu 30b7c973e0 merge nfapi_cleanup 2019-04-05 18:43:40 +02:00
Louis Adrien Dufrene 7817358197 Cleanup of enb_config.c config.c asn1_msg.c asn1_msg.h 2019-04-05 11:56:29 +02:00
Stefan Schaffelder 42e0929a0c apply last diff from ssr to local orange_cdrx branch. Remove SSR comments 2019-04-04 10:15:38 +02:00
Louis Adrien Dufrene 81f04d2982 Apply diff between ssr (CDRX) branch and develop 2019-04-04 08:17:26 +02:00
Robert Schmidt 896ea4a72a Fix: Check for node type in L2_interface only when not UE 2019-03-26 13:37:14 +01:00
Robert Schmidt 024007716a Check type of node using NODE_IS_CU/DU/MONOLITHIC macros 2019-03-26 13:15:02 +01:00
Robert Schmidt f0fced85f2 Execute pdcp_run from rrc_data_req only when in CU mode 2019-03-26 10:50:11 +01:00
Robert Schmidt 4f6b1e46a5 Remove warnings for DU_send_INITIAL_UL_RRC_MESSAGE_TRANSFER() include 2019-03-23 17:10:43 +01:00
Robert Schmidt 9611a22a65 Remove warnings in RRC 2019-03-23 16:40:47 +01:00
Robert Schmidt 7519b8e061 Free UE in RRC/S1/GTP if not DU 2019-03-23 16:20:43 +01:00
Robert Schmidt 1f590efe2b Merge branch 'develop' into feature-127-protocol-split 2019-03-19 14:49:07 +01:00
Raphael Defosseux 872a99fbec Merge remote-tracking branch 'origin/eMTC-testing' into develop_integration_2019_w11 2019-03-14 21:48:02 +01:00
Robert Schmidt 62d9b8cf36 Merge branch 'develop' into feature-127-protocol-split 2019-03-14 13:10:21 +01:00
Cedric Roux 9456fe584a x2ap: timers, cleanup
This commit introduces X2AP timers (t_reloc_prep, tx2_reloc_overall).
You need to set the values in the configuration file.

X2AP can be enabled or disabled in the configuration file too (disabled
by default).

Some deadcode was removed.
2019-03-13 15:28:37 +01:00
Raphael Defosseux d8e16e37a5 Merge remote-tracking branch 'origin/develop' into eMTC-testing
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2019-03-13 14:17:24 +01:00
Raphael Defosseux 95569173d5 Merge remote-tracking branch 'origin/issue407_nos1_siml1_datapath' into develop_integration_2019_w10 2019-03-11 10:37:42 +01:00
frtabu 753c2f446d apply astyle, fix compilation warnings in raw aeth transport and kernel modules 2019-03-10 00:04:12 +01:00
Robert Schmidt 7edf4387f9 Fix bug in eNB: correctly set brOption for RRC R14 2019-03-08 16:58:45 +01:00
frtabu c9dcaa53af noS1 woking with tun interfaces and basic simu 2019-03-08 16:00:09 +01:00
Robert Schmidt 02d99edf23 Fix cppcheck errors: RRC, F1AP 2019-03-07 14:16:16 +01:00
Cedric Roux 78b6fef63c fix compilation in nos1 mode
Some #if defined(ENABLE_USE_MME)/#endif were added here and there.
The nos1 softmodem has not been tested, maybe this commit breaks
things.
2019-03-05 14:56:42 +01:00
Cedric Roux c394188e73 x2: first implementation of ID management, some cleanup
Some deadcode was removed.

The implementation of the ID management is not finished.
It will only work if the handover is successful. No error
recovery has been done. For error recovery, we need to
implement the X2AP timers. As it is, in case of error, an ID
might very well never be released.

It has been tested with 1 and 2 UEs doing handover more or less
at the same time.
2019-03-05 14:56:42 +01:00
Konstantinos Alexandris 02193f4bab x2: some cleanup in instance management
- manage target eNB based on target cell id received by measurement report
  for Handover Request
- manage source eNB based on association id for Handover Request Ack
- use only x2ap instance and not x2ap data instance points to x2ap instance
2019-03-05 14:56:42 +01:00
Konstantinos Alexandris 3179722161 x2: bug fixes
- free correctly in rrc_eNB_free_mem_UE_context
- check for existence of ue_context.handover_info in rrc_enb_process_itti_msg
- check return value sctp_peeloff in sctp_handle_new_association_req_multi
  and exit in case of failure
2019-03-05 14:56:42 +01:00
Konstantinos Alexandris 52a52eefb9 X2AP UE Context Release (generate/handle message), Release eNB resources 2019-03-05 14:53:00 +01:00
Konstantinos Alexandris 4b5c42115d bugfix: Path switch request ack (manage re-established/released E-RABs) 2019-03-05 14:46:21 +01:00
Konstantinos Alexandris ca19953200 x2ap: bugfixes Store UE Capability at target, Key derivation (keNB star) at source 2019-03-05 14:22:40 +01:00
Konstantinos Alexandris eb59c2cd68 bugfix: fix realtime issues with RRC (race condition)
When testing x2 handover, we found a race issue between the
RRC thread and the phy/mac thread (which is calling rrc_rx_tx).

The UE context was updated by the RRC thread but in the middle of
the update (which consists of several function calls and variables'
updates) the context was accessed by rrc_rx_tx. At this point, the
context was in an inconsistent state.

The solution is to access RRC data in the RRC thread only.
The function rrc_rx_tx now just sends an ITTI message to the
RRC thread. When receiving this message, the RRC thread does
the processing that was done by the function rrc_rx_tx (in
the new function rrc_subframe_process).

This way, the race condition disappears.

However we now send an ITTI message from the phy/mac thread to
the RRC thread at each subframe. That might increase the processing
time of the eNB. So maybe it's not the best solution. It may also
improve the realtime performance because less work is done by the
phy/mac realtime thread. To be checked somehow.

Also, it may be possible that some other RRC functions are still
called by the phy/mac thread, which should also be checked and
replaced by ITTI messages (if this solution is considered to be
correct).
2019-03-05 14:22:40 +01:00
Robert Schmidt f9c4c501e3 Merge branch 'develop' into feature-127-protocol-split 2019-03-05 14:17:38 +01:00
frtabu 87a8cb28a5 basic and rf simulators as config option to allow noS1 datapath debug. 2019-03-04 22:07:32 +01:00
nepes 22e13cb64c resolving conflicts 2019-03-02 23:28:49 +01:00
nepes 40cb79e44f Merge remote-tracking branch 'origin/develop' into eMTC-testing 2019-03-02 22:41:48 +01:00
nepes 4c505b8639 log removal and testing for Cat-M1 2019-03-02 15:34:48 +01:00
Raphael Defosseux 0f11865fa4 Merge remote-tracking branch 'origin/issue-404-pdcp-integrity' into develop_integration_2019_w09
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2019-02-28 14:37:10 +01:00
Cedric Roux e3782b5ca2 bugfix: fix PDCP sequence management (plus some cleanup)
With the introduction of X2AP into develop, the UEs now have to regularly
send measurement reports.

In the logs of the eNB, we see:

[OSA]   Mismatch found in integrity for algorithm 2,
        got e0.a0.c2.66, expecting a5.9c.cb.57
[PDCP]   [OSA][RB 1] eNB failed to validate MAC-I of incoming PDU

This is a bug in the PDCP layer that uses wrong parameters to compute the
integrity.

This commit fixes this bug.

The function pdcp_is_rx_seq_number_valid was removed. Its processing
has been directly integrated into the function pdcp_data_ind.

The function pdcp_mark_current_pdu_as_received is not called anymore.
Its processing was not used later on, so as of today, not calling it does
not introduce any functional change.

The function pdcp_validate_security takes now as parameters both
SN and HFN. Same for the function pdcp_get_next_count_rx.

Useless constants PDCP_SN_5BIT, PDCP_SN_7BIT and PDCP_SN_12BIT have been
removed.

The compilation option ENABLE_SECURITY has been removed. It's now always
on. (This may impact some use cases.)

The PDCP for DRB using RLC AM is not correct. It was not correct before
this commit (apart from the integrity bug). We should deal with a list
of PDUs and transmit packets to upper layers as detailed in the specs.
Today we transmit the PDU as soon as we get it. We don't care about
duplicates, in-order delivery, timeouts.

Also, we don't deal with "PDCP re-establishment". Not sure how that impacts
the software.

And, last but not least, there is still no ROHC.
2019-02-27 12:33:04 +01:00
OAI-admin c22f10aa72 Add PHR/BSR to RRCConnectionSetup + add some debug for DLSCH scheduling 2019-02-26 12:44:59 +01:00