poky: sumo refresh 64a257fa22..fa962ec72f
Update poky to sumo HEAD.
Anuj Mittal (1):
linux-yocto: update genericx86* SRCREV for 4.14
Martin Hundebøll (2):
shadow: improve reproducibility by hard-coding shell path
busybox: make busybox.links.{suid, nosuid} reproducible
Paul Eggleton (1):
socat: fix LICENSE
Richard Purdie (10):
sanity: Add check for WSL
poky.conf: Update the distros we test against on the autobuilder
poky.conf: Bump version for 2.5.2 sumo release
build-appliance-image: Update to sumo head revision
bitbake: server/process: Fix unclosed socket warnings upon server connection refused
bitbake: lib/bb/server: Avoid UnboundLocalError traceback
bitbake: server/process: Fix ConnectionRefusedError tracebacks
bitbake: runqueue: Ensure disk monitor is started when no setscene tasks are run
bitbake: process: Flush key output to logs
bitbake: main: Don't use print() directly, use logger
Change-Id: Ie14695232a8adecd2013d629208da320963532ce
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
diff --git a/poky/bitbake/lib/bb/main.py b/poky/bitbake/lib/bb/main.py
index 732a315..7dc953d 100755
--- a/poky/bitbake/lib/bb/main.py
+++ b/poky/bitbake/lib/bb/main.py
@@ -448,7 +448,7 @@
else:
logger.info("Reconnecting to bitbake server...")
if not os.path.exists(sockname):
- print("Previous bitbake instance shutting down?, waiting to retry...")
+ logger.info("Previous bitbake instance shutting down?, waiting to retry...")
i = 0
lock = None
# Wait for 5s or until we can get the lock
diff --git a/poky/bitbake/lib/bb/runqueue.py b/poky/bitbake/lib/bb/runqueue.py
index f2e52cf..480a851 100644
--- a/poky/bitbake/lib/bb/runqueue.py
+++ b/poky/bitbake/lib/bb/runqueue.py
@@ -1371,6 +1371,12 @@
bb.event.fire(bb.event.DepTreeGenerated(depgraph), self.cooker.data)
if self.state is runQueueSceneInit:
+ if not self.dm_event_handler_registered:
+ res = bb.event.register(self.dm_event_handler_name,
+ lambda x: self.dm.check(self) if self.state in [runQueueSceneRun, runQueueRunning, runQueueCleanUp] else False,
+ ('bb.event.HeartbeatEvent',))
+ self.dm_event_handler_registered = True
+
dump = self.cooker.configuration.dump_signatures
if dump:
self.rqdata.init_progress_reporter.finish()
@@ -1387,11 +1393,6 @@
self.rqexe = RunQueueExecuteScenequeue(self)
if self.state is runQueueSceneRun:
- if not self.dm_event_handler_registered:
- res = bb.event.register(self.dm_event_handler_name,
- lambda x: self.dm.check(self) if self.state in [runQueueSceneRun, runQueueRunning, runQueueCleanUp] else False,
- ('bb.event.HeartbeatEvent',))
- self.dm_event_handler_registered = True
retval = self.rqexe.execute()
if self.state is runQueueRunInit:
diff --git a/poky/bitbake/lib/bb/server/process.py b/poky/bitbake/lib/bb/server/process.py
index 828159e..0749b5b 100644
--- a/poky/bitbake/lib/bb/server/process.py
+++ b/poky/bitbake/lib/bb/server/process.py
@@ -428,6 +428,8 @@
def _startServer(self):
print(self.start_log_format % (os.getpid(), datetime.datetime.now().strftime(self.start_log_datetime_format)))
+ sys.stdout.flush()
+
server = ProcessServer(self.bitbake_lock, self.sock, self.sockname)
self.configuration.setServerRegIdleCallback(server.register_idle_function)
writer = ConnectionWriter(self.readypipein)
@@ -443,6 +445,8 @@
server.server_timeout = self.configuration.server_timeout
server.xmlrpcinterface = self.configuration.xmlrpcinterface
print("Started bitbake server pid %d" % os.getpid())
+ sys.stdout.flush()
+
server.start()
def connectProcessServer(sockname, featureset):
@@ -451,16 +455,15 @@
# AF_UNIX has path length issues so chdir here to workaround
cwd = os.getcwd()
- try:
- os.chdir(os.path.dirname(sockname))
- sock.connect(os.path.basename(sockname))
- finally:
- os.chdir(cwd)
-
readfd = writefd = readfd1 = writefd1 = readfd2 = writefd2 = None
eq = command_chan_recv = command_chan = None
try:
+ try:
+ os.chdir(os.path.dirname(sockname))
+ sock.connect(os.path.basename(sockname))
+ finally:
+ os.chdir(cwd)
# Send an fd for the remote to write events to
readfd, writefd = os.pipe()
@@ -489,7 +492,8 @@
command_chan.close()
for i in [writefd, readfd1, writefd2]:
try:
- os.close(i)
+ if i:
+ os.close(i)
except OSError:
pass
sock.close()