diff mbox series

[3/3] runqueue: Drop deadlock breaking force fail

Message ID 20220805103232.3674163-3-richard.purdie@linuxfoundation.org
State Accepted, archived
Commit 8efced47fcb47851a370fd6786df6fb377f99963
Headers show
Series [1/3] runqueue: Ensure deferred tasks are sorted by multiconfig | expand

Commit Message

Richard Purdie Aug. 5, 2022, 10:32 a.m. UTC
I'm 99% certain this failing of a scenequeue task corrupts runqueue and
causes all kinds of breakage. I'd rather runqueue deadlocked than corrupted
and did weird things so drop this code.

We've seen builds where the deadlock triggers and it then tries to run tasks
where the SQ task already ran with very confusing failures. It is likely it
is this code causing it.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
---
 lib/bb/runqueue.py | 3 ---
 1 file changed, 3 deletions(-)
diff mbox series

Patch

diff --git a/lib/bb/runqueue.py b/lib/bb/runqueue.py
index e06246f741..98b73223c6 100644
--- a/lib/bb/runqueue.py
+++ b/lib/bb/runqueue.py
@@ -2240,9 +2240,6 @@  class RunQueueExecute:
             deferred_tid = list(self.sq_deferred.keys())[0]
             blocking_tid = self.sq_deferred.pop(deferred_tid)
             logger.warning("Runqeueue deadlocked on deferred tasks, forcing task %s blocked by %s" % (deferred_tid, blocking_tid))
-            if blocking_tid not in self.runq_complete:
-                logger.warning("Failing blocking task %s" % (blocking_tid))
-                self.sq_task_failoutright(blocking_tid)
             return True
 
         if self.failed_tids: