summaryrefslogtreecommitdiffstats
path: root/bitbake
AgeCommit message (Collapse)Author
2014-03-10bitbake: runqueue: Use SIGCHLD instead of polling waitpidRichard Purdie
Instead of a significant number of calls to waitpid, register a SIGCHLD handler instead. (Bitbake rev: 76029d08ad56a0a264ff9738a0336971a455b7f5) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-10bitbake: server/process: Optimise latency when finishing idle functionsRichard Purdie
When idle functions finish, its likely we have some other work to do, so don't sleep in the select call but instead, skip it. This removes small amounts of latency in common commands. (Bitbake rev: 069d6538f83b607cb46c6fe21bf6c596e8b99242) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-10bitbake: server/process: Drop unnecessary exit delayRichard Purdie
When the server exits, we no longer appear to need this delay. This is likely due to improvements in the various exit codepaths. There is therefore no longer any point in taking the latency hit. (Bitbake rev: 8e75ee29ae07e13f23525c5c6045fbf6cdbe7675) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-10bitbake: server/process: Use a pipe for quit events instead of Event()Richard Purdie
Its not possible to notice the change of status of an Event() in the select call we sleep in. It would be possible in python 3.3 but for now use a pipe instead. This removes small latency when bitbake commands finish since the system doesn't sit in the select call. (Debugging these kind of issues is apparent by setting a long sleep for the select call) (Bitbake rev: def28239b0f0d5f1cf13214b263114a5328538b7) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-10bitbake: knotty: Remove latency when exitingRichard Purdie
There is no point in waiting 0.25s for when we should be processing the shutdown. This simply reordering removes latency from the bitbake command. (Bitbake rev: f147b41bcaf9d05b5ba3a70100f1ca799979aee7) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-10bitbake: knotty: Add missing continue statement for runQueueExitWait eventRichard Purdie
The continue statement was missing for this event and the event was then listed in the "known safe to ignore list". Clean this up. (Bitbake rev: c4ee342300bf905e6e3bef581c61b86289461536) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-10bitbake: providers/runqueue/taskdata: Optimise logger.debug callsRichard Purdie
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 <richard.purdie@linuxfoundation.org>
2014-03-10bitbake: cooker: Handle SIGTERM more gracefullyRichard Purdie
If the cooker receives a SIGTERM it currently hangs using 100% CPU, This patch adds in an intercept for the event and puts the cooker into shutdown mode allowing it to exit cleanly/safely and avoiding the hang. (Bitbake rev: 00c22434123739b0819b31d7b1d353901a3e12da) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-10bitbake: server/process: Deal more gracefully with SIGTERMRichard Purdie
Currently a SIGTERM to the UI process causes the UI simply to lock up. By setting an exit flag, the waitEvent can raise a SIGINT, allowing the UI to break out the event loop and exit. Currently this is results in a traceback but that is more desirable than a hanging process. (Bitbake rev: 0d12041eceeae6bba2034b04913bb13abd67bd15) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-10bitbake: server/process: Use the setFeatures command on the server instead ↵Richard Purdie
of a manger The use of a manager in the process server causes some issues since it remains around for the lifetime of the server even though its only used during initialisation and the system doesn't respond well to SIGTERM events to the extra process (and two threads) the implementation involves. Switching to a dedicated command simplifies the server process structure. (Bitbake rev: 74532a7cf8ccea8b85f1cda5d5bc23d2f3c72a08) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-10bitbake: cooker/command: Add setFeatures commandRichard Purdie
Add a command to allow backends to set particular 'features' on the cooker (server). (Bitbake rev: f547d6ec6cfd677d71fa96dd3c69823c00dc6c69) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-10bitbake: runqueue.py: Gracefully handle a missing worker processRichard Purdie
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 <richard.purdie@linuxfoundation.org>
2014-03-10bitbake: runqueue.py: Handle worker disappearing gracefullyRichard Purdie
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 <richard.purdie@linuxfoundation.org>
2014-03-10bitbake: bitbake-worker: Gracefully handle SIGTERMRichard Purdie
Currently if bitbake-worker handles a SIGTERM, it leaves the child processes to complete or hang. It shouldn't do this so hook the SIGTERM event and gracefully shutdown any children. (Bitbake rev: 551406f3f9ee94de09d2da6e16fea054c6dbfdb7) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-10bitbake: knotty: Deal with exceptions not resetting terminal configurationRichard Purdie
When an exception occurred, the terminal parameters (such as echo) may not be reset correctly. This change ensures they do get atexit time in all cases, avoiding the terminal corruption issues that could sometimes occur. (Bitbake rev: e1d89166f2dfe46412ff9a5610dd57b0cef74fe3) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09bitbake: user-manual: Review edits applied throughout from Paul Eggleton.Scott Rifenbark
Applied review edits from Paul Eggleton spanning the entire book. Small areas affected in all chapters except the "Hello World" Appendix. Noteworthy changes in the variables chapter where I added two new variables: BBINCLUDELOGS_LINES and BB_CONSOLELOG. (Bitbake rev: 2d4b09be70c6df0c1605f7e291149c682999cf50) Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09bitbake: user-manual: Review edits applied from Paul Eggleton.Scott Rifenbark
Review of the entire manual by Paul. I have implemented his suggestions throughout. (Bitbake rev: 5cd310d1df194cd171691a4bcfb98024e2bc66b8) Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09bitbake: user-manual: removed SVK references - all types.Scott Rifenbark
(Bitbake rev: fbbd4cd54753a5d91b5c342d60d007bd2b172570) Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09bitbake: user-manual-ref-variables.xml: Edits to BB_GENERATE_MIRROR_TARBALLS ↵Scott Rifenbark
variable Added some clarification around who would like to set this variable and why. (Bitbake rev: 97acce37528ed11165e37996c7076de46c349b0a) Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09bitbake: user-manual-metadata.xml: Added BB_ORIGENV example.Scott Rifenbark
(Bitbake rev: d4328e2df355252870c3bf01031538a77795cedb) Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09bitbake: user-manual-metadata.xml: Grammar fix.Scott Rifenbark
(Bitbake rev: 71e314b86957ecc01d77262d0a000f6f31db2bcc) Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09bitbake: user-manual-execution.xml: Review edits for "Execution" chapter.Scott Rifenbark
Applied various changes from Richard Purdie's review of the "Execution" chapter. (Bitbake rev: 714c0e93bc2d1ae6227991a1c6e4c88504c1870c) Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09bitbake: user-manual: Review edits from Richard (second draft)Scott Rifenbark
Applied the comprehensive set of review comments from Richard Purdie. All files affected. One major point here was that the "BitBake Command" chapter was eliminated. This information was folded into various areas of the book. Consequently, the bits including the file for make had to be updated. (Bitbake rev: 8ec38c6b456a92a0e0b9b04c2793a5b148be5027) Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09bitbake: user-manual: Added "Hello World" Appendix.Scott Rifenbark
I took Bill's chapter and made it into an appendix. I did some re-writing to make it not so much like a getting-started feel, although it still leans way that way for an appendix. The content is not complete. Had to add in a line to the user-manual.xml file so that the new appendix would be part of the book. Had to use a different form of the command in the user-manual-cusomization.xsl file in order to not through a bunch of errors for an unrecognized parameter value. I commented out the existing one. (Bitbake rev: 80e9306c288ca2ab42585f99fb0f396253cb8253) Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09bitbake: user-manual-fetching.xml: Re-write of the Fetching chapter.Scott Rifenbark
Based on a Richard Purdie re-write. (Bitbake rev: fad9a6258f8c04bbe0168e46898dd27b86c39ee0) Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09bitbake: user-manual-metadata.xml: Title change, sections lifted.Scott Rifenbark
Changed the title of the chapter to "Syntax and Operators". It was called "Metadata". Removed the bulk the "Checksums (Signatures)" section and the placeholder for "Setscene". These are now in the "Execution" chapter. Created a more appropriate overview blurb to start the chapter. (Bitbake rev: f955171d8468ed987f92146d39f52d9af4a03dbb) Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09bitbake: user-manual-fetching.xml: Removed a link.Scott Rifenbark
The link no longer applied as it was linking to a removed section from the "Execution" chapter. (Bitbake rev: de1c316a3f5f382c66b58ad2539b4fadb0f000db) Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09bitbake: user-manual-execution.xml: Review edits applied.Scott Rifenbark
Significant review changes implemented from Richard Purdie. * Eliminated the lifted text from the "Closer Look" chapter of the YP ref-manual. * Added the "BitBake" chapter in from the YP ref-manual. * Significant re-writes and suggestions throughout the entire chapter. (Bitbake rev: 4a740385a4720e040af3d329d9c7cc77b03e7f46) Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09bitbake: user-manual-intro.xml: Review edits to Introduction chapter.Scott Rifenbark
Applied review edits to the introduction chapter as suggested by Richard Purdie. (Bitbake rev: c6c912cf875766036b91af785f257f64ff07146c) Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09bitbake: user-manual-execution.xml: Draft of "Execution" chapterScott Rifenbark
This is a rough draft of the chapter. Major sections are in place. We need to scrub content now. Seems like the discussion of BBFILES fit better in this execution flow chapter. So, I moved it above the parsing section. (Bitbake rev: 6c4c6fb689b88dbefe63f0062b78d8403fb80d41) Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09bitbake: user-manual-intro.xml: Added sectionsScott Rifenbark
Added the append files and layer subsections. (Bitbake rev: 38c3ead4ac8036ac88e83a938aa4ce484d4a6a84) Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09bitbake: user-manual-bitbakecommand.xml: Added anchor tag for the chapter.Scott Rifenbark
(Bitbake rev: 5aa6679aa8b5b6b8bf4b43cabde04072498ccea4) Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09bitbake: user-manual-fetching.xml: Re-write of "File Download Support" chapter.Scott Rifenbark
Basic re-write to clean up text and flow. (Bitbake rev: 0f82dc4c22ce015bef87fd5aae0b6fa3e429016e) Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09bitbake: user-manual: Added new chapter to cover BB execution.Scott Rifenbark
This commit added need files, cleaned up bogus links, and adjusted the build file, which is user-manual.xml. The new chapter file is "user-manual-execution.xml". The file has base text from the bitbake section from the "Closer Look" chapter of the YP ref-manual. This means that I had to initially include some figures from that book for now. I am not including them as part of this commit though as they will likely get renamed. I made sure that all links were removed that were specific to the YP ref-manual. Another change was in the user-manual.xml file to include the new chapter as part of the build. Another block of text for the new chapter was the "Running a Task" section from the user-manual-metadata.xml file. Consequently, that section was deleted from the "Metafile" chapter. Another block of text for the new chapter was the "Parsing and Execution" section from the user-manual-metadata.xml file. Consequently, that section was deleted from the "Metafile chapter. (Bitbake rev: f3b21d1fb711f9625d2ac92d4f4fe0f269242bd7) Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09bitbake: user-manual-intro.xml: Added an introduction to the manual.Scott Rifenbark
Describes purpose and qualifies some stuff. (Bitbake rev: b9704a367cccd85931fa4fb779d273a27361d503) Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09bitbake: user-manual-ref-variables.xml: Added a note qualifying the variables.Scott Rifenbark
The note provides some information in general about the variables that are part of the glossary. (Bitbake rev: 8bcc6d1f1ef4e647ad6153ed7a9e0bd5bc62cf0b) Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09bitbake: user-manual-metadata.xml: WIP - Some edits in the checksum area.Scott Rifenbark
(Bitbake rev: f74045d9ac88aece1d6f8d6a95389d01971ffdac) Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09bitbake: user-manual-metadata.xml: Rewrite "Accessing Datastore Variables ↵Scott Rifenbark
Using Python" Rewrote this section. Used a table instead of the funky list that was there. I still need to format it some. Also fixed up the term "datastore". It should not be "data store" (Bitbake rev: ee23839596102ccd58e028c10471438f2eb37feb) Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09bitbake: user-manual-metadata.xml: Re-write the "Dependencies" section.Scott Rifenbark
General edits and dumping of the useless "Overview" section. (Bitbake rev: b11ad97b9334a86b2f3b10bdf5597910854475bd) Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09bitbake: user-manual-metadata.xml: Re-write of "Variants - Class Extension ↵Scott Rifenbark
Mechanism" section. Some general rewrites here. (Bitbake rev: 7149ab6f6e936c19d681f05aa64b123c10f2f3da) Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09bitbake: user-manual-ref-variables.xml: Added BBVERSIONS variable.Scott Rifenbark
(Bitbake rev: 0ee8e8db8475903754d519c5e6d7ec8e52ba9c85) Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09bitbake: user-manual-metadata.xml: Re-write of "Events" section.Scott Rifenbark
General cleanup of the text. (Bitbake rev: 112dd4279826dc7587e1b8acb4a107374b5bd0fd) Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09bitbake: user-manual-metadata.xml: General cleanup to "Parsing and Execution"Scott Rifenbark
I went through and created links for variables we reference that are in the glossary. I also re-wrote much of the text to just clean it up. (Bitbake rev: dd9a4422d387da45f6de945eb4944c2a06bc98a0) Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09bitbake: user-manual-metadata.xml: Edits to "Variable Flags" sectionScott Rifenbark
Worked through this section with Richard providing an interactive review. The changes are after the review. There was also a small edit to the "Tasks" section. (Bitbake rev: cba57f8d900d7c3ed8da9fcab0697e3047476325) Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09bitbake: user-manual-metadata.xml: Rewrite of the "Tasks" section.Scott Rifenbark
I cleaned up this section with some general improvements. I also broke this up into a couple sub-sections where it seemed to logically fall. Also, stole some metadata concept from the next section ("Running Tasks") that really should be lumped under "Tasks". (Bitbake rev: 9673acda2239807e31f4fcda1574b3e5e2d013a6) Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09bitbake: user-manual-metadata.xml: Rewrite of the "Functions" section.Scott Rifenbark
Re-organized this around the 3 types of functions that we seem to be show-casing here. The original organization was not very good. (Bitbake rev: 77ef63e5c4a9ea633a1be0f9f90366e0ecf555fa) Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09bitbake: user-manual-ref-variables.xml: Edits to SRC_URI.Scott Rifenbark
(Bitbake rev: b8472f81387f8b8110cd560d61a4563d53d26859) Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09bitbake: user-manual-ref-variables.xml: Edits to BBCLASSEXTEND.Scott Rifenbark
(Bitbake rev: bc2a13ba86a5e01b457209b72608403e6aa12003) Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09bitbake: user-manual-metadata.xml: Edits to "Sharing Functionality"Scott Rifenbark
Applied some review edits from Paul to the section. (Bitbake rev: f4dc71a3ff2c7f2ca6093b751883a1244f8d3847) Signed-off-by: Scott Rifenbark <scott.m.rifenbark@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-03-09bitbake: user-manual-metadata.xml: Add bare bones of a scheduler sectionRichard Purdie
(Bitbake rev: cf0ccb26cc7af9f29704bb4c7ada6bf8ef5b0ee6) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>