Commit Graph
5925 Commits
Author SHA1 Message Date
Robert Schmidt b10ba9f88c Fix: don't go beyond 3rd retx 2021-04-14 12:19:12 +02:00
Robert Schmidt 8edacdede4 UL Scheduler: Check vrb_map_UL against symb map 2021-04-14 12:19:04 +02:00
Robert Schmidt e04affbc7c UL scheduler: use correct TDA 2021-04-13 13:15:59 +02:00
Robert Schmidt aca57eb969 DL scheduler: correctly calculate mixed slot TDA, check TDA before scheduling 2021-04-13 13:15:59 +02:00
Robert Schmidt 7f774d5fbc Merge branch 'develop' into integration_2021_wk13_b 2021-04-12 17:23:21 +02:00
Cedric Roux 1a5f10be90 bugfix: nr: free RA process when UE is removed
The bug was:
connect a phone, disconnect, repeat five times. The fifth time the phone
does not reconnect because there is no free RA process.

When an UE is removed, we have to free associated RA processes.
2021-04-06 10:40:37 +02:00
hardy dac2388ed1 Merge remote-tracking branch 'origin/fix-nr-rlc-range-nack' into integration_2021_wk14_a 2021-04-04 08:18:25 +02:00
hardy 02504ef747 Merge remote-tracking branch 'origin/fix-x2-without-gnb' into integration_2021_wk14_a 2021-04-04 08:18:04 +02:00
Cedric Roux 6c6b46985b x2: exit if connection between eNB and gNB breaks
Before this commit, when the gNB crashes, the eNB keeps running.
Same, if the eNB crashes, the gNB keeps running.

In a far past when this happened, the other program (the one not
crashing) was forced to exit.

Then this behavior was changed, for some reason.
But the code was not finished, so now we have a system in an inconsistent
state.

So either we accept that the connection between eNB and gNB can break,
that is one of the programs crashes, and we clean the state of the
program that keeps running. But this is a complex work and it will
surely not survive very long, because someone will change something
in the code later that will break this complex behavior.

Or, simpler, we go back to initial behavior, which is: the program that
did not crash does actually exit when the other crashes.

This commit provides the second solution.

It can easily be reverted whenever someone wants to implement the complex
solution.
2021-03-31 16:39:30 +02:00
Cedric Roux 46c1aff489 fix: do NR only if at least one gNB is connected to the eNB
We used to set 'does_nr' of an UE if we detect ENDC supported in the
UE capabilities.

Then we activate NR measurements if 'does_nr' is true.

The problem is that if the eNB is not connected to a gNB but the UE
reports some NR measurements (because a gNB is running somewhere near)
then the eNB will crash when starting the switch to NR.

A (quick) solution is to set 'does_nr' only if there is a gNB connected to
the eNB.

Maybe not the best solution. To be changed if needed.
2021-03-31 16:39:30 +02:00
hardy 4896e80e2c Merge remote-tracking branch 'origin/NR_MAC_SSB' into integration_2021_wk13_d 2021-03-31 13:47:58 +02:00
Cedric Roux fe4a9b005a nr: add some comments to pdcp nia2 integrity 2021-03-30 16:01:57 +02:00
francescomani 579f0290f6 Merge remote-tracking branch 'origin/develop' into NR_MAC_SSB 2021-03-30 15:10:28 +02:00
Cedric Roux 18cb68ecc2 nr pdcp: first draft of NIA2 integrity
This code has not been tested with a COTS UE. We need SRB1/2 (so we need SA)
to test.

The activation of security and integrity for SRB1 will need more code
(new functions) because it happens after some time, not at creation time
of the PDCP entity and there is no way to do this with current code.
2021-03-30 11:57:51 +02:00
Cedric Roux 14c823037f nr pdcp: bugfix: D/C bit set only for DRBs 2021-03-30 11:57:51 +02:00
Robert Schmidt f5a1d356db Refactor after merge
With the merge of fix_NR_DLUL_PF, gNB_dlsch_ulsch_scheduler() has no
nb_periods_per_frame variable. There are two changes here:

1) calculate this locally for initializing tdd_beam_association

2) do not pass it into schedule_nr_mib(). Further, use the following:
   nb_periods_per_frame = slots_per_frame / slots_per_period
   slots_per_frame / nb_periods_per_frame =
     = slots_per_frame / (slots_per_frame / slots_per_period)
     = slots_per_period
2021-03-30 10:49:00 +02:00
Robert Schmidt 576df55450 Merge remote-tracking branch 'origin/fix_NR_DLUL_PF' into integration_2021_wk12 2021-03-30 10:48:57 +02:00
francescomani d65af6d8ca Merge remote-tracking branch 'origin/develop' into NR_MAC_SSB 2021-03-30 09:35:18 +02:00
hardy ddf3f9e88c Merge remote-tracking branch 'origin/NR_FAPI_beamindex_SSB_RO' into integration_2021_wk13_a 2021-03-29 10:02:51 +02:00
hardy a84b1b4340 Merge remote-tracking branch 'origin/fix-quectel' into integration_2021_wk12_b 2021-03-28 21:36:45 +02:00
Cedric Roux 9d1c24d461 nr rlc: bugfix: fix NACK with range
We do some sanity checks for incoming rlc control packets. One of them
is to check that so_start is not > so_end when present.

