<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/poky.git/bitbake/lib/bb/runqueue.py, branch 1.6_M4</title>
<subtitle>Mirror of git.yoctoproject.org/poky</subtitle>
<id>https://git.enea.com/cgit/linux/poky.git/atom?h=1.6_M4</id>
<link rel='self' href='https://git.enea.com/cgit/linux/poky.git/atom?h=1.6_M4'/>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/'/>
<updated>2014-03-10T18:10:02+00:00</updated>
<entry>
<title>bitbake: runqueue: Use SIGCHLD instead of polling waitpid</title>
<updated>2014-03-10T18:10:02+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2014-03-10T00:59:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=5f81d9d1fa537445d5da49e12de1e16300e94552'/>
<id>urn:sha1:5f81d9d1fa537445d5da49e12de1e16300e94552</id>
<content type='text'>
Instead of a significant number of calls to waitpid, register a SIGCHLD
handler instead.

(Bitbake rev: 76029d08ad56a0a264ff9738a0336971a455b7f5)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>bitbake: providers/runqueue/taskdata: Optimise logger.debug calls</title>
<updated>2014-03-10T18:10:00+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2014-03-10T00:55:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=aadfea6be629a17e4e26747aba4f59f5ac8e7558'/>
<id>urn:sha1:aadfea6be629a17e4e26747aba4f59f5ac8e7558</id>
<content type='text'>
A run of "bitbake bash -c unpack" when the task has already been
completed resulted in about 9000 calls to logger.debug(). With this
patch which comments out some noisy/less usefull logging and moves
other logging calls outside loops, this number is reduced to 1000
calls. This results in cleaner logs and gives a small but
measurable 0.15s speedup. The log size dropped from 900kb to 160kb.

(Bitbake rev: d2677f084fe1d8846db77d89ef5e6ffb18dc171a)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>bitbake: runqueue.py: Gracefully handle a missing worker process</title>
<updated>2014-03-10T18:09:58+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2014-03-09T17:01:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=b28f00718ca9e4fd9f7c04c1cbfcdb9e4a411efd'/>
<id>urn:sha1:b28f00718ca9e4fd9f7c04c1cbfcdb9e4a411efd</id>
<content type='text'>
If the worker has already gone missing (e.g. SIGTERM), we should
gracefully handle the write failures at exit time rather than throwing
ugly tracebacks.

(Bitbake rev: 1b1672e1ceff17fc4ff8eb7aa46f59fce3593873)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>bitbake: runqueue.py: Handle worker disappearing gracefully</title>
<updated>2014-03-10T18:09:58+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2014-03-09T17:00:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=bb335f96baf5f4cdaa42fd8856ab736d1f7b8d80'/>
<id>urn:sha1:bb335f96baf5f4cdaa42fd8856ab736d1f7b8d80</id>
<content type='text'>
If the worker (or fakeworker) process disappears for some reason, the
system doesn't currently even notice. To fix this, we call waitpid
periodically, looking for exit events of our children. If these
occur, we can gracefully shutdown the server.

(Bitbake rev: ee28ddadaa7ef91e4d4b7d22fc267382aaad6d01)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>bitbake: runqueue: Fix typo</title>
<updated>2014-03-06T22:35:55+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2014-03-06T22:34:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=e9554464d42e5972a483ec992c912e6f98c4e090'/>
<id>urn:sha1:e9554464d42e5972a483ec992c912e6f98c4e090</id>
<content type='text'>
slef.self is clearly meant to be self, fix typo.

Otavio spotted and reported, thanks.

(Bitbake rev: 316daad7928a58cdfc42e27b20e739f4dd74a02a)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>bitbake: runqueue: Catch ValueError from pickle.loads</title>
<updated>2014-02-24T12:42:40+00:00</updated>
<author>
<name>Martin Jansa</name>
<email>martin.jansa@gmail.com</email>
</author>
<published>2014-02-23T10:02:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=dd43700b5d37f29effcb08c2d76874c11afd9b9f'/>
<id>urn:sha1:dd43700b5d37f29effcb08c2d76874c11afd9b9f</id>
<content type='text'>
* exception like this keeps spinning quite quickly generating GBs of logs
  better to kill it asap and show invalid pickle

(Bitbake rev: a69eb4c12c71bba9d742c4e5578f25c388d9f825)

Signed-off-by: Martin Jansa &lt;Martin.Jansa@gmail.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>bitbake: runqueue: Fix silly variable overlap</title>
<updated>2014-02-15T14:02:08+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2014-02-15T13:49:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=3221d97323e655fe5db863157d71ca79983b5b07'/>
<id>urn:sha1:3221d97323e655fe5db863157d71ca79983b5b07</id>
<content type='text'>
A previous commit of mine used the target variable for two different uses
resulting in a lot more sstate being installed than is needed.

Fix the variable to use two different names and unbreak the setscene
behaviour.

(Bitbake rev: f975ca2cf728561bd6317ed8f76303598546113a)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>bitbake: runqueue: Ensure we do run 'masked' setscene tasks if specified as targets</title>
<updated>2014-02-13T17:57:20+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2014-02-13T15:01:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=b60ed2d0fd86a3ae5ce7facbb044677aa7ec2889'/>
<id>urn:sha1:b60ed2d0fd86a3ae5ce7facbb044677aa7ec2889</id>
<content type='text'>
If you specify multiple targets on bitbake's commandline and some of them are
setscene tasks which are "masked" by other tasks they may not get run.

For example &lt;image&gt;:do_rootfs &lt;kernel&gt;:do_populate_sysroot

the rootfs tasks "masks" the populate_sysroot task so bitbake would currently
decide not to run it. In this case, we do really want it to be run.

The fix is not to skip anything which has been given as an explict target.

(Bitbake rev: 0753899d1e855795cc18671357609a86f169b379)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>bitbake: runqueue: Fix setscene hard dependency problems</title>
<updated>2014-02-11T11:53:45+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2014-02-10T22:50:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=410a3e157414448bb7de613b7055a4a33ad20fae'/>
<id>urn:sha1:410a3e157414448bb7de613b7055a4a33ad20fae</id>
<content type='text'>
Commit c54e738e2b5dc0d8e6fd8e93b284ed96e7a83051 added in the idea of hard dependencies
such as the case a setscene has a hard dependency on pseudo-native and that
dependency wasn't available from sstate for some reason.

Unfortunately the implementation was a bit too enthusiastic, causing rebuilds
of things when it wasn't necessary. A test case was:

bitbake quilt-native
bitbake quilt-native -c clean
bitbake &lt;some-image&gt;

and then you'd watch quilt-native get rebuilt for no good reason.

The clue to the problem is in the for loop where it never depends on
the item being iterated over.

The fix is to include the exact list of hard dependencies rather than
guessing. With these changes, the use case above works, the one in
the original commit also works.

This patch also adds in or cleans up various pieces of logging to
allow issues like this to be more easily debugged in future.

(Bitbake rev: 81bd475585ff1b44b390036b1eca0feae7c149eb)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>bitbake: runqueue: Fix race against tasks sharing stamp files</title>
<updated>2014-01-31T15:52:17+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2014-01-31T11:17:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=d93620baea489c9b20f740c0d06dcb39cf364ecb'/>
<id>urn:sha1:d93620baea489c9b20f740c0d06dcb39cf364ecb</id>
<content type='text'>
Shared work directories work by assuming bitbake will not run
more than one task with a specific stamp name. Recent runqueue optimisations
accidentally broke this meaning there could be races. This fixes the code.

(Bitbake rev: b1628b1a260ddf43fc9985535b1ddcfcebbb1e5b)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
</feed>
