Lines Matching +full:foo +full:- +full:queue
4 Handles preparation and execution of a queue of tasks
7 # Copyright (C) 2006-2007 Richard Purdie
9 # SPDX-License-Identifier: GPL-2.0-only
33 __find_sha256__ = re.compile( r'(?i)(?<![a-z0-9])[a-f0-9]{64}(?![a-z0-9])' )
60 fn = ":".join(elems[2:-1])
61 taskname = elems[-1]
106 self.active = self.active - 1
110 self.active = self.active - 1
201 …exceeds_cpu_pressure = self.rq.max_cpu_pressure and (float(curr_cpu_pressure) - float(self.prev_c…
202 …exceeds_io_pressure = self.rq.max_io_pressure and (float(curr_io_pressure) - float(self.prev_io_p…
203 …ory_pressure = self.rq.max_memory_pressure and (float(curr_memory_pressure) - float(self.prev_memo…
205 if now - self.prev_pressure_time > 1.0:
363 # Common task, skip it. This is the fast-path which
371 # place. We re-synchronized by changing the
389 # kinds at the head of the queue (because earlier = lower
391 # ordering by recipe. If recipe foo is more important than
392 # bar, then the goal is to work on foo's do_populate_sysroot
394 # tasks of foo before any of the less important tasks in any
396 # foo).
401 # Here's an example why this priority re-ordering helps with
402 # minimizing disk usage. Consider a recipe foo with a higher
403 # priority than bar where foo DEPENDS on bar. Then the
404 # implicit rule (from base.bbclass) is that foo's do_configure
407 # tasks from foo would continue to run once that is done, and
409 # bar's task that depend on bar's do_populate_sysroot before foo's
434 BitBake Run Queue implementation
600 deps_left[revdep] = deps_left[revdep] - 1
657 # Step A - Work out a list of tasks to run
749 # Resolve inter-task dependencies
762 …bb.msg.fatal("RunQueue", "Task %s in %s depends upon non-existent task %s in %s" % (taskname, fn, …
774 …bb.msg.fatal("RunQueue", "Task %s in %s rdepends upon non-existent task %s in %s" % (taskname, fn,…
814 …# d) optimise by pre-truncating 'task' off the items in cumulativedeps (keeps items in sets lo…
901 # Step B - Mark all active tasks
948 if task.endswith('-'):
950 task = task[:-1]
971 # For tasks called "XXXX-", ony run their dependencies
980 # Step C - Prune all inactive tasks
984 # Handle --runall
986 # re-run the mark_active and then drop unused tasks from new list
1021 # re-run the mark_active and then drop unused tasks from new list
1043 # Step D - Sanity checks and computation
1049 …RunQueue", "All buildable tasks have been run but the build is incomplete (--continue mode). Error…
1051 … bb.msg.fatal("RunQueue", "No active tasks and not in --continue mode?! Please report this bug.")
1088 # Sanity Check - Check for multiple tasks building the same provider
1142 …gs.append("\n%s has unique dependees:\n %s" % (provfn, "\n ".join(deplist[provfn] - commondeps)))
1177 …d("\n%s has unique provides:\n %s" % (provfn, "\n ".join(provide_results[provfn] - commonprovs)))
1178 …\n%s has unique rprovides:\n %s" % (provfn, "\n ".join(rprovide_results[provfn] - commonrprovs)))
1216 # Create and print to the logs a virtual/xxxx -> PN (fn) table
1235 if not (self.runtaskentries[tid].depends - dealtwith):
1293 logger.debug("Starting bitbake-worker")
1306 …worker = subprocess.Popen(fakerootcmd + ["bitbake-worker", magic], stdout=subprocess.PIPE, stdin=s…
1309 …worker = subprocess.Popen(["bitbake-worker", magic], stdout=subprocess.PIPE, stdin=subprocess.PIPE)
1341 logger.debug("Teardown for bitbake-worker")
1481 Run the tasks in a queue prepared by rqdata.prepare()
1491 # easy to do - just change the next line temporarily to pass debug=True as
1630 # that can't be pickled. This is a cheap multi-process solution.
1742 latestmatch = sorted(matches.keys(), key=lambda f: matches[f])[-1]
2058 logger.error("Task %s was never moved from the setscene queue" % x)
2071 Run the tasks in a queue prepared by prepare_runqueue
2432 … #logger.debug("Task %s hash changes: %s->%s %s->%s" % (tid, orighash, newhash, origuni, newuni))
2571 # Look down the dependency chain for non-setscene things which this task depends on
2695 # Injected inter-setscene task dependencies
2810 # Resolve setscene inter-task dependencies
2828 …bb.msg.fatal("RunQueue", "Task %s depends upon non-existent task %s:%s" % (realtid, depfn, idepend…
3050 …return "Setscene task (%s) failed with exit code '%s' - real task will be run instead" % (self.tas…
3096 self.queue = b""
3113 start = len(self.queue)
3115 self.queue = self.queue + (self.input.read(102400) or b"")
3119 end = len(self.queue)
3121 while found and self.queue:
3123 index = self.queue.find(b"</event>")
3124 while index != -1 and self.queue.startswith(b"<event>"):
3126 event = pickle.loads(self.queue[7:index])
3131 index = self.queue.find(b"</event>", index + 1)
3133 … bb.msg.fatal("RunQueue", "failed load pickle '%s': '%s'" % (e, self.queue[7:index]))
3138 self.queue = self.queue[index+8:]
3139 index = self.queue.find(b"</event>")
3140 index = self.queue.find(b"</exitcode>")
3141 while index != -1 and self.queue.startswith(b"<exitcode>"):
3143 task, status = pickle.loads(self.queue[10:index])
3145 … bb.msg.fatal("RunQueue", "failed load pickle '%s': '%s'" % (e, self.queue[10:index]))
3152 self.queue = self.queue[index+11:]
3153 index = self.queue.find(b"</exitcode>")
3159 if self.queue:
3160 print("Warning, worker left partial message: %s" % self.queue)