summaryrefslogtreecommitdiffstats
path: root/scripts
Commit message (Collapse)AuthorAgeFilesLines
* oe-buildenv-internal: Only add to $PATH if neededPeter Kjellerstedt2013-04-091-2/+3
| | | | | | | | | | | If $PATH already has the needed paths at the beginning, there is no need to add them again. This allows rerunning oe-init-build-env for the same directory without having $PATH increase unnecessarily every time. (From OE-Core rev: 161abcd3672f83990ede03d67b7388678c07150e) Signed-off-by: Peter Kjellerstedt <pkj@axis.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* scripts/oe-pkgdata-util: find complementary packages for split packagesPaul Eggleton2013-04-081-3/+10
| | | | | | | | | | | | | Check after getting the original package name (e.g. undoing Debian renaming) if there is a complementary package for that name, e.g. if the glob is *-dev, then libudev0 -> libudev -> libudev-dev. Fixes [YOCTO #4136]. (From OE-Core rev: 84a1c6922934a99e8afee0185e58dc4789b54a22) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* qemuimage-tests/sanity/boot: Increase timeoutRichard Purdie2013-04-061-1/+1
| | | | | | | | | | | | | | | | | | As we've increased the parallelisation on the build servers, we've started to see core-image-minimal sanity test boot failures where the network never comes up. We don't see those failures for core-image-sato, its always minimal. Looking at the results, it can take ~100 seconds for the network to come up, even on the sato images if the machine has a high load. The timeout for the boot test is only 120 seconds compared to 400 on every other test. This change makes the timeout equal for all the tests at 400 seconds in the hope that the load on the autobuilder is causing the sanity tests to run slowly and hence triggering the false negatives. (From OE-Core rev: 331118a253e26821011a31ca9087611ea58a18b8) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oe-setup-builddir: Allow $OECORENOTESCONF to not existPeter Kjellerstedt2013-04-051-1/+1
| | | | | | | (From OE-Core rev: 6fc14169ac0c3001e3a69eda8d07fc0ac93a15ee) Signed-off-by: Peter Kjellerstedt <pkj@axis.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* yocto-bsp: change qemu-based mips BSP default branchTom Zanussi2013-04-053-3/+3
| | | | | | | | | | The default branch for the qemu-based mips BSP template no longer exists, so change to one that does. (From meta-yocto rev: 5af614322269ee7c79928d1ff343f2e3bcf35509) Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* yocto-bsp: set SRCREV for arm-based qemu machinesTom Zanussi2013-04-051-0/+3
| | | | | | | | | | | arm-based qemu machines won't boot with the default 3.8 machine SRCREV because it's missing the commit 'arm: add dummy swizzle for versatile with qemu', so we need to use a SRCREV that has it merged. (From meta-yocto rev: 176ec06589032b0b589da8345adfc87dddcb74f0) Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* yocto-bsp: qemu machine template updatesTom Zanussi2013-04-051-5/+3
| | | | | | | | | | A few small changes to the machine.conf from the previous version that should be incorporated. (From meta-yocto rev: 05a86a2e8d69b32243ab1915b279411d3d82235f) Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* yocto-bsp: use specific bsp metadata for qemu machinesTom Zanussi2013-04-051-0/+7
| | | | | | | | | | For the qemu-based BSPs, use bsp metadata that's guaranteed to boot in qemu. (From meta-yocto rev: e274a2e66c26489a4da895194eb6e7a9c1476a73) Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* yocto-bsp: pass in file object to replace_file()Tom Zanussi2013-04-051-1/+1
| | | | | | | | | | Pass the file object instead of the filename to replace_file for the custom template, as now required by replace_file(). (From meta-yocto rev: 56091c019000cfe3d22ec464c596d97ae78fc619) Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* yocto-bsp: have replace_file() close file before copyingTom Zanussi2013-04-051-1/+2
| | | | | | | | | | | | replace_file needs to make sure the file it's replacing is closed before replacing it, otherwise unexpected results may ensue. Fixes [YOCTO #4145]. (From meta-yocto rev: 1339dbb690d51456b4474356992e430638469e47) Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* yocto-bsp: add linux-yocto-3.8-rt to templatesTom Zanussi2013-04-056-0/+215
| | | | | | | | | | RT support is now available in the linux-yocto-3.8 kernel, so we can also add that as kernel option for users. (From meta-yocto rev: 2e425b5c6c7e685e8a0e0c8cb2cf64040e454cad) Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* yocto-bsp: add KBRANCH for existing kbranch casesTom Zanussi2013-04-0530-0/+90
| | | | | | | | | | For the cases where a BSP reuses an existing branch, we still need the KBRANCH in order to be able to specify an existing branch. (From meta-yocto rev: 5a3167c4fa6cb53ec501e9de185b93748973ec18) Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* sanity/connman: when connman test fails, dump syslogRoss Burton2013-04-051-0/+1
| | | | | | | (From OE-Core rev: a51041db57666c60f39c4effa4aceb53cae815dc) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* qemuimage-testlib: add function to fetch the remote syslogRoss Burton2013-04-051-0/+43
| | | | | | | | | | Add a new function to scp from the target, and another to fetch /var/log/messages and dump it to the console. (From OE-Core rev: f94cb0d175309ad6b29598c57ba74cf1c3646661) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* qemuimage-testlib: silence some key warningsRoss Burton2013-04-051-6/+2
| | | | | | | | | | | Set StrictHostKeyChecking to no to silence the fingerprint warnings, and instead of creating a temporary file for the known hosts and then deleting it just use /dev/null. (From OE-Core rev: 24e4a570eb527cff017386976296d5747c1adf57) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* connman_test.sh: show all processes when dumping psRoss Burton2013-04-051-1/+1
| | | | | | | | | | | We know the grep failed because the error case is being executed, so don't do the grep again when attempting to help diagnose the problem, as seeing the full process list might be useful. (From OE-Core rev: 6ee4a2ba6ee9633c1fa08d3b162d6d00da307798) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* postinst-intercepts, qemu.bbclass: fix issue on 32 bit hostsLaurentiu Palcu2013-04-052-5/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The intercept scripts fail to run on 32 bit hosts. Apparently, the current approach worked on 64 bit hosts due to the larger virtual address space (probably). On 32 bit hosts, however, calling the target binary like: qemu-arm ld-linux.so --library-path /lib:/usr/lib arm_binary fails with: arm_binary: error while loading shared libraries: arm_binary: failed to map segment from shared object: Operation not permitted When run like this, qemu-arm fails to map the arm_binary executable in memory because it's hitting the lower limit of /proc/sys/vm/mmap_min_addr. That's because it loads the ld-linux.so binary successfully, taking into account mmap_min_addr, runs it, and then ld-linux.so will map the arm_binary at a fixed address but this will fail because it is below mmap_min_addr. The qemu's guest base probing, apparently, doesn't work fine when a program runs inside other. One way around this would be to set mmap_min_addr to 0 (on recent distributions is set to 65536 to avoid "kernel NULL pointer dereference" defects) but this approach is not safe. The other way is to call the binary directly but providing qemu with a prefix (-L option) in order to find the elf interpreter correctly. This way, both the target binary and dynamic loader are mapped into memory under qemu's control and, only after, the dynamic loader is started. [YOCTO #4179] (From OE-Core rev: 78f91e08c8a7b0f0c831a087f7c89e2c76047e7a) Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* qemuimage-testlib-pythonhelper: Fix process mixupsRichard Purdie2013-04-051-1/+5
| | | | | | | | | | runqemu-internal runs "ldd qemu-system xxx" and the detection code was returning this as the PID of qemu. This patch improves the detection code to avoid this problem, fixing certain race type failures on the autobuilder. (From OE-Core rev: fc914a6fb3204f8b5bdfc0f56364606673d5356a) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* scripts/sstate-cache-management.sh: fix return value by adding exit 0Henning Heinold2013-04-051-1/+1
| | | | | | | | | | * usefull for jenkins jobs, which will otherwise fail because 1 was returned (From OE-Core rev: a864de0f2a326f857125229fc986845044931196) Signed-off-by: Henning Heinold <heinold@inf.fu-berlin.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* scripts/qemuimage-testlib: Dump extra info if the network doesn't come upRichard Purdie2013-04-041-0/+4
| | | | | | (From OE-Core rev: db4a4cc8ba8082a27224a3e55fb5e8eb7de2bbe7) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* python: adding missing runtime dependency python-io to python-pprintLukas Bulwahn2013-04-041-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | When trying to import python-pprint on a minimal image, it reports that the cStringIO python module is missing. This is provided with python-io, so we add python-io as runtime dependency. The complete observed trace was: Python 2.7.3 (default, Apr 4 2013, 07:45:36) [GCC 4.7.2] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import pprint Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/usr/lib/python2.7/pprint.py", line 40, in <module> from cStringIO import StringIO as _StringIO ImportError: No module named cStringIO (From OE-Core rev: abe7bf9992e298f1b53e790eee7b064a9e4e8589) Signed-off-by: Lukas Bulwahn <lukas.bulwahn@oss.bmw-carit.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* qemu script: explicitly set 32 bit depthAlexandru DAMIAN2013-04-031-1/+1
| | | | | | | | | | | | | | | | Qemu update from 1.2 to 1.4 now allows for 16bit depth in guests, whereby previously only 32bit depth was supported. However, the new support is broken, so we force 32bit depth in all cases. MUST_REVERT: on qemu update, if 16bit depth support is working ok Fixes [YOCTO #3828] (From OE-Core rev: 354377789628d96fa589cb5721134f631815cfeb) Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* runqemu-internal: use MACHINE_SUBTYPE variable for qemuarm*Martin Jansa2013-04-031-2/+2
| | | | | | | (From OE-Core rev: ed07bb4214abb472da6aa7e164a20fd4be127e54) Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* qemuimage-testlib: Fix quoting issueRichard Purdie2013-03-301-1/+1
| | | | | | (From OE-Core rev: c8b411608bea2700e904141268f609eeee542ae2) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* qemuimage-testlib: Use ww option to ps to ensure command output isn't truncatedRichard Purdie2013-03-301-1/+1
| | | | | | (From OE-Core rev: 1347381b4f93b318fadc2360c4adf0c68b562b13) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* qemuimage-testlib: Increase qemu startup timeoutsRichard Purdie2013-03-301-2/+3
| | | | | | | | | | We are seeing timeouts on the autobuilder where qemu does start but the script doesn't appear to be able to detect it in time. This patch increases the timeouts since there seems little harm in doing so. (From OE-Core rev: 53071c6b569067f98c558ee667bb1a4be0d8f6db) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* scripts/contrib/build-perf-test.sh: add timings for bitbake -pStefan Stanacar2013-03-291-20/+42
| | | | | | | | | Add another test to time bitbake -p with and without cache/ or tmp/cache. (From OE-Core rev: 3ed59ee53ee7d87694670a7ba864165146b90a6b) Signed-off-by: Stefan Stanacar <stefanx.stanacar@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* scripts/contrib/build-perf-test.sh: add option to allow cherry-picking of ↵Richard Purdie2013-03-291-35/+49
| | | | | | | | | | | | | fix revisions Adds a -p option to allow cherry-picking of fix revisions. Removes the final build/sstate directories to stop running out of space. Runs subsequent tasks even if one test fails. (From OE-Core rev: 16ea0d406a31e08071ce7d475221f0b158165405) Signed-off-by: Stefan Stanacar <stefanx.stanacar@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* scripts/contrib/build-perf-test.sh: add a global results fileStefan Stanacar2013-03-291-16/+27
| | | | | | | | | | Append results from each run to a single file in order to keep a history. Also do some cosmetic changes and fix some whitespace. (From OE-Core rev: 9b99b4e9284071501859df5631e9019b3000ffe9) Signed-off-by: Stefan Stanacar <stefanx.stanacar@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* scripts/contrib/build-perf-test.sh: add a script for build performance trackingStefan Stanacar2013-03-291-0/+301
| | | | | | | | | | | | This script runs a series of builds (core-image-sato by default) with and without sstate cache and collects some metrics (time and size currently). It takes a commit as argument (-c <rev>) and measures wall clock for bitbake core-image-sato and virtual/kernel. (From OE-Core rev: ee9538081a0bccfb7eb2888b1b51fe9b71c8cb81) Signed-off-by: Stefan Stanacar <stefanx.stanacar@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* oe-setup-builddir: Possibility to customize text.Anders Roxell2013-03-291-10/+6
| | | | | | | | | | | Possibility to customize the text that is presented to the user when they execute the script. (From OE-Core rev: 6ad06582621fc20d09d4d7fd78ea7e175367c187) Signed-off-by: Anders Roxell <anders.roxell@enea.com> Tested-by: Maxin B. John <maxin.john@enea.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* classes/buildhistory: improve SRCREV recordingPaul Eggleton2013-03-291-0/+104
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Collect SRCREV information in a separate task and write it out in a format which is more consistent with the rest of the buildhistory output. Using a task means that SRCREV values will also be recorded for native recipes and not just target ones, and the new formatting also correctly handles multiple entries in SRC_URI. Also adds scripts/buildhistory-collect-srcrevs which will report on all of the recorded SRCREV values in a format suitable for use in global configuration (e.g. local.conf or a distro inc file) to override AUTOREV values to a fixed set of revisions. Example output: # emenlow-poky-linux SRCREV_machine_pn-linux-yocto = "b5c37fe6e24eec194bb29d22fdd55d73bcc709bf" SRCREV_emgd_pn-linux-yocto = "caea08c988e0f41103bbe18eafca20348f95da02" SRCREV_meta_pn-linux-yocto = "c2ed0f16fdec628242a682897d5d86df4547cf24" # core2-poky-linux SRCREV_pn-kmod = "62081c0f68905b22f375156d4532fd37fa5c8d33" SRCREV_pn-blktrace = "d6918c8832793b4205ed3bfede78c2f915c23385" SRCREV_pn-opkg = "649" Some notes on using this script: * By default only values where the SRCREV was not hardcoded (usually i.e. AUTOREV was used) are reported - use the -a option to see all SRCREV values. * The output statements may not have any effect in the face of overrides applied elsewhere; use the -f option to add the forcevariable override to each output line to work around this. * The script does not do any special handling for multiple machines; however it does place a comment before each set of values specifying which triplet they belong to as shown above. Relates to [YOCTO #3041]. (From OE-Core rev: 2179db89436d719635f858c87d1e098696bead2a) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* qemuimage-testlib: Capture stderror in the logs as well as stdoutRichard Purdie2013-03-271-2/+2
| | | | | | | | This allows error messages to be captured in the logs which is helpful. (From OE-Core rev: 09a5fec50d622d338db5bd5516d29e4f4d0cec0d) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* qemuimagetest: collect and print runqemu outputPaul Eggleton2013-03-261-2/+8
| | | | | | | | | | | If runqemu (or qemu itself) fails we need to know why, so tee out to a log file and print it when we can't find the qemu process or determine its IP address. (From OE-Core rev: 827106a57ca88760a19f9309d859b500c5c4fe97) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* qemuimagetest: fix erroneous ps errors when qemu couldn't be startedPaul Eggleton2013-03-262-2/+2
| | | | | | | | | | | | The helper script was printing an error to stdout when it couldn't find any qemu child processes; output this error to stderr instead and redirect stderr to /dev/null when running from qemuimage-testlib so that QEMUPID is actually blank if there are no qemu instances found. (From OE-Core rev: 7c2137a07cca8e1d40d3c8b4b2c6321d80f2b1de) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* scripts/lib/bsp: replace mesa-dri with mesa in machine.conf filesLaurentiu Palcu2013-03-222-5/+5
| | | | | | | | | | | mesa-dri has been renamed to mesa. [YOCTO #3385] (From meta-yocto rev: ba8d5b6dcb6fa4721e85b62f15713072cc0fa23f) Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mkefidisk: Use msdos partition tablesDarren Hart2013-03-221-9/+7
| | | | | | | | | | | | | | | While GPT works fine when writing to actual media, it cannot be reliably used for distributing disk images as it requires the backup table to be on the last block on the device, which of course varies from device to device. Use MSDOS tables instead. Use mkfs to label the filesystems as msdos tables do not support partition labeling. (From OE-Core rev: 049ea1e0a6a1017a5020de38bd7ce93515bd62f4) Signed-off-by: Darren Hart <dvhart@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mkefidisk: Remove startup.nshDarren Hart2013-03-221-4/+0
| | | | | | | | | | | | | | | Most firmware implementations use the EFI specified EFI/BOOT/bootia32.efi (and similar) boot paths. Only broken firmware uses different paths for removable media. In those cases, the user can add their own startup.nsh. For the compliant case, selecting "Shell" from the EFI boot menu should go to the shell. (From OE-Core rev: d031cdbf40231b8c103d78c69252bf9d584d0605) Signed-off-by: Darren Hart <dvhart@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mkefidisk: Always use rootwait and document kernel parameters usedDarren Hart2013-03-221-8/+8
| | | | | | | | | | | | | | | | Without a reliable way of knowing if the target device with be an asyncronous block device on the target (MMC or USB), err on the side of caution of always specifcy "rootwait", ensuring the kernel will wait for the device to appear and not abort if it hasn't appeared in time for mount. Document the remaining kernel parameters added by this script on the same line as rootwait. (From OE-Core rev: 5b6a6a3872fd341cf978be40c69707223e3c29df) Signed-off-by: Darren Hart <dvhart@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mkefidisk: Boot with ro kernel parameter instead of rwDarren Hart2013-03-221-1/+1
| | | | | | | | | | | | | | | | | There is no need to boot with "rw". Booting with "ro" will allow for fsck to be run during boot, and a proper /etc/fstab will still ensure the rootfs is "rw" by the time the user can interact with the system. Change the "rw" to "ro" in the kernel parameters specified in the generated grub.cfg file. Fixes [YOCTO 4036] mkefidisk.sh hardcodes 'rw' as root mount option (From OE-Core rev: 960f0cbf85a4124adbc74d8b2ceb09a7d39ecc04) Signed-off-by: Darren Hart <dvhart@linux.intel.com> Cc: Koen Kooi <koen@dominion.thruhere.net> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mkefidisk: Cleanup comment lengthDarren Hart2013-03-221-2/+2
| | | | | | | | | | Keep comments under 80 characters in length. (From OE-Core rev: 1fbab279edd0057193900646cf9f66323698e774) Signed-off-by: Darren Hart <dvhart@linux.intel.com> Cc: Koen Kooi <koen@dominion.thruhere.net> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* mkefidisk: Always specify a root= kernel parameterDarren Hart2013-03-221-2/+4
| | | | | | | | | | | | | | | | | The current script only replaces an existing root= kernel parameter which can result images created without a root= paremeter, even though the script expects a target rootfs parameter. Rather than replacing the root= parameter, delete the root= parameter if it exists, then append an appropriate root= parameter. Fixes [YOCTO 4035] mkefidisk.sh forgets to add root= parameter (From OE-Core rev: e5dbec7e7d3bb29676280823b0337ad429c75120) Signed-off-by: Darren Hart <dvhart@linux.intel.com> Cc: Koen Kooi <koen@dominion.thruhere.net> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* scripts/qemu-testlib: Add more debugging information1.4_M5.rc1Richard Purdie2013-03-211-10/+21
| | | | | | | | | | | | | This extra information should allow better forensics if the sanity tests fail as they're currently doing occasionaly on the autobuilder for unknown reasons. The patch also tightens up certain checks to remove pointless noise and error output from the logs. (From OE-Core rev: f9970aa0a44aca8ffe6c7a6a3261887fb0db38d2) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* scripts/runqemu-internal: Fix lock racesRichard Purdie2013-03-201-12/+7
| | | | | | | | | | | | | | | | There are two problems here. Firstly the grep command is unanchored so pid 345 will match against 12345 and so on. The second issue is that there are several context switched between attempting the lock and then writing the pid to it. Between the two issues, there were issues appearing on the autobuilder due to these conflicts. This patch replaces the mechanism with flock on fd 8 which should be a safer mechanism to use. (From OE-Core rev: 98471be6e58451016200cfd10e64e8ae6266c801) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* runqemu: Improve error handling/exit codesRichard Purdie2013-03-202-17/+19
| | | | | | | | | | | | | runqemu-internal is sourced so should be returning with an error code in case of errors. runqemu needs to deal with this. This patch fixes up the various error paths so we're consistent and get a sane exit status for runqemu which helps a lot in its use in the qemu runtime testing on the autobuilder. (From OE-Core rev: 753533b2f338ff2ef97eebd5eace7623404ae457) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* qemuimage-testlib: Add extra debugging and sanity checkRichard Purdie2013-03-201-1/+3
| | | | | | | | | | | Check for a zero IP address since its clearly incorrect if that value is found. Also add debugging for cases where we can't find the qemu process. A process listing is handy to help understand what the problem might be. (From OE-Core rev: 817a8dc6424050973d8fad4f003475ac83ea6bb5) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* qemuimage-testlib: Add delay to work around races in qemu startupRichard Purdie2013-03-201-0/+2
| | | | | | | | | | | Qemu changes pid when starting up. On a loaded machine, this can result in the incorrect pid being returned. Since qemu will take a few seconds to boot anyway, we might as well delay a short while and allow things to settle which should fix various race issues being seen on the autobuilder. (From OE-Core rev: c0cecc16d4305b16ecfb4a51f6d5020d34909794) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* qemuimage-testlib: Fix IP address handlingRichard Purdie2013-03-191-4/+2
| | | | | | | | | | Remove some pointless code and also fix the return handling for the function since it returns null, not 0 as the comments would suggest. (From OE-Core rev: 6b8d7767ff14345af29d7774b7e16e29c3f7fa8e) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* scripts/qemutestlib: Add better process debugging and fix process group issueRichard Purdie2013-03-191-5/+20
| | | | | | | | | | | In single testing with a shutdown scenario the processes are cleaned up correctly but the manual cleanup fall back used for a minimal image do not work properly. This patch fixes the kill commands to revert to non-process groups, fixing the hung process issues that were occuring. (From OE-Core rev: 6a0134fd4f1b64ef788be0791bd655dc7703d505) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* layer.conf: avoid unnecessary early expansion with :=Christopher Larson2013-03-192-6/+6
| | | | | | | | | bitbake handles immediate expansions of LAYERDIR for us automatically. (From meta-yocto rev: ee59f1ec94ba8474876603dad1ab32d131227f49) Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>