Commit Graph

17 Commits

Author SHA1 Message Date
Bruce Ashfield
21204daacb kvmtool: update -tip
Bumping kvmtool to latest, which comprises the following commits:

    4d2c017 Fix 9pfs open device file security flaw
    e73a6b2 x86: Enable in-kernel irqchip before creating PIT
    f6cc06d riscv: Fix guest poweroff when using PLIC emulation
    4ddaa42 riscv: Handle SBI DBCN calls from Guest/VM
    ef89838 riscv: Set mmu-type DT property based on satp_mode ONE_REG interface
    8cd71ca riscv: Add Zicond extension support
    8d02d5a riscv: Add Smstateen extension support
    3436684 riscv: Add Zicsr and Zifencei extension support
    6676856 riscv: Add Zicntr and Zihpm extension support
    6331850 riscv: Add Zba and Zbs extension support
    7887b39 riscv: Make CPU_ISA_MAX_LEN depend upon isa_info_arr array size
    fcb0767 riscv: Improve warning in generate_cpu_nodes()
    92ef2dc Sync kernel headers with v6.7 to enable additional Risc-V extensions
    095773e riscv: Fix guest/init linkage for multilib toolchain
    328f087 riscv: Use AIA in-kernel irqchip whenever KVM RISC-V supports
    17aab30 riscv: Add IRQFD support for in-kernel AIA irqchip
    0dff350 riscv: Make irqchip support pluggable
    56e2d67 riscv: Add Svnapot extension support
    26c8589 Sync-up header with Linux-6.6 for KVM RISC-V
    74af145 virtio: Cancel and join threads when exiting devices devices
    9cb1b46 pci: Deregister KVM_PCI_CFG_AREA on pci__exit
    d560235 virtio/pci: Use consistent naming for the PCI ISR bit flags
    2921448 virtio/pci: Treat PCI ISR as a set of bit flags
    353fa0d virtio/pci: Level-trigger the legacy IRQ line in all cases
    c7b7a54 builtin-run: Document mode=none for -n/--network
    4498eb7 Revert "virtio-net: Don't print the compat warning for the default device"
    106e2ea riscv: Fix guest RAM alloc size computation for RV32
    8659200 riscv: Add Ssaia extension support
    8f1e47c riscv: Add Zicboz extension support
    8c1584e riscv: Add zbb extension support
    b346fab riscv: Sort the ISA extension array alphabetically
    a416fdc riscv: Allow disabling SBI extensions for Guest
    9e9cfde riscv: Allow setting custom mvendorid, marchid, and mimpid
    be98682 Sync-up headers with Linux-6.4
    d834369 kvm tools: Add __DECLARE_FLEX_ARRAY() in include/linux/stddef.h
    15757e8 virtio-net: Don't print the compat warning for the default device
    63643b1 Apply scaling down the calculated guest ram size to the number of pages
    834e5ed Factor out getting the number of physical memory host pages
    b6bae72 Factor out getting the host page size
    bd4ba57 Add --loglevel argument for the run command
    fc184a6 util: Use __pr_debug() instead of pr_info() to print debug messages
    72e1394 Replace printf/fprintf with pr_* macros
    2cc4929 util: Make pr_err() return void
    0b5e55f vfio/pci: Clarify the MSI states
    3a36d34 vfio/pci: Initialize MSI vectors unmasked
    3b1cdcf virtio/vhost: Clear VIRTIO_F_ACCESS_PLATFORM
    46aaf3b virtio/vhost: Support line interrupt signaling
    d30d948 Factor epoll thread
    3a70ab1 virtio/net: Warn about enabling multiqueue with vhost
    33e026a virtio: Fix messages about missing Linux config
    13534ee virtio: Document how to test the devices
    53171d5 virtio/net: Fix feature selection
    cf8358d virtio/vsock: Fix feature selection
    13ea439 virtio/scsi: Fix feature selection
    b8420e8 virtio/scsi: Initialize max_target
    7bc3b5d disk/core: Fix segfault on exit with SCSI
    145a86f virtio/scsi: Fix and simplify command-line
    13e7d62 virtio/scsi: Move VHOST_SCSI_SET_ENDPOINT to device start
    029cd2b virtio/vhost: Factor notify_vq_gsi()
    676c0c8 virtio/vhost: Factor notify_vq_eventfd()
    745221e virtio/vhost: Factor vring operation
    f84ab9e virtio: Factor vhost initialization
    5311413 virtio/rng: Fix build warning from min()
    426e875 arm/kvm-cpu: Fix new build warning
    8f6cabb Makefile: Refine -s handling in the make parameters
    b17552e virtio: sanitise virtio endian wrappers
    c1eecc6 option parsing: fix type of empty .argh parameter
    bc23b9d virtio/rng: return at least one byte of entropy
    62ba372 virtio/rng: switch to using /dev/urandom
    77b108c arm: Do not add padding alignment for hugetlbfs backed memory
    9b46ebc Add virtio-transport option and deprecate force-pci and virtio-legacy.
    2f030d2 riscv: Move serial and rtc from IO port space to MMIO area.
    e17d182 riscv: Add --disable-<xyz> options to allow user disable extensions
    798398f riscv: Add Zicbom extension support
    b721ac0 riscv: Move reg encoding helpers to kvm-cpu-arch.h
    23a8ed9 riscv: Add zihintpause extension support
    ac16e94 riscv: Add Svinval extension support
    76dfc0c Update UAPI headers based on Linux-6.1-rc1
    5a9cde6 hw/i8042: Fix value uninitialized in kbd_io()
    78771e7 pci: Disable writes to Status register
    717a3ab virtio-net: Fix vq->use_event_idx flag check
    ed805be riscv: Fix serial0 alias path
    3c07aea riscv: Add Sstc extension support
    2b4fe0f riscv: Add Svpbmt extension support
    8aff29e riscv: Append ISA extensions to the device tree
    8d0face Update UAPI headers based on Linux-6.0-rc1
    9987a37 net: Use vfork() instead of fork() for script execution
    336751f Makefile: Introduce LIBFDT_DIR to specify libfdt location

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2024-03-15 17:17:20 +00:00
Bruce Ashfield
08435d20b1 recipes/classes/scripts: Drop SRCPV usage
bitbake has been enhanced such that SRCPV is no longer needed in
PV to handle updating git hashes and task signatures.

