]> git.ipfire.org Git - thirdparty/suricata.git/commitdiff
affinity: tag management threads as such
authorEric Leblond <eric@regit.org>
Tue, 4 Sep 2012 15:48:14 +0000 (17:48 +0200)
committerVictor Julien <victor@inliniac.net>
Thu, 6 Sep 2012 05:51:27 +0000 (07:51 +0200)
The management threads were not tagged for CPU affinity and thus
the setting was not applied.

src/counters.c
src/detect-engine.c
src/flow-manager.c

index b7ae4d42b13db936ad6ec5cd3162d4aec94b8cdb..6ffe629a6db534489ed0b0a19958cecf35fa064f 100644 (file)
@@ -1214,6 +1214,9 @@ void SCPerfSpawnThreads(void)
                    "failed");
         exit(EXIT_FAILURE);
     }
+
+    TmThreadSetCPU(tv_wakeup, MANAGEMENT_CPU_SET);
+
     if (TmThreadSpawn(tv_wakeup) != 0) {
         SCLogError(SC_ERR_THREAD_SPAWN, "TmThreadSpawn failed for "
                    "SCPerfWakeupThread");
@@ -1228,6 +1231,9 @@ void SCPerfSpawnThreads(void)
                    "TmThreadCreateMgmtThread failed");
         exit(EXIT_FAILURE);
     }
+
+    TmThreadSetCPU(tv_mgmt, MANAGEMENT_CPU_SET);
+
     if (TmThreadSpawn(tv_mgmt) != 0) {
         SCLogError(SC_ERR_THREAD_SPAWN, "TmThreadSpawn failed for "
                    "SCPerfWakeupThread");
index c62f6f18f3a7d39be002a988da4eee1eb7299612..032955d0767ec30138c1297b2f14f721d73acf75 100644 (file)
@@ -291,6 +291,9 @@ void DetectEngineSpawnLiveRuleSwapMgmtThread(void)
         SCLogError(SC_ERR_THREAD_CREATE, "Live rule swap thread spawn failed");
         exit(EXIT_FAILURE);
     }
+
+    TmThreadSetCPU(tv, MANAGEMENT_CPU_SET);
+
     if (TmThreadSpawn(tv) != 0) {
         SCLogError(SC_ERR_THREAD_SPAWN, "TmThreadSpawn failed for "
                    "DetectEngineLiveRuleSwap");
index 5ada9d4a9b3e7d1d14d085c8b17e940275474d6f..89afcfc67592c0ce4a23ec274bf69ab8dd9a4ce7 100644 (file)
@@ -562,6 +562,8 @@ void FlowManagerThreadSpawn()
     tv_flowmgr = TmThreadCreateMgmtThread("FlowManagerThread",
                                           FlowManagerThread, 0);
 
+    TmThreadSetCPU(tv_flowmgr, MANAGEMENT_CPU_SET);
+
     if (tv_flowmgr == NULL) {
         printf("ERROR: TmThreadsCreate failed\n");
         exit(1);