[dv/dvsim] collect coverage in scheduler
Current Scheduler.py will kill the `next_item` if any dependencies
failed or killed. But for nightly regression coverage runs, I think the
goal is to collect coverage as long as there is any passing test. So
here I add some logic to the `dispatch` function.
Signed-off-by: Cindy Chen <chencindy@google.com>
diff --git a/util/dvsim/Deploy.py b/util/dvsim/Deploy.py
index af9dd0f..4ff7a1b 100644
--- a/util/dvsim/Deploy.py
+++ b/util/dvsim/Deploy.py
@@ -65,6 +65,11 @@
# A list of jobs on which this job depends
self.dependencies = []
+ # Indicates whether running this job requires all dependencies to pass.
+ # If this flag is set to False, any passing dependency will trigger
+ # this current job to run
+ self.needs_all_dependencies_passing = True
+
# Process
self.process = None
self.log_fd = None
@@ -739,6 +744,7 @@
super().__init__(sim_cfg)
self.dependencies += run_items
+ self.needs_all_dependencies_passing = False
self.target = "cov_merge"
self.pass_patterns = []