Age | Commit message (Collapse) | Author | Files |
|
This allows error messages to be captured in the logs which is helpful.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
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.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
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.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
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.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
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.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
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.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
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.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
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.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Remove some pointless code and also fix the return handling
for the function since it returns null, not 0 as the comments
would suggest.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
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.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
The current code has a race since it greps for *any* qemu process
running, even if it isn't the one we started. This leads to some sanity
tests potentially failing on machines where multiple sets of sanity tests
are running.
To resovle this and some other ugly code issues, add a python script
to accurately walk the process tree and find the qemu process. We can
then replace all the shell functions attempting this which happen to
work in many cases but not all.
Also clean up some of the error handling so its more legible.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
* Currently the assumption is made that only oe-core can include a scripts
directory.
* However, when other layers create a scripts directory the bitbake script
freaks out causing a infinite recursive loop until it crashes.
* Simply changing the regular expression to remove all instances of scripts path
instead of just the first one fixes this problem.
[Yocto Bug 3872]
Signed-off-by: Franklin S. Cooper Jr <fcooper@ti.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
Forcing ps to display unlimited column width allows the qemu IP address to
be discovered during sanity testing when the command line is extremely long.
This seems to fix the sanity testing problem on AB05 which was recently updated
to OpenSUSE 12.2. I'm not sure what about qemu or process listing is different
on that distribution but this simpile fix seems to work and my help on other
distro's as well.
Signed-off-by: Michael Halstead <michael@yoctoproject.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
The problem: SDK binaries were not properly relocated when the SDK
was installed into a path that had a length less than the default one.
Apparently, there were two problems here: the padding was done wrong
(the size of one program header table entry was used instead of the
program section size) and the new padded string was not used at all.
[YOCTO #3655]
Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
systemtap_target_arch() should also translate x86-64 (hyphenated) into
x86_64 for the -a param. Failing to do that causes systemtap to see
an architecture mismatch and create a cloned session with a bogusly
synthesized build directory path, and fails to compile the probe.
Fixes [YOCTO #3756]
Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Signed-off-by: Björn Stenberg <bjst@enea.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
location doesn't exist
* fixes [YOCTO #3116]
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
This allows for use of bitbake in offline mode, but override it in
command line.
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
A miscalculation in the way the port numbers of mountd and nfsd
are created was causing conflicts when starting multiple instances
of qemu using userspace nfs.
Thanks to Rudolf Streif for proposing this fix!
Fixes [YOCTO #1969]
Signed-off-by: Scott Garman <scott.a.garman@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
mountd requires rpcbind or portmap. Check that one of these
services is running before doing anything else, and report
a user-friendly error when they are not found.
Signed-off-by: Scott Garman <scott.a.garman@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Signed-off-by: Scott Garman <scott.a.garman@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
If vhost_net module is not properly installed,
runqemu script will report the error and
provide the user with a link to the guide.
Also corrected small cosmetic issues in
runqemu script messages.
Also removed <> (read/write) check.
Fixes [YOCTO #3184]
Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
The SDK/ADT may ship with a python installed which may not have all the modules
need for a bitbake build. We should therefore detect if its already present in the
environment and error out in this case, asking the user to use a clean environment.
This also removes the potential for any other conflict between the two.
[YOCTO #2979]
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Bitbake fails to run when an empty element exists in $PATH. Avoid
creating this situation when $CROSSPATH is not set.
This fixes bug [YOCTO #3101]
Signed-off-by: Scott Garman <scott.a.garman@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
Ran into another bug that was masked by hiding a bitbake error message.
This catches this situation and displays the error to the user.
Also includes whitespace fixes.
Signed-off-by: Scott Garman <scott.a.garman@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
location doesn't exist
* fixes [YOCTO #3116]
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
If the files being relocated are already used by other processes the
relocate script will fail with a traceback. This patch will trap any IO
errors when opening such a file and gracefully report them to the user.
Also change the exit code from 1 to -1 for a better adt-installer user
experience (like pointing the user to the adt_installer.log).
[YOCTO #3164]
Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
On Fedora systems (and likely others), ifconfig returns interface
names that end with a colon. Make sure we strip the colon off the
tap device name before using it.
This fixes [YOCTO #3028]
Signed-off-by: Scott Garman <scott.a.garman@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
KVM, paravirtualization and virtio drivers are now activated
in runqemu using the kvm option flag for qemux86-64.
Host CPU features are also exported to guest OS (Yocto Linux).
Usage example: runqemu qemux86-64 core-image-x11 kvm
Implements [YOCTO #2550].
Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
KVM, paravirtualization and virtio drivers are now activated
in runqemu using the kvm option flag for qemux86.
Host CPU features are also exported to guest OS (Yocto Linux).
Usage example: runqemu qemux86 core-image-x11 kvm
Implements [YOCTO #2550].
Signed-off-by: Cristian Iorga <cristian.iorga@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
In certain edge cases, bitbake may fail to run and cause setup_tmpdir()
within runqemu to fail, and not give the user a helpful error message.
Catch this case and show the user the output of bitbake -e.
This fixes [YOCTO #3112]
Signed-off-by: Scott Garman <scott.a.garman@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
Sometimes it is convenient to prepare a bootable image from the
host rather than using a live-image to install to a disk on the
target.
This script takes a live image as input, partitions a device, and
performs the installation just as the installer would if run on
the target.
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
oe-core removed the prerequisite to have sh as bash. POSIX doesn't define
any options and furthermore allows 'echo -e' to be the default behavior.
This means that in dash 'echo -e' will actually print '-e' and interpret
backslashes by default. We use instead 'printf' builtin command with or
without '\n' to simulate 'echo -e' or 'echo -n'.
'printf' needs format while 'echo' can be used without any arguments. So
'echo >' was replaced by 'printf "" >'.
'echo' without '-n' flag adds a new line by default so to keep the same
behavior of two new lines while using 'echo "\n"', 'printf "\n\n"' is
used.
[YOCTO #3138]
Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
If both branch and last_revision are specified for a component when
combo-layer init is run, ensure that the specified revision is actually
on the specified branch and error out if not. Also ensure that the error
message mentions the component.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
If last_revision is specified for a component when running combo-layer
init, then use that revision instead of the latest revision on the
branch. Also, remove unnecessary git checkout during init since we
specify the revision to all calls to git when dealing with the component
repositories.
Fixes [YOCTO #3040].
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
When using runqemu with distros outside oe-core then
MACHINE may not be there in local.conf so use the one
thats available in environment of runqemu which is actually
the correct one.
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
New qemu calls the x86 system emulator to be qemu-system-i386
which is consistent now so change it in scripts
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
modified scenario files.
Signed-off-by: veerabrahmam <veerabrahmamvr@huawei.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
one test case to check syslogd is executing on target.
Signed-off-by: veerabrahmam <veerabrahmamvr@huawei.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
one test case to check disk space availability.
Signed-off-by: veerabrahmam <veerabrahmamvr@huawei.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
one test case to check bash command availability on qemu target.
Signed-off-by: veerabrahmam <veerabrahmamvr@huawei.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
the autoconf-nativesdk package name was recently changed to nativesdk-autoconf which in turn broke the cleanup-workdir script. Changed the package to the correct name.
Signed-off-by: Jack Mitchell <jack.mitchell@dbbroadcast.co.uk>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
* The problem is that you're looking for duplicates across all available archs, so
armv4t and armv7a populate_sysroot are considered duplicate and only last one is
kept, but to rebuild from sstate-cache you need both!
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
* find them dynamically in layers like AVAILTUNES
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
available tunes
* many layouts have other layers on the same level as oe-core checkout
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
* it was also picking line
openembedded-core/meta/conf/machine/include/README:AVAILTUNES - This is a list of all of the tuning definitions currently
filling all_archs with wrong entries
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
* using checksum without recipe/task name doesn't seem like good idea IMHO
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
"Package group" is a much more appropriate name for these than task,
since we use the word task to describe units of work executed by
BitBake.
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
This script makes it easy to run a systemtap script on a remote target
from a build host.
The script itself contains documentation on basic setup and usage -
see that for details. In a nutshell, if you have a systemtap script
on the build host, this script allows that systemtap script to be
compiled and run on the target host and for the output appear on the
host terminal.
The crosstap script requires to an sdk build of the target (or a build
with 'tools-profile' added to EXTRA_IMAGE_FEATURES) because it needs
to be able to run the native systemtap built by the systemtap recipe,
which in turn needs access to the kernel built for the target in order
to build the kernel modules that implement the systemtap probe
specified by the systemtap script and which ultimately get shipped to
the target and insmod'ed there.
The crosstap script also needs to be able to ssh to the target host in
order insert the modules on the target, so the target system needs to
support incoming ssh connections.
Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|