From: Richard Purdie Date: Sat, 6 Dec 2008 12:00:15 +0000 (+0000) Subject: Add the pid to the event messages so we can identify which worker events come from... X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=3e4cedc7a4ca8f128d95ba09bb53dad8a11a9cf1;p=thirdparty%2Fopenembedded%2Fopenembedded-core-contrib.git Add the pid to the event messages so we can identify which worker events come from (From Rob Bradford in Poky) --- diff --git a/lib/bb/event.py b/lib/bb/event.py index c13a0127a5a..9cf2ee9d708 100644 --- a/lib/bb/event.py +++ b/lib/bb/event.py @@ -25,12 +25,17 @@ BitBake build tools. import os, re import bb.utils +# This is the pid for which we should generate the event. This is set when +# the runqueue forks off. +worker_pid = 0 + class Event: """Base class for events""" type = "Event" def __init__(self, d): self._data = d + self.pid = worker_pid def getData(self): return self._data diff --git a/lib/bb/runqueue.py b/lib/bb/runqueue.py index 609514d308d..dfa9e2a698f 100644 --- a/lib/bb/runqueue.py +++ b/lib/bb/runqueue.py @@ -980,6 +980,10 @@ class RunQueue: except OSError, e: bb.msg.fatal(bb.msg.domain.RunQueue, "fork failed: %d (%s)" % (e.errno, e.strerror)) if pid == 0: + # Save out the PID so that the event can include it the + # events + bb.event.worker_pid = os.getpid() + self.state = runQueueChildProcess # Make the child the process group leader os.setpgid(0, 0)