Age | Commit message (Collapse) | Author | Files |
|
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>
|
|
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.
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
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.
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
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.
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
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
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>
|
|
Keep comments under 80 characters in length.
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>
|
|
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
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>
|
|
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>
|
|
The script was creating a FAT fs with EFI files in it, but wasn't setting the GPT GUID.
Using 'gummiboot install' natively failed because of the missing GPT GUID, so fix that. While we're there also set the name to "EFI System Partition".
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Acked-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
The script greps for 'Disk', which doesn't work when your crazy Dutch distro has parted call it 'Schijf', so force LANG=C.
The second problem is that 'Disk' might be a substring in the Model entry:
[root@Angstrom-F16-vm-rpm contrib] # parted /dev/sdc unit mb print
Model: SanDisk SDDR-113 (scsi)
Disk /dev/sdc: 3905MB
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
* Contents:
- Summary
- Usage
- Implementation summary
- Output
- TODO
* Summary:
This is used for printing what is about to happen between the current and last
builds, for example:
$ bitbake core-image-sato
# Edit some recipes
$ bitbake-whatchanged core-image-sato
The changes will be printed.
* Usage:
bitbake-whatchanged [[opts] recipe]
* Implementation summary:
- Use the "STAMPS_DIR=<path> bitbake -S recipe" to generate the new
stamps, compare these stamps to the one in the old stamps dir (tmp/stamps),
so we will get what are changed.
- When the "-v" (verbose) is not specified:
> Figure out the newly added tasks
> Figure out the PV (including PE) and PR changed tasks
> The left tasks are the ones that the "Dependencies" changed tasks
- When "-v" is specified:
> Figure out the newly added tasks
> Use bb.siggen.compare_sigfiles to figure out the details
* Output, for example (core-image-sato with different git tags)
and with recipes upgraded):
- without "-v":
Figuring out the STAMPS_DIR ...
Generating the new stamps ... (need several minutes)
=== Newly added tasks: (5 tasks)
core-image-sato: do_configure do_populate_lic do_install do_rootfs do_compile
# Note: This is because the "bitbake -S" always generate the sigdata for
# do_compile, do_rootfs and other task, we may need fix this from "bitbake -S"
=== PV changed: (130 tasks)
alsa-utils: 1.0.25 -> 1.0.26
cross-localedef-native: 2.16 -> 2.17
eglibc-initial: 2.16 -> 2.17
[snip]
=== Dependencies changed: (3593 tasks)
busybox: do_package do_package_write do_build do_packagedata do_populate_sysroot do_install do_compile do_package_write_rpm do_configure do_populate_lic
atk-native: do_compile do_package_write_rpm do_package do_configure do_populate_sysroot do_install do_populate_lic do_patch do_packagedata do_build do_package_write do_unpack
[snip]
=== Summary: (3728 changed, 1134 unchanged)
Newly added: 5
PV changed: 130
PR changed: 0
Dependencies changed: 3593
Removing the newly generated stamps dir ...
- with "-v":
=== Newly added tasks: (5 tasks)
core-image-sato: do_configure do_populate_lic do_install do_rootfs do_compile
=== The verbose changes of glib-2.0-native.do_do_install:
Hash for dependent task virtual:native:glib-2.0_2.34.3.bb.do_compile changed from bab8b8dd95be1b83dcec93f755b1812b to 70f746df7809acaa52de204b0685abb4
[snip]
=== Summary: (3728 changed, 1134 unchanged)
Newly added: 5
Dependencies changed: 3723
Removing the newly generated stamps dir ...
* TODO
- It seems that the "bitbake -S core-image-sato" has bugs, it would always
report errors, but doesn't fatal errors
- The gcc-cross' stamps are in tmp/stamps/work-shared, but the
"bitbake -S" doesn't put the stamps in work-shared.
- The "bitbake -S" always generates the sigdata for image recipe's do_compile,
do_install and other tasks, we may need fix this from "bitbake -S".
- Print the ones which can be installed from the sstate.
[YOCTO #1659]
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
Add STAMPS_DIR for constructing STAMP, the defination of STAMP is:
STAMP = "${TMPDIR}/stamps/${MULTIMACH_TARGET_SYS}/${PN}/${EXTENDPE}${PV}-${PR}"
We can only change the TMPDIR if we want to change the STAMP's location,
but the bb_cache.dat would be regenerated if TMPDIR changes, so add
STAMPS_DIR for constructing it, and add it to the BB_ENV_EXTRAWHITE,
this is very usefull for the "bitbake -S", since then it can be run by:
STAMPS_DIR=<path> bitbake -S <recipe>
which will avoid putting the stamps to ${TMPDIR}/stamps.
BTW, break the too long BB_ENV_EXTRAWHITE into several lines.
[YOCTO #1659]
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
kernel
With 3.8 kernels we get a harmless error message during kernel boot.
For now we can ignore. This allows the tests to pass and ensures we
can merge the 3.8 kernel.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Don't hardcode available sstate_suffixes(it misses `packagedata'), find them
dynamically in $sstate_list.
[YOCTO #3635]
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
The description of option `-d' is not correct in useage. It is used to
remove duplicate and debug at the same time. Use option `-D' to control
debug info output and the option `-d' to flag remove duplicate.
[YOCTO #3635]
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
The implementation of `--remove-duplicated' has been modified by the commit:
http://git.yoctoproject.org/cgit/cgit.cgi/poky/commit/?id=0740f82aea92da0195524e37c372f9981e7f5e6d
In above commit, sstate cache files with multiple archs are not considered
duplicate and don't need to be removed as duplicated any more.
Update the description of `--remove-duplicated' in usage to keep consistent
with implementation.
[YOCTO #3635]
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
* 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>
|
|
Modify the include file and script to generate a missing RDEPENDS.
Install python on target with python-io. Import ssl:
Python 2.7.3 (default, Feb 9 2013, 16:04:35)
[GCC 4.7.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import ssl
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib/python2.7/ssl.py", line 58, in <module>
ImportError: No module named textwrap
Installing python-textutils solves the issue.
Signed-off-by: MiLo <milo-software@users.sourceforge.net>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
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 scripts/postinst-intercepts will contain all postinstall hooks that
we need to run after all packages have been installed.
If one wants to install such a postinst hook, all it needs to do is put
the hook in this directory and, from the package postinstall scriptlet,
call:
postinst_intercept <hook_name> <package_name> <var1=...> ...
This will, practically, add the package_name in the list of packages
that need the hook to run and, also, set any variables that would be
needed in the hook. For example, variables like ${libdir}, ${bindir},
etc. that might depend on distribution can be passed on to the script in
this way.
Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Avoid the chicken / egg problem of an SDK that provides a working
python but requires that version of python to extract itself. The
RHEL 5.x systems and some other enterprise Linux systems ship with
python 2.4.x as the default python. We need to at least be able to
extract work executables even if we never use the the host provided
python again.
Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
There are two cases of corruption that the relocate_sdk.py was not correctly
dealing with.
1) SDK Extras should be left alone
Extra external binaries included in an SDK that were linked against the
host's version of /usr/lib/ld-so.so should not get a relocation applied.
In the case that was discovered these were LSB compliant binaries that
already worked on many hosts.
2) If the interp section is too small generate an error
In the case of the qemu user code, it was using its own .ld file
to link the executables which overrides the default in the nativesdk
binutils. This generated host executables which had a interp section
that was too small to relocate.
Now the relocate_sdk.py will print an error and continue on such that
the error can be fixed by a developer without having to do the
difficult task of debugging why it is crashing or not loading correctly.
Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
The new oe-git-proxy should address all git proxying needs, remove
the previous scripts.
V2: Separate the removal of the old scripts into their own patch
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
BSD nc was commonly available on the current distros until Fedora 18
appears to have dropped it. socat appears to be a reasonable replacement
with availability on Fedora and Ubuntu and going back some time as well.
Update the script to use the socat syntax.
Simplify the logic a bit by using exec for the no-proxy-needed cases.
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
oe-git-proxy.sh is a simple tool to be used via GIT_PROXY_COMMAND. It
uses BSD netcat to make SOCKS5 or HTTPS proxy connections. It uses
ALL_PROXY to determine the proxy server, protocol, and port. It uses
NO_PROXY to skip using the proxy for a comma delimited list of hosts,
host globs (*.example.com), IPs, or CIDR masks (192.168.1.0/24). It is
known to work with both bash and dash shells.
V2: Implement recommendations by Enrico Scholz:
o Use exec for the nc calls
o Use "$@" instead of $* to avoid quoting issues inherent with $*
o Use bash explicitly and simplify some of the string manipulations
Also:
o Drop the .sh in the name per Otavio Salvador
o Remove a stray debug statement
V3: Implement recommendations by Otavio Salvador
o GPL license blurb
o Fix minor typo in comment block
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Cc: Enrico Scholz <enrico.scholz@sigma-chemnitz.de>
Cc: Otavio Salvador <otavio@ossystems.com.br>
git-proxy cleanup
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Applications are inconsistent in their use of upper and lower case proxy
variables. Curl, for example, specifies NO_PROXY (not no_proxy) in the
man page (changed in 2009 [1]). Avoid proxy issues by ensuring both the
upper and lower case versions of each proxy variable are available in
the environment for the fetcher commands.
Add FTPS_PROXY and ftps_proxy to the list as well.
1. http://curl.haxx.se/mail/tracker-2009-04/0012.html
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
The following variables perform no function outside of bitbake:
GIT_CONFIG
GIT_PROXY_HOST
GIT_PROXY_PORT
GIT_PROXY_IGNORE
GIT_CONFIG only affects the git-config command which is not relevant to
the fetcher. This was previously used with the OE GIT_CORE_CONFIG
variable which would provide a basic git config to use instead of the
user's config. This usage was deprecated by git for over a year now:
http://git.661346.n2.nabble.com/Overriding-gitconfig-using-GIT-CONFIG-td6680977
GIT_PROXY_HOST and GIT_PROXY_PORT are not used by git.
GIT_PROXY_IGNORE was an OE construct used to create the custom git
config and had no meaning outside of the OE environment. It is not used
by git.
Remove these variables from the fetcher environment.
Users wishing to configure git to work with a proxy should define the
GIT_PROXY_COMMAND environment variable to use an external script.
NO_PROXY can be used within this script to skip the proxy for certain
hosts.
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
If the qemu is running on a headless machine, a VNC server that only allows
connections from localhost isn't too useful.
Add a "vncpublic" option to bind a VNC server to 0.0.0.0, so it's publically
available.
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
1. Tell easy_install to always download, regardless of python
install content.
2. Support https/ftp et.c. URLs provided by easy_install
Signed-off-by: David Nyström <david.nystrom@enea.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
The script was erroring out without a hint on what failed.
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
* otherwise it shows error about failing import
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
1. Added ability to parse .zip files.
2. Added optional automatic dependency resolving for python
recipes(easy_install wrapper).
3. Fixed a few name/version bugs.
Give it a whirl by:
create-recipe -r https://launchpad.net/nova/folsom/2012.2.3/+download/nova-2012.2.3.tar.gz
Saves me some time unwinding python dependencies, and creating template recipes.
Signed-off-by: David Nyström <david.nystrom@enea.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
* useful e.g. when sending pull-request to release branch with extra CC
for release maintainer
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
|
|
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>
|
|
Add a script to wipe the sysroots and all of the relevant stamps, so that it
will be correctly re-populated.
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
- use migrate_localcount.bbclass to generate AUTOINC entries
which are exported to LOCALCOUNT_DUMPFILE
- import the generated AUTOINC entries
- one can migrate LOCALCOUNT to AUTOINC by executing:
bitbake-prserv-tool migrate_localcount
[YOCTO #3071]
Signed-off-by: Constantin Musca <constantinx.musca@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
The BB and PM ranges were originally intended to use leading 0s to
ensure all the values were the same string length, making for nice log
filenames and columnar dat files. However, not everyone will do this -
especially if it isn't documented.
Document the intent. Make the generation and parsing of dat files robust
to either method.
Signed-off-by: Darren Hart <dvhart@linux.intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Add support for booting an ISO image for runqemu scripts.
[YOCTO #3710]
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
|
|
Add 'debugshell' as a default kernel option for ramfs booting.
If rootfs.img cannot be found under /media, init-live.sh loops
forever without showing any information. Silently looping forever
and blocking users is inappropriate.
Now that the 'debugshell' feature has been implemented in init-live.sh,
It's reasonable to add it to the kernel option when booting a ramfs-based
image. In this way, the system doesn't loop forever and instead drops
to a shell after a default timeout (30 seconds).
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
This ensures that regardless of what else is in our search path, we always use
the bitbake corresponding to the running buildhistory-diff command.
Signed-off-by: Christopher Larson <chris_larson@mentor.com>
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>
|
|
not tracked by sstate
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
checksums between MACHINEs
* takes tmpdir, machines and targets from command arguments or env variables
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|