aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2023-01-04 17:56:58 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2023-01-06 17:39:57 +0000
commitaf4ccab8acc49e91bf7647f209d69f4858618466 (patch)
treebb975aac3e33c3cd6ecd641fe18ed33619172d1d
parent9ece4a2e406509bd89dbce8dac80a02e600b0ecf (diff)
downloadbitbake-af4ccab8acc49e91bf7647f209d69f4858618466.tar.gz
cooker: Clean up inotify idle handler
We no longer need to abstract the inotify callback handler, remove the abstraction and simplify/clean up the code. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--lib/bb/cooker.py6
-rw-r--r--lib/bb/server/process.py5
2 files changed, 3 insertions, 8 deletions
diff --git a/lib/bb/cooker.py b/lib/bb/cooker.py
index 1d347ddc5..d2c42c858 100644
--- a/lib/bb/cooker.py
+++ b/lib/bb/cooker.py
@@ -190,12 +190,6 @@ class BBCooker:
self.inotify_modified_files = []
- def _process_inotify_updates(server, cooker, halt):
- cooker.process_inotify_updates()
- return 1.0
-
- self.idleCallBackRegister(_process_inotify_updates, self)
-
# TOSTOP must not be set or our children will hang when they output
try:
fd = sys.stdout.fileno()
diff --git a/lib/bb/server/process.py b/lib/bb/server/process.py
index b5f6faf6f..81e5229c9 100644
--- a/lib/bb/server/process.py
+++ b/lib/bb/server/process.py
@@ -157,8 +157,7 @@ class ProcessServer():
def wait_for_idle(self, timeout=30):
# Wait for the idle loop to have cleared
with self.idle_cond:
- # FIXME - the 1 is the inotify processing in cooker which always runs
- self.idle_cond.wait_for(lambda: len(self._idlefuns) <= 1, timeout)
+ self.idle_cond.wait_for(lambda: len(self._idlefuns) == 0, timeout)
def main(self):
self.cooker.pre_serve()
@@ -387,6 +386,8 @@ class ProcessServer():
nextsleep = 0.1
fds = []
+ self.cooker.process_inotify_updates()
+
with bb.utils.lock_timeout(self._idlefuncsLock):
items = list(self._idlefuns.items())