We can simplify our PV by dropping SRCPV

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2023-08-24 01:38:21 +00:00
Bruce Ashfield
2119189361 treewide: bulk update patches with status field
While the insane.bbclass upstream-status check hasn't been made
default, users of meta-virtualization may have it enabled in their
distros .. so the effect is the same. We must have this tracking
tag in out patches.

This is a bulk update to add the tag and silence the QA message.

As packages get updated, the normal/routine process of checking
the patches will continue, and the status fields may (or may not)
get more useful.

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2023-01-27 10:32:06 -05:00
Bruce Ashfield
e675e3ebbf kvmtool: refresh crosscompiler patch
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2022-12-07 16:12:33 -05:00
Bruce Ashfield
cec0d5ce99 kvmtool: update to latest
Bumping kvmtool to latest, which comprises the following commits:

    336751f Makefile: Introduce LIBFDT_DIR to specify libfdt location
    6c88c26 virtio/rng: Zero-initialize the device
    fe21827 virtio/pci: Deassert IRQ line on ISR read
    ae22ac7 Makefile: Fix ARCH override
    3863f34 Makefile: Add missing build dependencies
    6a1f699 arm64: pvtime: Use correct region size
    c86ef0b virtio/pci: Remove VIRTIO_PCI_F_SIGNAL_MSI
    3d5cefc virtio/pci: Initialize all vectors to VIRTIO_MSI_NO_VECTOR
    5fe5eb0 virtio: Add support for modern virtio-mmio
    22a0823 virtio: Move MMIO transport to mmio-legacy
    b0d56e3 virtio: Add support for modern virtio-pci
    930876d virtio: Move PCI transport to pci-legacy
    3c8f82b virtio: Prepare for more feature bits
    de166e5 virtio/net: Set vhost backend after queue address
    73fd136 virtio/pci: Use the correct eventfd for vhost notification
    21c9bc7 virtio/pci: Make doorbell offset dynamic
    d060729 virtio: Extract init_vq() for PCI and MMIO
    c6590f7 virtio/pci: Delete MSI routes
    8b91a18 arm64: Allow the user to specify the RAM base address
    3f7e48f Introduce kvm__arch_default_ram_address()
    a37dad0 arm/arm64: Consolidate RAM initialization in kvm__init_ram()
    5e9c654 kvm__arch_init: Remove hugetlbfs_path and ram_size as parameters
    a9c24ec builtin_run: Allow standard size specifiers for memory
    d6d4220 arm/arm64: Kill the ARM_HIMAP_MAX_MEMORY() macro
    1af57dc arm/arm64: Kill the ARM_MAX_MEMORY() macro
    cce5a4f arm/arm64: Fail if RAM size is too large for 32-bit guests
    abe3f28 builtin-run: Add arch hook to validate VM configuration
    28b9625 builtin-run: Rework RAM size validation
    9d65519 builtin-run: Always use RAM size in bytes
    024c331 Use MB for megabytes consistently
    d9fdaad arm: gic: fdt: fix PPI CPU mask calculation
    f44af23 virtio/pci: Factor MSI route creation
    4842789 virtio/blk: Implement VIRTIO_F_ANY_LAYOUT feature
    e74b56e virtio/console: Add VIRTIO_F_ANY_LAYOUT feature
    6daffe5 virtio/net: Implement VIRTIO_F_ANY_LAYOUT feature
    b231683 virtio/net: Prepare for modern virtio
    8b27bcf virtio/net: Offload vnet header endianness conversion to tap
    c492534 Add memcpy_fromiovec_safe
    902a8ec virtio: Remove set_guest_features() device op
    17ad9fd virtio/console: Remove unused callback
    867b15c virtio: Fix device-specific config endianness
    15e6c4e virtio: Add config access helpers
    609ee90 virtio: Support modern virtqueue addresses
    fd41cde virtio: Factor virtqueue initialization
    a8e397b virtio/vsock: Remove redundant state tracking
    3a1e36e virtio: Remove redundant test
    7efc262 virtio: Add NEEDS_RESET to the status mask
    b4531b2 riscv: Add missing asm/kernel.h header
    6f6f384 mips: Do not emulate a serial device
    8ec1e8b arm64: Honor --vcpu-affinity for aarch32 guests
    1a992bb include: add new virtio uapi header files
    e539078 include: update virtio UAPI headers
    393e218 util: include virtio UAPI headers in sync
    7e22099 update virtio_mmio.h
    a68a52c kvmtool: Have stack be not executable on x86
    31e0eac virtio: Check for overflows in QUEUE_NOTIFY and QUEUE_SEL
    e473028 virtio: Sanitize config accesses
    3510a7f virtio/9p: Fix virtio_9p_config allocation size
    06e1e6f virtio: Use u32 instead of int in pci_data_in/out
    52d4ee7 mmio: Sanitize addr and len
    143ffa2 kvmtool: Add WARN_ONCE macro
    bc77bf4 stat: Add descriptions for new virtio_balloon stat types
    3a13530 virtio/balloon: Fix a crash when collecting stats
    324cc09 aarch64: Give up with MTE for AArch32 guest
    4639b72 arm64: Add --vcpu-affinity command line argument
    1393bda arm64: Add support for KVM_ARM_VCPU_PMU_V3_SET_PMU
    083a976 update_headers.sh: Sync ABI headers with Linux v5.18-rc2
    0febaae Add cpumask functions
    83713e7 arm64: Rework set_pmu_attr()
    f57ce44 arm: Make the PMUv3 emulation code arm64 specific
    b23aed2 arm: Get rid of the ARM_VCPU_FEATURE_FLAGS() macro
    412ee13 arm: Move arch specific VCPU features to the arch specific function
    5898515 arm/arm64: pmu.h: Add missing header guards
    d9b64eb linux/bitops.h: Include wordsize.h to provide the __WORDSIZE define
    443cd88 linux/err.h: Add missing stdbool.h include
    5657dd3 aarch64: Add support for MTE
    af1b793 update_headers.sh: Sync ABI headers with Linux v5.17
    ffa8654 Make --no-pvtime command argument arm specific
    faae833 Revert "kvm tools: Filter out CPU vendor string"

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2022-09-21 16:22:30 -04:00
Bruce Ashfield
c77f64d100 kvmtool: update to -tip
Bumping kvmtool to latest, which comprises the following commits:

    faae833 Revert "kvm tools: Filter out CPU vendor string"
    1b76b6e Add --no-pvtime command line argument
    7d4671e aarch64: Add stolen time support
    ff69582 aarch64: Populate the vCPU struct before target->init()
    95f4796 arm: pci: Generate "msi-parent" property only with a MSI controller
    c334a68 arm: Use pr_debug() to print memory layout when loading a firmware image
    9b681b0 Remove initrd magic check
    2108c86 virtio/pci: Signal INTx interrupts as level instead of edge
    20b93be x86: Set the correct APIC ID
    d4d6f15 x86: Fix initialization of irq mptable
    cdd7d8c riscv: Generate PCI host DT node
    721da16 riscv: Handle SBI calls forwarded to user space
    7c9aac0 riscv: Generate FDT at runtime for Guest/VM
    762224e riscv: Add PLIC device emulation
    42bfe44 riscv: Implement Guest/VM VCPU arch functions
    867159a riscv: Implement Guest/VM arch functions
    2e99678 riscv: Initial skeletal support
    5968b5f update_headers: Sync-up ABI headers with Linux-5.16-rc1
    642f35b Makefile: Calculate the correct kvmtool version
    7a60af0 arm/pci: update interrupt-map only for legacy interrupts
    39181fc vfio/pci: Align MSIX Table and PBA size to guest maximum page size
    b20d6e3 vfio/pci: Print an error when offset is outside of the MSIX table or PBA
    f93acc0 vfio/pci: Rework MSIX table and PBA physical size allocation
    5f44d5d vfio/pci: Rename PBA offset in device descriptor to fd_offset
    34bfe5f pci: Fix pci_dev_* print macros
    3d3dca0 vfio/pci.c: Remove double include for assert.h
    e3b0ade arm/gicv2m: Set errno when gicv2_update_routing() fails
    dc66461 arm64: Be more permissive when parsing the kernel header
    5303f09 arm64: Use the default offset when the kernel image magic is not found
    5613ae2 Add --nodefaults command line argument
    a5253f7 builtin-run: Move kernel command line generation to a separate function
    39ab3a0 Use kvm->nr_disks instead of kvm->cfg.image_count
    cce9616 builtin-run: Abstract argument validation into a separate function
    638630c builtin-run: Do not attempt to find vmlinux if --firmware
    6cbec43 builtin-run: Warn when ignoring initrd because --firmware was specified
    6810e75 builtin-run: Treat specifying both --kernel and --firmware as an error
    2e7380d virtio/pci: Size the MSI-X bar according to the number of MSI-X
    bdb86d0 kvmtool: arm64: Configure VM with the minimal required IPA space
    066b5c0 kvmtool: arm64: Use the maximum supported IPA size when creating the VM
    4250819 kvmtool: Abstract KVM_VM_TYPE into a weak function
    25c1dc6 arm/arm64: vfio: Add PCI Express Capability Structure
    e69b766 arm/arm64: Add PCI Express 1.1 support
    6b74f68 arm/fdt.c: Don't generate the node if generator function is NULL
    070fb91 Move fdt_irq_fn typedef to fdt.h
    415f92c arm: Fail early if KVM_CAP_ARM_PMU_V3 is not supported

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2022-03-29 10:04:49 -04:00
Bruce Ashfield
108e089f7e global: update licence values to SPDX values
These changes are the result of running the convert-spdx-licenses.py
oe-core script.

