From 324e6501d617befc803b92f41bfe288023486c6f Mon Sep 17 00:00:00 2001 From: Cedric Roux <cedric.roux@eurecom.fr> Date: Tue, 23 May 2017 15:42:09 +0200 Subject: [PATCH] bugfix: wrong CCE allocation We have to not only ensure that the CCE is free but also that it's below the number of availables CCEs with respect to the current PDCCH size. --- openair1/PHY/LTE_TRANSPORT/dci.c | 3 ++- openair2/LAYER2/MAC/eNB_scheduler_primitives.c | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/openair1/PHY/LTE_TRANSPORT/dci.c b/openair1/PHY/LTE_TRANSPORT/dci.c index 8b7a818297..9a929947ee 100755 --- a/openair1/PHY/LTE_TRANSPORT/dci.c +++ b/openair1/PHY/LTE_TRANSPORT/dci.c @@ -2653,7 +2653,8 @@ int get_nCCE_offset_l1(int *CCE_table, search_space_free = 1; for (l=0; l<L; l++) { - if (CCE_table[(((Yk+m)%(nCCE/L))*L) + l] == 1) { + int cce = (((Yk+m)%(nCCE/L))*L) + l; + if (cce >= nCCE || CCE_table[cce] == 1) { search_space_free = 0; break; } diff --git a/openair2/LAYER2/MAC/eNB_scheduler_primitives.c b/openair2/LAYER2/MAC/eNB_scheduler_primitives.c index 56ede260e8..6554f49d10 100644 --- a/openair2/LAYER2/MAC/eNB_scheduler_primitives.c +++ b/openair2/LAYER2/MAC/eNB_scheduler_primitives.c @@ -990,7 +990,8 @@ int get_nCCE_offset(int *CCE_table, search_space_free = 1; for (l=0; l<L; l++) { - if (CCE_table[(((Yk+m)%(nCCE/L))*L) + l] == 1) { + int cce = (((Yk+m)%(nCCE/L))*L) + l; + if (cce >= nCCE || CCE_table[cce] == 1) { search_space_free = 0; break; } -- GitLab