But when 'range' is present and bigger than 1 it means that so_start refers
to one PDU and so_end to another one. So we may well have so_start > so_end.

This commit fixes that and reorganizes a bit the code to do the check before
processing and rejecting the PDU if the values are not correct. (Before this
commit we were NACKing the whole PDUs if so_start > so_end.)
2021-03-26 15:36:43 +01:00
Laurent THOMAS 1cb33aa7de code review fixes, merge latest develop 2021-03-22 09:46:24 +01:00
Thomas Schlichter bc041092c8 NR_UE: always break out of MAC PDU processing after pdu_len Bytes
In case of false positive PDSCH CRC check, a random MAC PDU is processed.
Currently pdu_len is unsigned 16 Bit, so we did break out of the processing loop only if we _exactly_ hit a residual pdu_len of 0, or we hit a LCID of DL_SCH_LCID_PADDING.
If we didn't hit either of these, pdu_len wrapped to a very positive value, and we continued processing the PDU even beyond its bounds!
This behavior was observed with SNR 1 dB and MCS 9.

So better make pdu_len signed and break out of the loop after processing at max. pdu_len Bytes!
2021-03-19 17:45:14 +01:00
Thomas Schlichter 14f3d6a77a gNB: fix memory allocations in fix_scc() and prepare_scd()
issues found by valgrind
2021-03-19 11:40:21 +01:00
Thomas Schlichter dade64ea43 Merge remote-tracking branch 'develop' into NR_DL_MIMO 2021-03-19 11:18:02 +01:00
francescomani f659a76f43 Merge remote-tracking branch 'origin/develop' into NR_FAPI_beamindex_SSB_RO 2021-03-19 10:06:20 +01:00
francescomani f0d6298475 new attempt at improving call to RC L1 config 2021-03-19 09:55:18 +01:00
francescomani a1f1d53cb5 another tentative fix for gnb initialization crashes 2021-03-18 13:09:36 +01:00
francescomani d30b8c69ae fix dlsim crashes (wrong detection of dci for ul) 2021-03-17 18:45:56 +01:00
hardy 9abc8a6425 Merge remote-tracking branch 'origin/ptrs_rrc_config' into integration_2021_wk11 2021-03-16 16:28:31 +01:00
hardy d12aaf98e8 Merge remote-tracking branch 'origin/NR_10MHz' into integration_2021_wk11 2021-03-16 16:27:42 +01:00
hardy dc60f04a46 Merge remote-tracking branch 'origin/NR_MAC_TCI_UCI_GlobalEdge' into integration_2021_wk11 2021-03-16 16:26:41 +01:00
Thomas Schlichter b7ef903cb4 Merge remote-tracking branch 'develop' into NR_10MHz 2021-03-16 16:13:17 +01:00
Thomas Schlichter 8768deaf74 Merge remote-tracking branch 'develop' into ptrs_rrc_config 2021-03-16 14:01:32 +01:00
Thomas Schlichter 3152df445e Merge remote-tracking branch 'develop' into NR_DL_MIMO 2021-03-16 13:37:07 +01:00
hardy ee398c7610 solved merge conflicts related to CI scripts 2021-03-16 11:55:23 +01:00
francescomani 5eb86207db Merge remote-tracking branch 'origin/develop' into NR_MAC_TCI_UCI_GlobalEdge 2021-03-16 08:49:54 +01:00
Robert Schmidt 8307d79929 Make RRC buffer sufficiently large 2021-03-15 15:00:34 +01:00
guhan 92c9d80ce0 Reverted the changes as same as develop 2021-03-15 17:47:04 +05:30
francescomani 13a561104b Merge remote-tracking branch 'origin/develop' into NR_MAC_SSB 2021-03-15 10:23:06 +01:00
hardy ca3aaf700f Merge remote-tracking branch 'origin/fix-nr-pdcp-timer' into integration_2021_wk11 2021-03-15 09:31:40 +01:00
francescomani dd1b8b64cf tentative fix for RC.gNB[inst] allocation 2021-03-12 13:15:48 +01:00
Remi Hardy de9c8634ad Merge remote-tracking branch 'origin/s1_subnormal' into integration_2021_wk10 2021-03-12 11:08:09 +01:00
Remi Hardy c775073aad Merge remote-tracking branch 'origin/nr-pdcp-improvements' into integration_2021_wk10 2021-03-12 11:07:44 +01:00
Remi Hardy c12dd11d6e Merge remote-tracking branch 'origin/develop-SA-RA' into integration_2021_wk10 2021-03-12 11:07:25 +01:00
Robert Schmidt 43f6e2f0de Shorten RSRP meas print, avoid SIGFPE 2021-03-11 12:22:32 +01:00
Robert Schmidt 9e707bb2d6 Remove uselessly added code 2021-03-11 12:12:35 +01:00
Robert Schmidt 6274348dfb Remove redundant code 2021-03-11 12:12:35 +01:00
Shweta Shrivastava 95df7843f3 Fix issues with NSA mode 2021-03-11 00:11:16 -06:00
Shweta Shrivastava a0fa146e04 Merge branch 'ptrs_rrc_config' of https://gitlab.eurecom.fr/oai/openairinterface5g into ptrs_rrc_config 2021-03-10 22:58:06 -06:00