summaryrefslogtreecommitdiffstats
path: root/recipes-extended/xen/xen-tools.inc
Commit message (Collapse)AuthorAgeFilesLines
* xen: port xen-tools.inc from masterBruce Ashfield2024-09-271-0/+7
| | | | | | | | | | The cherry-pick of xen-4.19 from master missed the xen-tools.inc file. This results in 9p not being packaged and a QA error during the build. Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* xen-tools: adjust recommendations for qemu package splittingBruce Ashfield2024-04-041-0/+1
| | | | | | | | When vmsep is enabled the qemu packages are split based on meta-virt policy. Detect this distro feature and update our dependencies accordingly. Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* xen: fix virtual RDEPENDS warningsBruce Ashfield2024-01-191-5/+5
| | | | | | | | | | | oe-core has started to warn when virtual/ is used outside of the DEPENDS (build) context. We tweak our rprovides/rdepends to use virtual- instead to avoid the warning: WARNING: RDEPENDS is set to virtual/xenstored, the substring 'virtual/' holds no meaning in this context. It is suggested to use the 'virtual-' instead. Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* xen-tools: move var-lib-xenstored.mount to be version specificBruce Ashfield2023-01-201-1/+0
| | | | | | | | | | | We adjusted xen-tools in 4.17 to account for /var/lib/xenstored not being present, but we didn't apply the same adjustment to the systemd packages. We move the service packaging to the 4.16 versioned recipe, as anything newer than that, won't have the .mount file. Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* xen: Add recipes for stable Xen 4.17 release and update masterMichal Orzel2023-01-101-0/+3
| | | | | | | | | | | | | | | | Add recipes for xen and tools for the newly released 4.17 version and take the opportunity to update master recipes. Reflect 4.17 tools changes in xen-tools.inc: - add test-paging-mempool to test package, - add init-dom0less script to xl package, - add localstatedir to xencommons package (this is needed as from 4.17 onwards, there is no /var/lib/xenstored resulting in /var being installed but not shipped in any package). Reviewed-by: Christopher Clark <christopher.w.clark@gmail.com> Signed-off-by: Michal Orzel <michal.orzel@amd.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* xen, xen-tools: add recommendation for Qemu for non-hvm x86Christopher Clark2022-05-091-7/+2
| | | | | | | | | | | | | The Spectre and Meltdown mitigations for Xen run PV guests within HVM virtual machines, so Qemu is no longer only needed for systems configured to run HVM guests. With the split xen hypervisor and tools recipes, the bios dependencies belong in the tools recipe, so move them and replace the hvm PACKAGECONFIG option with the recommendation based on target arch. Signed-off-by: Christopher Clark <christopher.clark@starlab.io> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* xen-tools: correct xencommons initscript for systemdBruce Ashfield2022-05-081-1/+1
| | | | | | | | | | | | | commit [xen-tools: don't declare xencommons as an initscript for systemd] was wrong in an amazing two ways. It has an extranenous } and it has inverted logic. The result is that xencommons is not being properly declared as an initscript for sysvinit, and hence we don't fully boot. It isn't a problem for most systemd configurations, so we were booting as the initscript wasn't firing. Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* xen-tools: don't declare xencommons as an initscript for systemdBruce Ashfield2022-04-211-1/+2
| | | | | | | | | | | | We previously disabled init.d/xencommons when systemd is the init system (to fix duplicate initialization of some resources), but during rootfs install, update-rc.d will look for the script if xencommons is declared as an initscript package. We match the installation and only delcare it as an initscript in a non systemd configuration. Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* xen-tools: remove unused systemd/sysvinit filesBruce Ashfield2022-04-191-3/+14
| | | | | | | | | | | | | The commit [ xen: only package xencommon systemd components if systemd is enabled] attempted to only package init.d scripts for non-systemd systems (and vice-versa for unit files). But the xen-tools builds installs the files uncondtionally, so we can end up with unpackaged files in some configurations. We can test on the init system and removed the unused versions of the init to avoid both packging and runtime issues. Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* xen: only package xencommon systemd components if systemd is enabledBruce Ashfield2022-03-211-6/+6
| | | | | | | | | | We've had reports of both the init.d xencommons and the systemd services attempting to initialize the console, and breaking boot. The systemd initialization really only needs to be enabled when systemd is in DISTRO_FEATURES, and init.d the opposite. Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* xen-tools: Load xen related kernel modules during system bootKamil Dziezyk2022-01-181-2/+1
| | | | | | | | | | | | | | This patch changes the location of xen.conf file, that contains list of kernel modules to be loaded during system boot, to "${nonarch_libdir}". This is done by removing '--with-systemd-modules-load=' flag from EXTRA_OECONF variable. Previous path based on "${systemd_unitdir}" was not considered by default by systemd-modules-load.service. Reviewed-by: Bertrand Marquis <bertrand.marquis@arm.com> Acked-by: Christopher Clark <christopher.w.clark@gmail.com> Signed-off-by: Kamil Dziezyk <kamil.dziezyk@arm.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* xen-tools: upgrade RSUGGESTS to RRECOMMENDS for ifupdownChristopher Clark2021-12-161-1/+1
| | | | | | | | | | | | | | | | Xen's networking for guests is typically configured using bridges and the standalone ifupdown package, which contains a more capable version of the tool than busybox, is needed to configure them, so: Increase the recommendation strength from RSUGGESTS to RRECOMMENDS to bring the package in by default, which fixes networking for images built with packaging formats that follow RRECOMMENDS but not RSUGGESTS. I should've paid closer attention to Corey's recommendation for this, so: Suggested-by: Corey Minyard <cminyard@mvista.com> Signed-off-by: Christopher Clark <christopher.w.clark@gmail.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* xen,xen-tools: update xen to new releasesEdward Pickup2021-11-021-0/+29
| | | | | | | | | | | | | | | | | | | Update the SHA in recipes for xen and xen-tools to use the latest releases; update xen 4.14 to xen 4.14.3 release, update xen 4.15 to 4.15.1 release, and xen 4.16 to the current master version. Add a comment to each recipe indicating which version of Xen is used in recipe. Do not apply patches that have been merged/solved in Xen and remove patch files not needed anymore. Create a test package to pack new tests introduced in 4.16. Add a depencency to util-linux-prlimit, as the xen 4.16 x86 requires prlimit, without this boot of dom0 fails. Signed-off-by: Edward Pickup <Edward.Pickup@arm.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* global: overrides syntax conversionBruce Ashfield2021-08-021-126/+126
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* xen, xen-tools: fix build and passing of CFLAGS via Xen varsChristopher Clark2021-07-141-1/+2
| | | | | | | | | | | | | | | | Ensure that the Xen build system variables EXTRA_CFLAGS_XEN_CORE and EXTRA_CFLAGS_XEN_TOOLS are passed into the compile steps. Update the hypervisor compilation to avoid passing in most compile flags from the build environment via EXTRA_CFLAGS_XEN_CORE -- prefer the compiler defaults and the flags set by the Xen build system, so only the debug prefix flags are provided. Observeration derived from the prior commit e99974aa, so: Reported-by: Diego Sueiro <diego.sueiro@arm.com> 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>
* xen, xen-tools: apply upstream fixes for gcc11 compilationChristopher Clark2021-07-141-4/+1
| | | | | | | | | Apply patches for the tools and hypervisor to Xen 4.15 and the git recipe and uprev Xen 4.14 to latest stable revision. Retire the previous -Wno-vla-parameter workaround. Signed-off-by: Christopher Clark <christopher.w.clark@gmail.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* xen-tools: Pass -Wno-vla-parameter to workaround when compiling with gcc-11Diego Sueiro2021-05-061-1/+4
| | | | | | | | | | | | | | When compiling xen-tools (4.14 and 4.15) with gcc-11 the following kind of errors are produced: linux.c:164:50: error: argument 7 of type 'const xen_pfn_t[]' {aka 'const long unsigned int[]'} declared as an ordinary array [-Werror=vla-parameter] 164 | const xen_pfn_t arr[/*num*/], int err[/*num*/]) | ~~~~~~~~~~~~~~~~^~~~~~~~~~~~ Workaround it by passing -Wno-vla-parameter to the compiler. Signed-off-by: Diego Sueiro <diego.sueiro@arm.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* xen-tools: remove multilib build requirement for x86-64Christopher Clark2021-04-201-37/+0
| | | | | | | | Xen 4.15 added support for standalone x86-64 hvmloader build and previous commit provided Xen 4.14 backports. Signed-off-by: Christopher Clark <christopher.w.clark@gmail.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* xen: Bump SRCREV to 4.14.1 and current masterBertrand Marquis2021-03-041-0/+14
| | | | | | | | | | | | | | | | | | | | Bump SRCREV version of xen recipes to use the latest 4.14 release (4.14.1) and the current status of master. This allows to remove some patches related to gcc 10 support which have now been merged in Xen. Xen-tools is modified to include the latest tools installed with Xen: - a rename of the bash-completion, - a new xl example, - xen-access, - xen-memshare (only available on x86). A new patch to fix python and pygrub is added as the makefiles have been deeply modified in 4.15 which require a new patch (but doing the same). Signed-off-by: Bertrand Marquis <bertrand.marquis@arm.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* xen: Fix python libraries installation on multilibBertrand Marquis2020-11-141-0/+2
| | | | | | | | | | | Fix install path for xen python libraries when multilib configuration is activated (which is mandatory to compile xen for x86_64). Depending on the version of Xen, the libraries are installed on lib or on the nonarch lib directory so add both. Signed-off-by: Bertrand Marquis <bertrand.marquis@arm.com> Change-Id: I1f7f81a4e9e1420bce55d1e4bfe03d98ac2c93a3 Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* xen: Fix x86_64 xen-tools installationBertrand Marquis2020-10-151-5/+5
| | | | | | | | | | Python related things are installed in /usr/lib and not /usr/lib64 even if xen-tools is built for x86_64 with multilib activated. Use nonarch_libdir variable for all python related files. Change-Id: I24e4336aaac4477efc5dc7426a6d9e909c98a6af Signed-off-by: Bertrand Marquis <bertrand.marquis@arm.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* xen, xen-tools: move tools-specific EXTRA_OECONF to xen-tools.incChristopher Clark2020-08-021-0/+8
| | | | | | | | | | Since the hypervisor recipe does not install init scripts, it does not include update-rc.d.bbclass, which defines INIT_D_DIR; so move the use of that and systemd and qemu tools-specific configure settings over into the tools include file. Fix a hardcoded bindir while at it. Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* xen-tools: packaging for new files in Xen 4.14Christopher Clark2020-07-201-0/+25
| | | | | Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* xen, xen-tools: update revision to Xen 4.13Christopher Clark2020-07-061-0/+6
| | | | | | | | Pull to the current tip of the stable 4.13 branch and apply an upstream 4.14-release-acked patch to xen-tools for a compiler warning in kdd. Signed-off-by: Christopher Clark <christopher.w.clark@gmail.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* xen-tools: use non-busybox ifupdown tool if availableChristopher Clark2020-07-061-0/+4
| | | | | | | | Adds: RSUGGESTS_${PN}-scripts-network = "ifupdown" Signed-off-by: Christopher Clark <christopher.w.clark@gmail.com> Suggested-by: Corey Minyard <cminyard@mvista.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* xen-tools: add RRECOMENDS qemu on ARM and x86 when HVM is enabledChristopher Clark2020-07-061-0/+6
| | | | | Signed-off-by: Christopher Clark <christopher.w.clark@gmail.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* xen-tools: fix COMPATIBLE_HOST restriction for i686Martin Jansa2020-03-031-1/+1
| | | | | | | | * let TARGET_VENDOR to be set to something else than the default: meta/conf/bitbake.conf:TARGET_VENDOR = "-oe" like other architectures use Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* xen, xen-tools: updates to the deploy taskChristopher Clark2020-02-271-2/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Amend addtask for deploy in both recipes: add deploy before do_build to ensure that it completes before the build step stamp is written. Suggested-by: Bertrand Marquis <bertrand.marquis@arm.com> Add comments explaining the scheduling of the deploy task to both the hypervisor and tools recipes. In the hypervisor build, change deploy to obtain files from ${B} rather than ${D}, since it allows a bbappend to modify boot binary file destinations in do_install without breaking do_deploy. To ensure that a deployed hypervisor has matching tools in any image being built, add a dependency to make sure that the tools have built and been staged first: do_deploy[depends] += "xen-tools:do_populate_sysroot" Also add a dependency to ensure that anything that the tools recipe deploys, such as a XSM policy file, has been deployed first: do_deploy[depends] += "xen-tools:do_deploy" Schedule deploy tasks after populate_sysroot to ensure that deployed binaries match those staged for inclusion in the image rootfs. Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* xen, xen-tools: remove stubs task and use multilib when necessaryChristopher Clark2020-02-271-13/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | The stubs task was MACHINE-specific due to the OE variables it accessed which had forced unnecessary rebuild work in OpenXT's multi-MACHINE builds. The stubs task was generating a 32-bit header file to satisfy the Xen tools firmware build to generate the hvmloader binary, which is only needed on x86-64 targets where HVM-mode guests are enabled. Remove this header file generation logic and similar in the configure task, and in the cases where hvmloader is to be built use multilib to provide a 32-bit sysroot and allow the build to obtain the needed 32-bit materials from their source: glibc. Building Xen tools for x86-64 with HVM-guest support enabled now requires the following to be added to a build conf file (eg. distro.conf, or local.conf) : require conf/multilib.conf MULTILIBS = "multilib:lib32" DEFAULTTUNE_virtclass-multilib-lib32 = "x86" Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* xen, xen-tools: separate COMPATIBLE_HOST for hypervisor and toolsChristopher Clark2020-02-271-0/+2
| | | | | | | The tools have broader platform compatibility than the hypervisor. Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* xen, xen-tools: update recipes for python3Christopher Clark2020-02-271-20/+37
| | | | | | | | | | | | | | | | | | | | | | | | | Adds patches for packaged scripts to enable deployment with python3 where they have been ported to python 3 upstream. setuptools3 inherits distutils3 which modifies ${B}, so cd ${S} is needed in the do_configure, do_compile and do_install steps. Remove python 2 dependency from the Xen recipes by adding a new separate recipe, xen-python2, for packaging the remaining optional scripts which are yet to be ported to python 3. Package naming in the separate recipe is chosen to support transition back into the xen-tools recipe if the scripts are ported later. Use RSUGGESTS to support inclusion of the xen-python2 scripts in images that include python 2. Drop the remus package python dependency since the script was removed in 2014: commit 5b66f84e37a45038f9e5dae7a5768a5525d1e6ba Add python3 RDEPENDS needed to run xenmon. Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* xen-tools: change globbing to fix syntax highlightingChristopher Clark2020-02-271-3/+3
| | | | | | | | | | | | A text editor can interpret /* as the beginning of a comment and then fail to find the matching */ it expects as a terminator. This causes it to mishighlight the rest of the file. Avoid this by using a different matching pattern. Fixes an annoyance when editing the file. No functional change intended. Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* xen: add seabios to RRECOMMENDS of xen-tools when HVM-enabledChristopher Clark2020-02-271-0/+1
| | | | | | | Launching HVM guest VMs requires a BIOS firmware binary. Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* xen-tools: move xentrace_setmask into the xentrace packageChristopher Clark2020-02-271-1/+1
| | | | | Signed-off-by: Christopher Clark <christopher.clark6@baesystems.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* xen: separate recipes for hypervisor and tools; switch to git as sourceChristopher Clark2020-02-271-0/+743
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>