From 0c4403cc2355cc38d01c6645b1dad36dd4c1daa7 Mon Sep 17 00:00:00 2001 From: "lal.harshita" Date: Mon, 12 Feb 2024 16:54:27 +0530 Subject: [PATCH] [Epic-ID: ODUHIGH-557][Task-ID: ODUHIGH-560] Enable/Disable core affinity at compile time Change-Id: I1c8afd08217800eae6353ef0f5f5fd7bd5395505 Signed-off-by: lal.harshita --- build/odu/makefile | 2 +- src/du_app/du_mgr_main.c | 16 ++++++++++++++++ 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/build/odu/makefile b/build/odu/makefile index 871e65087..39fcf83bb 100644 --- a/build/odu/makefile +++ b/build/odu/makefile @@ -87,7 +87,7 @@ ifeq ($(NODE),TEST_STUB) PLTFRM_FLAGS+=-DODU_TEST_STUB endif ifeq ($(PHY), INTEL_L1) - PLTFRM_FLAGS+=-DSS_USE_WLS_MEM -DINTEL_WLS_MEM -DDEBUG_MODE -DINTEL_L1_V20_03_ONWARDS + PLTFRM_FLAGS+=-DSS_USE_WLS_MEM -DINTEL_WLS_MEM -DDEBUG_MODE -DINTEL_L1_V20_03_ONWARDS -DINTEL_THREAD_AFFINITY ifeq ($(PHY_MODE),TIMER) PLTFRM_FLAGS+=-DINTEL_TIMER_MODE endif diff --git a/src/du_app/du_mgr_main.c b/src/du_app/du_mgr_main.c index b545555c8..d17d93d3d 100644 --- a/src/du_app/du_mgr_main.c +++ b/src/du_app/du_mgr_main.c @@ -586,7 +586,10 @@ uint8_t commonInit() DU_LOG("\nERROR --> DU_APP : System Task creation for DU APP failed"); return RFAILED; } + +#ifdef INTEL_THREAD_AFFINITY ODU_SET_THREAD_AFFINITY(&du_app_stsk, SS_AFFINITY_MODE_EXCL, 16, 0); +#endif /* system task for EGTP */ if(ODU_CREATE_TASK(PRIOR0, &egtp_stsk) != ROK) @@ -594,7 +597,10 @@ uint8_t commonInit() DU_LOG("\nERROR --> DU_APP : System Task creation for EGTP failed"); return RFAILED; } + +#ifdef INTEL_THREAD_AFFINITY ODU_SET_THREAD_AFFINITY(&egtp_stsk, SS_AFFINITY_MODE_EXCL, 27, 0); +#endif /* system task for RLC_DL and MAC */ if(ODU_CREATE_TASK(PRIOR0, &rlc_mac_cl_stsk) != ROK) @@ -604,7 +610,9 @@ uint8_t commonInit() } pthread_attr_init(&attr); pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED); +#ifdef INTEL_THREAD_AFFINITY ODU_SET_THREAD_AFFINITY(&rlc_mac_cl_stsk, SS_AFFINITY_MODE_EXCL, 18, 0); +#endif /* system task for RLC UL */ if(ODU_CREATE_TASK(PRIOR1, &rlc_ul_stsk) != ROK) @@ -612,7 +620,9 @@ uint8_t commonInit() DU_LOG("\nERROR --> DU_APP : System Task creation for RLC UL failed"); return RFAILED; } +#ifdef INTEL_THREAD_AFFINITY ODU_SET_THREAD_AFFINITY(&rlc_ul_stsk, SS_AFFINITY_MODE_EXCL, 22, 0); +#endif /* system task for SCH */ if(ODU_CREATE_TASK(PRIOR1, &sch_stsk) != ROK) @@ -620,7 +630,9 @@ uint8_t commonInit() DU_LOG("\nERROR --> DU_APP : System Task creation for SCH failed"); return RFAILED; } +#ifdef INTEL_THREAD_AFFINITY ODU_SET_THREAD_AFFINITY(&sch_stsk, SS_AFFINITY_MODE_EXCL, 22, 0); +#endif /* system task for SCTP receiver thread */ if(ODU_CREATE_TASK(PRIOR0, &sctp_stsk) != ROK) @@ -628,7 +640,9 @@ uint8_t commonInit() DU_LOG("\nERROR --> DU_APP : System Task creation for SCTP failed"); return RFAILED; } +#ifdef INTEL_THREAD_AFFINITY ODU_SET_THREAD_AFFINITY(&sctp_stsk, SS_AFFINITY_MODE_EXCL, 25, 0); +#endif /* system task for lower-mac receiver thread */ if(ODU_CREATE_TASK(PRIOR0, &lwr_mac_stsk) != ROK) @@ -636,7 +650,9 @@ uint8_t commonInit() DU_LOG("\nERROR --> DU_APP : System Task creation for Lower MAC failed"); return RFAILED; } +#ifdef INTEL_THREAD_AFFINITY ODU_SET_THREAD_AFFINITY(&lwr_mac_stsk, SS_AFFINITY_MODE_EXCL, 21, 0); +#endif #ifndef INTEL_WLS_MEM /* system task for phy stub's slot indication generator thread */ -- 2.16.6