Commit Graph
982 Commits
Author SHA1 Message Date
Florian Kaltenberger 40b52195fc redefining max number of UEs for memory allocation. Using the PHYSIM macro, different allocations are used for phy_simulators and real-time modem. 2019-03-26 16:16:34 +01:00
Florian Kaltenberger 83e9908adb merging develop with develop-nr 2018-10-25 03:15:09 -07:00
Florian Kaltenberger 9f699a8b0f deleting some duplicate files 2018-10-22 00:30:25 -07:00
Raphael Defosseux bb566eaeb8 Merge remote-tracking branch 'origin/x2' into develop_integration_2018_w39
Signed-off-by: Raphael Defosseux <raphael.defosseux@eurecom.fr>
2018-09-28 17:00:21 +02:00
Konstantinos Alexandris 67cc97a42c Merge remote-tracking branch 'origin/develop' into x2 2018-09-21 16:01:52 +02:00
Konstantinos Alexandris 2c27a38dc3 x2ap: implement x2setuprequest, x2setupresponse, x2setupfailure 2018-09-21 15:58:36 +02:00
Florian Kaltenberger 7ff3705930 adding basic simulator support to nr softmodems. however, simulator not yet functional. 2018-09-14 00:13:19 -07:00
Wang Tsu-Han 3005929bca modify threading option into config file 2018-09-11 18:50:11 +02:00
Cedric Roux 82ab88f546 integration fix: add missing break
This break was there and went away, for whatever reason...
2018-09-07 17:24:37 +02:00
Cedric Roux 2cb87ddd02 Merge remote-tracking branch 'origin/feature-slice+restart-w35' into develop_integration_2018_w36
Conflicts:
	openair2/ENB_APP/flexran_agent_common_internal.c
	openair2/LAYER2/MAC/eNB_scheduler_dlsch.c
2018-09-07 16:13:40 +02:00
Cedric Roux 2c9be8c102 Merge remote-tracking branch 'origin/fix-nfapi-in-scheduler' into develop_integration_2018_w36 2018-09-07 16:08:09 +02:00
Cedric Roux b0eff6c0a6 Merge remote-tracking branch 'origin/scheduler-small-fix' into develop_integration_2018_w36 2018-09-07 16:07:23 +02:00
Cedric Roux cbdc8f662a Merge remote-tracking branch 'origin/issue343_dlcqi_retransmission' into develop_integration_2018_w36 2018-09-07 16:04:05 +02:00
Masayuki HARADA c1359a103f Fix wrong slice_allocation loop in fairRR scheduler 2018-09-06 19:03:05 +02:00
Cedric Roux 8534982afe bugfix: check that we are manipulating the structure for the correct RNTI
The bug popped up when one UE was doing TCP UL iperf and a second UE
attempted to connect. A crash of the eNB happened because we changed
the wrong NFAPI structure in a TTI where both UEs are scheduled.

Something like that.
2018-09-06 16:42:10 +02:00
Robert Schmidt 7162bf6895 Bugfix: Assure available_rbs is positive 2018-09-05 14:21:39 +02:00
Robert Schmidt 066ab90402 Bugfix: Give correct first_rb value to UE 2018-09-05 14:21:39 +02:00
Robert Schmidt d798e03e9d fix rb_table loop 2018-09-05 14:21:39 +02:00
Robert Schmidt ff83dc7017 Fix greedy allocation: schedule not more than what slice has 2018-09-05 14:21:39 +02:00
Robert Schmidt af83d352c8 Fix: use frame_subframe2_dl_harq_pid() 2018-09-05 14:21:39 +02:00
Robert Schmidt 9f04614304 Remove huge comment from sort_UEs()
Commit 7823858e2d11e8cabc1ca7bf7f507b9a050942d3 introduced this as a comment.
2018-09-05 14:21:38 +02:00
Robert Schmidt 07ad2470d1 Remove warnings pre_processor_fairRR 2018-09-05 14:21:36 +02:00
Cedric Roux 6270d94f91 bugfix: use correct comparison
The comparison in AssertFatal was not correct,
taking the opposite meaning to the one expected.
2018-09-04 12:43:29 +02:00
Robert Schmidt 49b167d6ae Remove warnings pre_processor 2018-09-03 18:10:28 +02:00
Robert Schmidt e1a598bc8d Fix function parameter definition/order
Affects:
* store_dlsch_buffer()
* assign_rbs_required()
2018-09-03 18:10:28 +02:00
Robert Schmidt 21983a2028 Patch fairRR scheduler to use slice iface of pre-processor 2018-09-03 18:10:28 +02:00
Robert Schmidt 71a9115abd Iterate over actual number of CC, not NFAPI_CC_MAX 2018-09-03 18:10:28 +02:00
Navid Nikaein 6c4f58a0a0 move UE_list/slice init in dedicated functions 2018-09-03 18:10:28 +02:00
Robert Schmidt 0bb6a19f71 only initialize RC.mac once 2018-09-03 18:10:28 +02:00
Robert Schmidt da35afb01b fix: repair RC.mac memory allocation
- there can be a race between the FlexRAN agent reading the RC.mac and its
  allocation in main.c
