Эх сурвалжийг харах

qcacld-3.0: Change the policy & priority of RX thread

Change the policy & priority of RX thread to improve the RX throughput for
Specified platform.

Change-Id: Ie9df5de6f34d75264c4f3b7bdcb59ab92845a128
CRs-Fixed: 2354502
Tiger Yu 6 жил өмнө
parent
commit
13cdcc4194
2 өөрчлөгдсөн 14 нэмэгдсэн , 0 устгасан
  1. 6 0
      Kbuild
  2. 8 0
      core/cds/src/cds_sched.c

+ 6 - 0
Kbuild

@@ -2167,12 +2167,18 @@ endif
 
 ifeq ($(CONFIG_ARCH_MSM8996), y)
 CONFIG_FEATURE_SG := y
+CONFIG_RX_THREAD_PRIORITY := y
 endif
 
 ifeq ($(CONFIG_FEATURE_SG), y)
 cppflags-y += -DFEATURE_SG
 endif
 
+ifeq ($(CONFIG_RX_THREAD_PRIORITY), y)
+cppflags-y += -DRX_THREAD_PRIORITY
+endif
+
+
 #Enable wbuff
 cppflags-$(CONFIG_WLAN_WBUFF) += -DWLAN_FEATURE_WBUFF
 

+ 8 - 0
core/cds/src/cds_sched.c

@@ -691,7 +691,15 @@ static int cds_ol_rx_thread(void *arg)
 	bool shutdown = false;
 	int status;
 
+#ifdef RX_THREAD_PRIORITY
+	struct sched_param scheduler_params = {0};
+
+	scheduler_params.sched_priority = 1;
+	sched_setscheduler(current, SCHED_FIFO, &scheduler_params);
+#else
 	set_user_nice(current, -1);
+#endif
+
 #ifdef MSM_PLATFORM
 	set_wake_up_idle(true);
 #endif