diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2019-08-14 11:48:25 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2019-08-14 14:45:59 +0100 |
commit | 1bf5be46f92f125193638cf41ff207d68f592259 (patch) | |
tree | bf71c780ea6cf6988bf34ef9b7b81bb8b4820066 /lib/bb/tests | |
parent | 030b9f2b3ce6ed40e79304eb0ffee6c6613f43be (diff) | |
download | bitbake-1bf5be46f92f125193638cf41ff207d68f592259.tar.gz |
runqueue: Fix event timing race
The event from the task notifiing of hash equivalency should only be processed
when the task completes. This can otherwise result in a race where a dependent
task may run before the original task completes causing various failures.
To make this work reliably, the code had to be restructured quite a bit.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'lib/bb/tests')
-rw-r--r-- | lib/bb/tests/runqueue.py | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/bb/tests/runqueue.py b/lib/bb/tests/runqueue.py index 1103f905f..493516355 100644 --- a/lib/bb/tests/runqueue.py +++ b/lib/bb/tests/runqueue.py @@ -384,8 +384,8 @@ class RunQueueTests(unittest.TestCase): with open(tempdir + "/stamps/b1.do_install.taint", "w") as f: f.write("ed36d46a-2977-458a-b3de-eef885bc1817") cmd = ["bitbake", "e1", "-DD"] - sstatevalid = "e1:do_package:b710f6312ffed900b4b2761cc05538645f4ff3e7e0b70d688c70c0f3bcc2e1a2" - tasks = self.run_bitbakecmd(cmd, tempdir, sstatevalid, extraenv=extraenv, cleanup=True, slowtasks="e1:fetch") + sstatevalid = "e1:do_package:f9aa46d63cb63d70a09712b6bc7fab57e4966cf8e8b52ff5ad1ba23823aec7d4 e1:do_package:b710f6312ffed900b4b2761cc05538645f4ff3e7e0b70d688c70c0f3bcc2e1a2" + tasks = self.run_bitbakecmd(cmd, tempdir, sstatevalid, extraenv=extraenv, cleanup=True, slowtasks="e1:fetch b1:install") expected = ['a1:package', 'a1:install', 'b1:package', 'b1:install', 'a1:populate_sysroot', 'b1:populate_sysroot', 'a1:package_write_ipk_setscene', 'b1:packagedata_setscene', 'b1:package_write_rpm_setscene', 'a1:package_write_rpm_setscene', 'b1:package_write_ipk_setscene', 'a1:packagedata_setscene', |