- In order to circumvent this, change the allocation by allocating
  everything "into" a local variable
- finally "make it visible" by storing  the pointer in RC.mac
2018-09-03 18:10:28 +02:00
Robert Schmidt 328a464e37 remove update_sched slice param variables
- whether a scheduler callback has to be changed is now handled by the agent
2018-09-03 18:10:28 +02:00
Robert Schmidt 766e8a5bbe link to scheduler function in mac init fct 2018-09-03 18:10:28 +02:00
Robert Schmidt 21f6609472 FlexRAN: move slice param verification to agent
- until now, on every iteration, the scheduler checked for changed parameter
  (and verified some)
- this functionality moves to the FlexRAN Agent, which verifies all parameters
  * individually, e.g. Max MCS <= 28 for DL
  * group-based, e.g. the sum of slice percentages is <= 100
- slice configuration changes are only applied if all verifications pass
- it is assumed in the scheduler, that configuration passed from outside is
  correct and can be used "as-is"

fix accounting setting
2018-09-03 18:10:28 +02:00
Robert Schmidt 6b3dd8716b FlexRAN: set values of removed slices to 0 2018-09-03 18:10:28 +02:00
Robert Schmidt 088b1d5a8d refine MAC Debug output
- uncomment "Couldn't find RNTI for UE X" in UE_RNTI() and rb_alloc in
  pre_processor_reset() as they only inflate the debug output with little
  benefited
- "doing ue_schedule_spec" is now displayed for individual UEs (and individual
  CCs)
- show messages when not scheduling UE in ue_schedule_spec() due to invalid
  slice or if not in RRC_CONNECTED
2018-09-03 18:10:28 +02:00
Robert Schmidt 11e45be9c5 fix: resort UE_list after slice multiplexing
- slice multiplexing resorts UE_list for its purposes with restoring the
  original order
- in order to keep the order in UE_list, resort to original order after
  multiplexing
- ideally, this would happen in the multiplexing but currently, the slice_idx
  is not passed to multiplexing (it does not care), so this cannot be done ATM
2018-09-03 18:10:28 +02:00
Robert Schmidt 8039cd40f5 share the allocation array rballoc_sub between slices 2018-09-03 18:10:28 +02:00
Robert Schmidt 44d1eb8015 preprocessor reset: avoid unnecessary iterations 2018-09-03 18:10:28 +02:00
Robert Schmidt fcaf237182 FlexRAN: Handle slice configuration
Incoming slice configuration changes are buffered in an intermediate structure.
The MAC scheduler periodically polls the agent about changes. If there has been
a slice configuration change, apply it.
2018-09-03 18:10:28 +02:00
Robert Schmidt de4ebe0914 remove warnings (comment concerned lines) 2018-09-03 18:10:28 +02:00
Robert Schmidt b29e20d4dd MAC sched slicing: sort only relevant slices 2018-09-03 18:10:28 +02:00
Robert Schmidt 59fc7832fa bugfixes: set max UL MCS to 20, improve sched loading message 2018-09-03 18:10:28 +02:00
Robert Schmidt 1d23a64ced bugfix: memset using the right size 2018-09-03 18:10:28 +02:00
Robert Schmidt 8f2d79709e MAC: change all slice_id_t to slice index variables 2018-09-03 18:10:28 +02:00
Robert Schmidt 87b8b6e86b Increase the number of possible slices to 10 2018-09-03 18:10:28 +02:00
Robert Schmidt 568bf8ae35 bugfix: deactive slice_counter
slice_counter had a wrong condition, not scheduling in DLSCH if the number of
slices is greater than one
2018-09-03 18:10:28 +02:00
Robert Schmidt 048c4d29a2 add slice association in UE_list, test against it in slice_membership() 2018-09-03 18:10:28 +02:00
Robert Schmidt 58c2a00626 MAC: slicing conf struct in RC
- introduce structure in RC for slicing conf (UL/DL)
- move global variables regarding slice configuration into RC
- change ue_slice_membership(): consider UL/DL
- remove the unnecessary header files
- set default parameters: one slice
2018-09-03 18:10:28 +02:00
Robert Schmidt 5cbe5c0df3 remove useless headers in scheduler 2018-09-03 18:10:28 +02:00
Niccolò Iardella e6168667d3 Add first_rb_offset 2018-09-03 18:10:28 +02:00