]> git.ipfire.org Git - thirdparty/suricata-verify.git/commitdiff
parallel runs: don't initialize MP at all on non-linux
authorJason Ish <jason.ish@oisf.net>
Thu, 11 Feb 2021 17:27:50 +0000 (11:27 -0600)
committerVictor Julien <victor@inliniac.net>
Thu, 11 Feb 2021 18:55:22 +0000 (19:55 +0100)
On Windows, simply initializing seems to fail.

run.py

diff --git a/run.py b/run.py
index af7e21189234dca4a1cf7dc6ae2d79a8f606ef97..1f7936b20a5960808913eddefaf3e56162123fa8 100755 (executable)
--- a/run.py
+++ b/run.py
@@ -39,6 +39,7 @@ import json
 import unittest
 import multiprocessing as mp
 from collections import namedtuple
+import threading
 
 import yaml
 
@@ -47,11 +48,18 @@ LINUX = sys.platform.startswith("linux")
 suricata_bin = "src\suricata.exe" if WIN32 else "./src/suricata"
 suricata_yaml = "suricata.yaml" if WIN32 else "./suricata.yaml"
 
-manager = mp.Manager()
-lock = mp.Lock()
-failedLogs = manager.list()
-count_dict = manager.dict()
-check_args = manager.dict()
+if LINUX:
+    manager = mp.Manager()
+    lock = mp.Lock()
+    failedLogs = manager.list()
+    count_dict = manager.dict()
+    check_args = manager.dict()
+else:
+    count_dict = {}
+    check_args = {}
+    # Bring in a lock from threading to satisfy the MP semantics when
+    # not using MP.
+    lock = threading.Lock()
 
 count_dict['passed'] = 0
 count_dict['failed'] = 0