There's no impact to the build, but we will avoid issues when
interacting with core QA by the alignment.

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2022-02-18 13:07:10 -05:00
Bruce Ashfield
ac399ad091 global: add explicit branch to all SRC_URIs
As introduced in the oe-core post:

  https://lists.openembedded.org/g/openembedded-core/message/157623

SRC_URIs without an explicit branch will generate warnings, and
eventually be an error.

We run the provided conversion script to make sure that meta-virt
is ready for the change.

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2021-11-02 09:57:03 -04:00
Bruce Ashfield
b71f6be77b kvmtool: update to -latest
Integrating the following commits:

   415f92c arm: Fail early if KVM_CAP_ARM_PMU_V3 is not supported
   117d649 virtio: add support for vsock
   382eaad hw/rtc: ARM/arm64: Use MMIO at higher addresses
   45b4968 hw/serial: ARM/arm64: Use MMIO at higher addresses
   f01cc77 arm: Reorganise and document memory map
   7e19cb5 Remove ioport specific routines
   1f56b9d pci: Switch trap handling to use MMIO handler
   205eaa7 virtio: Switch trap handling to use MMIO handler
   579bc61 vfio: Switch to new ioport trap handlers
   a4a0dac vfio: Refactor ioport trap handler
   59866df hw/serial: Switch to new trap handlers
   47a5106 hw/serial: Refactor trap handler
   38ae332 hw/vesa: Switch trap handling to use MMIO handler
   123ee47 hw/rtc: Switch to new trap handler
   8c45f36 hw/rtc: Refactor trap handlers
   3adbcb2 x86/ioport: Switch to new trap handlers
   8230499 x86/ioport: Refactor trap handlers
   d24bedb hw/i8042: Switch to new trap handlers
   f7ef3dc hw/i8042: Refactor trap handler
   fc76962 hw/i8042: Clean up data types
   96f0c86 mmio: Extend handling to include ioport emulation
   9bc7e2c ioport: Retire .generate_fdt_node functionality
   a81be31 hw/serial: Use device abstraction for FDT generator function
   97531eb ioport: Remove ioport__setup_arch()

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2021-06-04 08:43:10 -04:00
Bruce Ashfield
436b60e582 kvmtool: refresh to 5.10 version
Grabbing the latest kvmtool sources. These follow kernel numbering,
so we bump that to 5.10 to match.

