| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add a new minimal OEQA test case to run the Xen Test Framework
test runner in the standard testimage step. Tested with qemux86-64
and designed for compatibility with Arm when XTF supports it.
To enable, append to local.conf:
INHERIT += "testimage"
QEMU_USE_SLIRP = "1"
TEST_SERVER_IP = "127.0.0.1"
To run: bitbake -c testimage xtf-image
For inspection while it runs, at another shell prompt:
* Observe the image booting:
tail -f ${TMPDIR}/work/qemux86_64-*/xtf-image/*/testimage/qemu_boot_log.*
* Observe the tests running once boot has completed:
tail -f ${TMPDIR}/work/qemux86_64-*/xtf-image/*/temp/log.do_testimage
The XTF test sequence by default is a single XTF test case with minimal
hardware dependency to ensure that Xen is running, the Xen toolstack is
functional and XTF works. Additional XTF test cases for an image can be
configured via variables that are documented in the OEQA test case:
* XTF_TEST_CASES_POPULATE
* XTF_TEST_CASES_SKIP
* XTF_TEST_CASES_REQUIRE
Since testimage requires a functioning network to perform the tests on
the image and the qemu MACHINES do not have networking enabled
this commit provides a new qemuboot-testimage-network bbclass to add an
image postprocess command to enable a functional eth0 for qemu MACHINES.
Signed-off-by: Christopher Clark <christopher.clark@starlab.io>
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
QB_MEM is now set via the qemuboot-xen-defaults bbclass and has the
better default value of 512MB, which fixes some test failures observed
when using the lower previous default value of 400MB.
The SYSLINUX_XEN_ARGS method of setting the intended dom0 memory level
did not take effect in practice, so remove it.
Signed-off-by: Christopher Clark <christopher.clark@starlab.io>
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
|
|
|
|
|
|
|
| |
The qemuboot launch method for x86-64 uses wic but Arm does not.
Signed-off-by: Christopher Clark <christopher.clark@starlab.io>
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add a dedicated bootloader config for the qemux86-64 machine so that the
'pmtmr=0' kernel command line argument can be provided, which removes an
error message that otherwise occurs in syslog during boot which is
detected by an OEQA test case causing it to fail.
A new kickstart file is provided that applies the new bootloader config
and it is supplied as an override to WKS_FILE for this image.
This is work towards enabling the Xen Test Framework (XTF) in the OEQA
testimage framework.
Signed-off-by: Christopher Clark <christopher.clark@starlab.io>
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
|
|
|
|
| |
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
OEcore/bitbake are moving to use the clearer ":" as an overrides
separator.
This is pass one of updating the meta-virt recipes to use that
syntax.
This has only been minimally build/runtime tested, more changes
will be required for missed overrides, or incorrect conversions
Note: A recent bitbake is required:
commit 75fad23fc06c008a03414a1fc288a8614c6af9ca
Author: Richard Purdie <richard.purdie@linuxfoundation.org>
Date: Sun Jul 18 12:59:15 2021 +0100
bitbake: data_smart/parse: Allow ':' characters in variable/function names
It is becomming increasingly clear we need to find a way to show what
is/is not an override in our syntax. We need to do this in a way which
is clear to users, readable and in a way we can transition to.
The most effective way I've found to this is to use the ":" charater
to directly replace "_" where an override is being specified. This
includes "append", "prepend" and "remove" which are effectively special
override directives.
This patch simply adds the character to the parser so bitbake accepts
the value but maps it back to "_" internally so there is no behaviour
change.
This change is simple enough it could potentially be backported to older
version of bitbake meaning layers using the new syntax/markup could
work with older releases. Even if other no other changes are accepted
at this time and we don't backport, it does set us on a path where at
some point in future we could
require a more explict syntax.
I've tested this patch by converting oe-core/meta-yocto to the new
syntax for overrides (9000+ changes) and then seeing that builds
continue to work with this patch.
(Bitbake rev: 0dbbb4547cb2570d2ce607e9a53459df3c0ac284)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The Xen hypervisor built for Arm 64-bit targets can be launched with
runqemu by providing a Device Tree binary and configuration for Qemu,
which enables interactive testing of Xen images.
Add qemuboot-xen-dtb.bbclass to add a new bitbake task for generating
the dtb file by using lopper on a device tree produced by Qemu.
Add qemuboot-xen-defaults.bbclass to supply working default parameters
for the qemuarm64 machine and general support for qemuboot for Xen,
and adjust the defaults as needed to boot successfully in testing.
Development aided by this script by Stewart Hildebrand of DornerWorks:
https://gist.github.com/stewdk/110f43e0cc1d905fc6ed4c7e10d8d35e
Signed-off-by: Christopher Clark <christopher.clark@starlab.io>
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Testing the Xen hypervisor, with the qemux86-64 MACHINE:
runqemu xtf-image nographic slirp
(login as root)
cd /usr/libexec/xtf
./xtf-runner --list pv
# run an example test:
./xtf-runner test-pv64-livepatch-priv-check
Signed-off-by: Christopher Clark <christopher.w.clark@gmail.com>
Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In some scenarios (and package managers), packages post install
scripts may have references to /bin/sh.
The package manager doesn't know if the scripts will run on the
build host or target, so we get a calculated redepnds on /bin/sh
base-files and base-passwd fall into this category of having
post installs, but no need for /bin/sh on the target.
If you know what you are installing, and want the smallest
container possible, this package will satisfy the dependency when
assembling the rootfs.
To enable it, put the following in a configuration file (local.conf
or otherwise):
PACKAGE_EXTRA_ARCHS_append = " container-dummy-provides"
This image will detect if the dummy provides arch is set, and will
automatically install the providing recipe, otherwise, busybox is
installed.
If you have a custom shell or want a different behaviour, the
CONTAINER_SHELL variable can be overriden.
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
|
|
|
|
|
|
|
|
|
|
| |
Sometimes Xen is built with different mixes of kernel modules and
built-in values. If we put our expected/default modules in a
variable, they can be overriden by a different kernel provider
as required
Signed-off-by: Bruce Ashfield <bruce.ashfield@xilinx.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
runqemu is looking for the QB_DEFAULT_KERNEL to be set to "none"
to trigger special processing. The current set of QB_DEFAULT_KERNEL=""
won't trigger that behaviour .. so we change the default.
We also make the assignments weak, to allow easier overrides in
specific implementations.
We also need a patch to qemuboot.bbclass to make the defaults ??=,
and when that is done, our ?= here will work properly.
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
|
|
|
|
|
| |
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Booting this Xen image with QEMU works when launching from the
wic-generated pcbios disk image with the directdisk-xen.wks kickstart
file, so add the variable settings to make doing it simple -- eg:
runqemu xen-image-minimal nographic slirp
Tested with MACHINEs: qemux86-64 and genericx86-64
Memory allocated to qemu is increased slightly over the default to allow
for running Xen and the Linux dom0 and guest VMs.
Signed-off-by: Christopher Clark <christopher.w.clark@gmail.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
uXen is a type-2 Open Source hypervisor from Bromium/HP.
https://www.bromium.com/opensource/
This adds packaging for the Linux guest support software, enabling OE
to produce VM images to run on the uXen hypervisor.
uxen-guest-tools: in-guest software device drivers
uxen-guest-image-minimal : minimal core image with uXen drivers
Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
|
|
|
|
|
|
|
|
|
| |
The hypervisor may not be within the dom0 filesystem image itself,
so add a task dependency to ensure that it is deployable:
do_build[depends] += "xen:do_deploy"
Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
|
|
|
|
|
|
|
| |
Xen HVM guests are only on x86 platforms so add the module via overrides.
Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change changes the names of many packages produced: the
xen-tools recipe now builds packages previous built by the xen
recipe, so the package prefix changes from "xen-" to "xen-tools-".
A temporary bbappend is provided for qemu to ease the transition.
Multiple motivations for recipe separation:
- improves efficiency of incremental build and development
- supports building the hypervisor and tools with different toolchains
and for different architectures
Switch to using a git recipe on the Xen stable branch:
- enables easier tracking of critical XSA security updates applied
upstream by just advancing SRCREV along the branch
Revision has been set to the tip of the stable-4.12 branch, which
has the one XSA-312 patch applied on top of RELEASE-4.12.2.
The recipe refactor externalizes the block tap components, to enable optional
building of blktap in a separate recipe outside xen-tools, needed by OpenXT.
xenstored is made a virtual package to support switching between
alternative implementations (several exist).
Update xen-image-minimal to install the xen-tools package, which
replaces what was previously xen-base.
Determine the flask policy filename, which is Xen-version specific,
using the same method as the Xen build system.
qemu: update PACKAGECONFIG[xen] for xen package renaming: allows builds
to continue correctly in the meantime while openembedded core and poky
are updated.
OpenXT ticket reference: OXT-1694
Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
|
|
|
|
|
|
|
|
| |
Change to inherit features_check, since distro_features_check has been
deprecated in OE.
Signed-off-by: Ming Liu <liu.ming50@gmail.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
The oe-core layer sets a variable which intends that linux-dummy is
set for container building. This commit would allow you to have a
specific kernel and board setup as well as generate multiple
containers by turrning off the linux-dummy check found in:
oe-core/meta/classes/image-container.bbclass
Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
container-base is a sample/reference image type that uses the
newly integrated image-oci image type to directly create OCI
compatible images from a build.
This image type can be inherited and extended to implement more
complex container types, with modified image configurations.
It is inspired by / based off the samples in the presentation
done by Scott Murray (Building Container Images with
OpenEmbedded and the Yocto Project) at ELCe 2018.
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Commit 4eee02bd6405557c664f91b6079c2f203d48c545 [meta-virtualization:
Drop ROOTFS_PKGMANAGE_BOOTSTRAP] missed this instance so we are
removing this last reference to ROOTFS_PKGMANAGE_BOOTSTRAP now.
The ROOTFS_PKGMANAGE_BOOTSTRAP has been universally removed since
oe-core commit 697804229a172125ce7d3bfc9b343812d6fe3240
[run-postinsts: simplify the logic of whether to install it to
images].
Signed-off-by: Mark Asselstine <mark.asselstine@windriver.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
|
|
|
|
|
|
|
|
|
| |
syslinux images cannot boot because they're missing of xen.gz
file. Current poky doesn't use populate() function, instead
syslinux_populate() can be used.
Signed-off-by: Dariusz Pelowski <dariusz.pelowski@gmail.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
|
|
|
|
|
|
|
|
|
| |
Remove recipe lines modifying DISTRO_FEATURES that were intended to
simplify the non-x86 x11 image dependencies, but did not.
Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com>
Reported-by: Mark Hatle <mark.hatle@windriver.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The logic for restricting the xen-pciback kernel module to x86-only
images was incorrect, resulting in the IMAGE_INSTALL_x86 and _x86-64
variables causing the IMAGE_INSTALL variable contents to be
overridden and incomplete.
This correction removes the specialized IMAGE_INSTALL_x86 and _x84-64
variables. The replacement logic causes a value with
conditionally-populated contents to be added to the IMAGE_INSTALL
variable.
Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fix the image for non-x86, both with and without x11 included.
* Only install xf86-video-vesa on x86 platforms as it is not
available elsewhere.
* In the absence of xf86-video-vesa (ie. on non-x86 platforms)
enable opengl and remove wayland from IMAGE_INSTALL to
satisfy build requirements for x11.
* Use IMAGE_FEATURES instead of DISTRO_FEATURES to enable x11
inclusion in the image.
* Verify the required DISTRO_FEATURE of 'xen' and if enabled, 'x11'.
* When building the Xserver with Xen in DISTRO_FEATURES, on non-x86,
turn off glamor by default, to remove dependency on egl.
Introduces: xserver-xorg_%.bbappend
Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
|
|
|
|
|
|
|
|
|
|
|
| |
This commit fixes the xen-image-minimal build for non-x86 arch with PCI enabled.
The Linux kernel option CONFIG_XEN_PCIDEV_BACKEND currently depends on X86.
This means that the xen-pciback kernel module cannot be included in this image
for non-x86 architecture builds, so don't attempt to install it in that case.
Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This inc file has not been used within meta-virtualization since:
Date: Tue Sep 10 21:02:41 2013 -0400
commit 214c4715f0ed53ba9c499932b0b6ee3f602ff89f
and has needed updating since the changes in:
Date: Wed Feb 24 01:23:58 2016 -0800
git://git.openembedded.org/openembedded-core
commit e38c94d6bf83ed3ca7f046d9503e81b927487bf2
Signed-off-by: Christopher Clark <christopher.w.clark@gmail.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The SYSLINUXCFG variable was renamed to SYSLINUX_CFG in poky and
openembedded-core with the commits referenced below.
This commit makes a corresponding change to fix the build for
xen-image-minimal.
Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com>
git://git.openembedded.org/openembedded-core
commit e38c94d6bf83ed3ca7f046d9503e81b927487bf2
git://git.yoctoproject.org/poky.git
commit bb1c719250cecc8725147cbdd999a9a44a11b549
Author: Robert Yang <liezhi.yang@windriver.com>
Date: Wed Feb 24 01:23:58 2016 -0800
syslinux.bbclass: make vm and live can be built together
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
|
|
|
|
|
|
|
|
|
| |
OE-Core has now dropped this var in the commit of
697804229a17<run-postinsts: simplify the logic of
whether to install it to images>.
Signed-off-by: Fupan Li <fupan.li@windriver.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
|
|
|
|
|
|
|
|
| |
The image-vm.bbclass had been removed by oe-core, and vmdk is replaced
by wic.vmdk.
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
|
|
|
|
|
|
|
|
|
| |
It can be confusing to users why things are failing with missing kernel
dependencies when you don't have 'xen' in your DISTRO_FEATURES. This
should provide them with some better info.
Signed-off-by: Doug Goldstein <cardoe@cardoe.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
|
|
|
|
|
|
|
| |
The 'base_contains' is now deprecated and only kept as a compatibility method. It will be removed in future releases.
Signed-off-by: Derek Straka <derek@asterius.io>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
|
|
|
|
|
|
|
| |
OE-core rev 0a3e8eb9f592c3f1edd2c7521855f7406541651a renamed 'image-vmdk' to 'image-vm'. IMAGE_FSTYPES didn't change, so keep those as 'vmdk'.
Signed-off-by: Koen Kooi <koen.kooi@linaro.org>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
|
|
|
|
|
|
| |
* Install QEMU from the distro as opposed to a specific xen-qemu setup
Signed-off-by: Nathan Rossi <nathan.rossi@xilinx.com>
|
|
|
|
|
|
|
| |
* Conditionally add packages to the image depending on whether the
machine supports the respective feature
Signed-off-by: Nathan Rossi <nathan.rossi@xilinx.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fix this warning:
WARNING: Function remove_packaging_data_files doesn't exist
The remove_packaging_data_files function is now handled automatically when
"package-management" is not in IMAGE_FEATURES. We should remove the lines,
as they are not needed and might interfere with correct operation of
postinstall scripts.
Signed-off-by: Maxin B. John <maxin.john@enea.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
|
|
|
|
|
|
|
|
|
|
| |
Install libcom32.c32 when populating syslinux-based images.
When syslinux upgraded to v6, libcom32.c32 became a dependency
for mboot.c32.
Signed-off-by: Chris Patterson <cjp256@gmail.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
|
|
|
|
|
| |
Signed-off-by: Chris Patterson <cjp256@gmail.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
|
|
|
|
|
|
|
| |
changes.
Signed-off-by: Chris Patterson <cjp256@gmail.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
|
|
|
|
|
|
|
| |
SYSLINUX_XEN_ARGS and SYSLINUX_KERNEL_ARGS to allow modification/overwriting.
Signed-off-by: Chris Patterson <cjp256@gmail.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
|
|
|
|
| |
Signed-off-by: Chris Patterson <cjp256@gmail.com>
|
|
|
|
|
| |
Signed-off-by: Mihai Prica <mihai.prica@intel.com>
Signed-off-by: David Nyström <david.nystrom@enea.com>
|
|
|
|
|
| |
Signed-off-by: David Nyström <david.nystrom@enea.com>
Reviewed-by: Bruce Ashfield <bruce.ashfield@windriver.com>
|
|
|
|
|
| |
Signed-off-by: Mihai Prica <mihai.prica@intel.com>
Signed-off-by: Raymond Danks <ray.danks@se-eng.com>
|
|
Signed-off-by: Raymond Danks <ray.danks@se-eng.com>
|