We also drop one patch that is part of the main repo now, and
refresh the others to avoid fuzz warnings.

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2021-02-07 08:43:53 -05:00
Cevat Bostancioglu
9cb299d384 kvmtool: Werror Disabled Patch
Couple of compile time warnings(sizeof-pointer-memaccess, format-truncation) turned into errors before with Werror command, this patch disables this feature.

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2019-06-25 00:11:58 -04:00
Paul Barker
488b5aba28 Use SRCPV instead of SRCREV where possible
This change reduces the length of ${PV} for several recipes and gives us
auto-incrementing version numbers.

Signed-off-by: Paul Barker <paul@betafive.co.uk>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
2019-01-16 10:28:26 -05:00
Mark Asselstine
abf84bfd30 kvmtool: uprev to latest version
Currently on the master branch builds of kvmtool are failing due to
several missing headers. We need to only use the uapi headers and we
also need the kvmtool upstream commit 1cc05b24bfe0 [x86/kvm-cpu.c:
don't include <asm/msr-index.h>] to get the builds to work. So we
can't do this as a fix and uprev and must do both at once in this
single commit.

The upstream project does not have releases so using the latest commit
and setting the version to 4.14.0 to reflect the kernel version we
currently build and which tests were done with, when using Yocto
master.

Signed-off-by: Mark Asselstine <mark.asselstine@windriver.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
2018-05-29 10:27:55 -04:00
Dariusz Pelowski
8cc50eae10 kvmtool: fix compilation errors
Fixed issues:
Usage of makedev requires including <sys/sysmacros.h> otherwise
the error is raised due to multiple definition in <sys/types.h>.

Add include path to kernel headers required to get kvmtool
compilatioin successful.

Signed-off-by: Dariusz Pelowski <dariusz.pelowski@gmail.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
2017-11-06 08:51:29 -05:00
Khem Raj
bccfd5ddb9 kvmtool: Fix unaligned pointer access warning
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
2017-03-24 09:28:24 -04:00
Khem Raj
92e9470ad9 kvmtool: Update to latest
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
2017-03-21 08:22:20 -04:00
Stefan Agner
222f8d486d kvmtool: add lightweight hypervisor native Linux KVM tool
Add Native Linux KVM tool, a lightweight tool for hosting KVM guests
maintained by the Linux kernel community.

Signed-off-by: Stefan Agner <stefan@agner.ch>
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
2016-09-07 16:06:56 -04:00