/openbmc/qemu/docs/specs/ |
H A D | ppc-spapr-xive.rst | 10 A QEMU ``pseries`` machine (which is PAPR compliant) using POWER9 13 - *Legacy Compatibility Mode* 18 It is also referred as *XICS* in QEMU. 20 - *XIVE native exploitation mode* 34 --------------- 36 QEMU advertises the supported interrupt modes in the device tree 37 property ``ibm,arch-vec-5-platform-support`` in byte 23 and the OS 38 Selection for XIVE is indicated in the ``ibm,architecture-vec-5`` 43 ``ic-mode`` which can be set on the command line. It can take the 52 KVM negotiation [all …]
|
H A D | rapl-msr.rst | 12 Thanks to KVM's `MSR filtering <msr-filter-patch_>`__ functionality, 13 not all MSRs are handled by KVM. Some of them can now be handled by the 14 userspace (QEMU); a list of MSRs is given at VM creation time to KVM, and 17 .. _msr-filter-patch: https://patchwork.kernel.org/project/kvm/patch/20200916202951.23760-7-graf@am… 37 it with the UNIT provided above you'll get the power in micro-joules. This 45 core that belongs to PKG-0 will not be able to get the value of PKG-1 and 46 vice-versa. 49 ------------------------- 51 In order to update the value of the virtual MSR, a QEMU thread is created. 54 1. Snapshot of the time metrics of all QEMU threads (Time spent scheduled in [all …]
|
/openbmc/qemu/docs/devel/ |
H A D | multi-process.rst | 1 Multi-process QEMU 6 This is the design document for multi-process QEMU. It does not 13 https://wiki.qemu.org/Features/MultiProcessQEMU 15 QEMU is often used as the hypervisor for virtual machines running in the 22 QEMU can be susceptible to security attacks because it is a large, 24 Many of these features can be configured out of QEMU, but even a reduced 25 configuration QEMU has a large amount of code a guest can potentially 26 attack. Separating QEMU reduces the attack surface by aiding to 30 QEMU services 31 ------------- [all …]
|
/openbmc/qemu/docs/system/arm/ |
H A D | cpu-features.rst | 5 choose to implement or not. In QEMU, optional CPU features have 10 Cortex-A15 and the Cortex-A57, which respectively implement Arm 11 architecture reference manuals ARMv7-A and ARMv8-A, may both optionally 12 implement PMUs. For example, if a user wants to use a Cortex-A15 without 13 a PMU, then the ``-cpu`` parameter should contain ``pmu=off`` on the QEMU 14 command line, i.e. ``-cpu cortex-a15,pmu=off``. 18 that implement the ARMv8-A architecture reference manual may optionally 20 ``aarch64`` CPU property. A CPU type such as the Cortex-A15, which does 21 not implement ARMv8-A, will not have the ``aarch64`` CPU property. 23 QEMU's support may be limited for some CPU features, only partially [all …]
|
H A D | virt.rst | 8 idiosyncrasies and limitations of a particular bit of real-world 13 changes between QEMU versions) a version is provided that guarantees 14 to have the same behaviour as that of previous QEMU releases, so 15 that VM migration will work between QEMU versions. For instance the 16 ``virt-5.0`` machine type will behave like the ``virt`` machine from 17 the QEMU 5.0 release, and migration should work between ``virt-5.0`` 18 of the 5.0 release and ``virt-5.0`` of the 5.1 release. Migration 19 is not guaranteed to work between different QEMU releases for 20 the non-versioned ``virt`` machine type. 27 - PCI/PCIe devices [all …]
|
/openbmc/linux/Documentation/virt/kvm/x86/ |
H A D | running-nested-guests.rst | 1 .. SPDX-License-Identifier: GPL-2.0 4 Running nested guests with KVM 8 can be KVM-based or a different hypervisor). The straightforward 9 example is a KVM guest that in turn runs on a KVM guest (the rest of 12 .----------------. .----------------. 17 |----------------'--'----------------| 20 | KVM (/dev/kvm) | 22 .------------------------------------------------------. 24 | KVM (/dev/kvm) | 25 |------------------------------------------------------| [all …]
|
/openbmc/linux/tools/testing/selftests/rcutorture/bin/ |
H A D | kvm-test-1-run-batch.sh | 2 # SPDX-License-Identifier: GPL-2.0+ 4 # Carry out a kvm-based run for the specified batch of scenarios, which 5 # might have been built by --build-only kvm.sh run. 7 # Usage: kvm-test-1-run-batch.sh SCENARIO [ SCENARIO ... ] 10 # containing a ready-to-run qemu-cmd file. 16 T="`mktemp -d ${TMPDIR-/tmp}/kvm-test-1-run-batch.sh.XXXXXX`" 17 trap 'rm -rf $T' 0 19 echo ---- Running batch $* 24 if ! echo $i | grep -q '^[^/.a-z]\+\(\.[0-9]\+\)\?$' 29 if ! test -d "$i" [all …]
|
H A D | kvm-test-1-run.sh | 2 # SPDX-License-Identifier: GPL-2.0+ 4 # Run a kvm-based test of the specified tree on the specified configs. 8 # because qemu does not seem to like that much. 10 # Usage: kvm-test-1-run.sh config resdir seconds qemu-args boot_args_in 12 # qemu-args defaults to "-enable-kvm -display none -no-reboot", along 19 # Anything you specify for either qemu-args or boot_args_in is appended to 20 # the default values. The "-smp" value is deduced from the contents of 29 T="`mktemp -d ${TMPDIR-/tmp}/kvm-test-1-run.sh.XXXXXX`" 30 trap 'rm -rf $T' 0 36 config_dir=`echo $config_template | sed -e 's,/[^/]*$,,'` [all …]
|
H A D | kvm-again.sh | 2 # SPDX-License-Identifier: GPL-2.0+ 4 # Rerun a series of tests under KVM. 6 # Usage: kvm-again.sh /path/to/old/run [ options ] 15 T="`mktemp -d ${TMPDIR-/tmp}/kvm-again.sh.XXXXXX`" 16 trap 'rm -rf $T' 0 18 if ! test -d tools/testing/selftests/rcutorture/bin 20 echo $scriptname must be run from top-level directory of kernel source tree. 26 if ! test -d "$oldrun" 38 if test -f "$oldrun/torture_suite" 41 elif test -f "$oldrun/TORTURE_SUITE" [all …]
|
H A D | kvm-test-1-run-qemu.sh | 2 # SPDX-License-Identifier: GPL-2.0+ 4 # Carry out a kvm-based run for the specified qemu-cmd file, which might 5 # have been generated by --build-only kvm.sh run. 7 # Usage: kvm-test-1-run-qemu.sh qemu-cmd-dir 9 # qemu-cmd-dir provides the directory containing qemu-cmd file. 11 # "ds" is the top-level date-stamped directory and "scenario" 13 # must have been made by the caller. The shell-command comments 14 # at the end of the qemu-cmd file are not optional. 20 T="`mktemp -d ${TMPDIR-/tmp}/kvm-test-1-run-qemu.sh.XXXXXX`" 21 trap 'rm -rf $T' 0 [all …]
|
H A D | kvm-recheck.sh | 2 # SPDX-License-Identifier: GPL-2.0+ 4 # Given the results directories for previous KVM-based torture runs, 8 # Usage: kvm-recheck.sh resdir ... 16 T=/tmp/kvm-recheck.sh.$$ 17 trap 'rm -f $T' 0 2 26 dirs=`find $rd -name Make.defconfig.out -print | sort | sed -e 's,/[^/]*$,,' | sort -u` 29 if test -n "$firsttime" 32 resdir=`echo $i | sed -e 's,/$,,' -e 's,/[^/]*$,,'` 33 head -1 $resdir/log 36 configfile=`echo $i | sed -e 's,^.*/,,'` [all …]
|
/openbmc/qemu/docs/system/ppc/ |
H A D | pseries.rst | 5 The Power machine para-virtualized environment described by the Linux on Power 18 - POWER7, POWER7+ 19 - POWER8, POWER8NVL 20 - POWER9 21 - Power10 22 - Power11 23 - Support for POWER5+ also exists, works with correct kernel/userspace 25 - XICS (POWER8) 26 - XIVE (Supported by below:) 27 - POWER9 [all …]
|
H A D | powernv.rst | 4 PowerNV (as Non-Virtualized) is the "bare metal" platform using the 6 be used as an hypervisor OS, running KVM guests, or simply as a host 9 The PowerNV QEMU machine tries to emulate a PowerNV system at the 13 beyond the scope of what QEMU addresses today. 16 ----------------- 24 * Simple OCC is an on-chip micro-controller used for power management tasks. 26 provided by QEMU or an external BMC such as an Aspeed QEMU machine. 30 --------------- 44 -------- 49 GitHub <https://github.com/open-power>`_. [all …]
|
/openbmc/openbmc/poky/documentation/dev-manual/ |
H A D | qemu.rst | 1 .. SPDX-License-Identifier: CC-BY-SA-2.0-UK 4 Using the Quick EMUlator (QEMU) 7 The Yocto Project uses an implementation of the Quick EMUlator (QEMU) 10 EMUlator (QEMU) and other QEMU information helpful for development 16 Within the context of the Yocto Project, QEMU is an emulator and 19 QEMU is useful for running and testing images and applications on 21 Among other things, the Yocto Project uses QEMU to run automated Quality 26 This implementation is not the same as QEMU in general. 29 implementation of QEMU. 31 For official information and documentation on QEMU in general, see the [all …]
|
/openbmc/openbmc/poky/meta/recipes-devtools/qemu/qemu/ |
H A D | fix-strerrorname_np.patch | 3 Date: Wed, 18 Sep 2024 16:19:37 -0700 4 Subject: [PATCH] target/riscv/kvm: do not use non-portable strerrorname_np() 6 strerrorname_np is non-portable and breaks building with musl libc. 10 Upstream-Status: Submitted [https://mail.gnu.org/archive/html/qemu-stable/2023-12/msg00069.html] 12 Cc: qemu-stable@nongnu.org 13 Fixes: commit 082e9e4a58ba (target/riscv/kvm: improve 'init_multiext_cfg' error 15 Resolves: https://gitlab.com/qemu-project/qemu/-/issues/2041 16 Buglink: https://gitlab.alpinelinux.org/alpine/aports/-/issues/15541 17 Signed-off-by: Natanael Copa <ncopa@alpinelinux.org> 18 --- [all …]
|
/openbmc/openbmc/poky/meta/recipes-devtools/qemu/ |
H A D | qemu-system-native_9.2.0.bb | 1 BPN = "qemu" 3 require qemu-native.inc 5 # As some of the files installed by qemu-native and qemu-system-native 6 # are the same, we depend on qemu-native to get the full installation set 8 DEPENDS += "glib-2.0-native zlib-native pixman-native qemu-native" 10 EXTRA_OECONF:append = " --target-list=${@get_qemu_system_target_list(d)}" 12 PACKAGECONFIG ??= "fdt alsa kvm pie slirp png \ 16 # Handle distros such as CentOS 5 32-bit that do not have kvm support 17 PACKAGECONFIG:remove = "${@'kvm' if not os.path.exists('/usr/include/linux/kvm.h') else ''}" 20 install -Dm 0755 ${UNPACKDIR}/powerpc_rom.bin ${D}${datadir}/qemu [all …]
|
/openbmc/qemu/python/qemu/utils/ |
H A D | accel.py | 2 QEMU accel module: 7 # Copyright (C) 2015-2016 Red Hat Inc. 14 # the COPYING file in the top-level directory. 34 def list_accel(qemu_bin: str) -> List[str]: 36 List accelerators enabled in the QEMU binary. 38 @param qemu_bin (str): path to the QEMU binary. 39 @raise Exception: if failed to run ``qemu -accel help`` 45 out = subprocess.check_output([qemu_bin, '-accel', 'help'], 55 qemu_bin: Optional[str] = None) -> bool: 57 Check if KVM is available using the following heuristic: [all …]
|
/openbmc/qemu/docs/system/i386/ |
H A D | hyperv.rst | 1 Hyper-V Enlightenments 6 ----------- 8 In some cases when implementing a hardware interface in software is slow, KVM 11 It may, however, be hard-to-impossible to add support for these interfaces to 14 KVM on x86 implements Hyper-V Enlightenments for Windows guests. These features 15 make Windows and Hyper-V guests think they're running on top of a Hyper-V 16 compatible hypervisor and use Hyper-V specific features. 20 ----- 22 No Hyper-V enlightenments are enabled by default by either KVM or QEMU. In 23 QEMU, individual enlightenments can be enabled through CPU flags, e.g: [all …]
|
H A D | xen.rst | 6 ----------- 8 KVM has support for hosting Xen guests, intercepting Xen hypercalls and event 10 run under Xen to be hosted in QEMU under Linux/KVM instead. 15 ----- 17 Xen mode is enabled by setting the ``xen-version`` property of the KVM 20 .. parsed-literal:: 22 |qemu_system| --accel kvm,xen-version=0x40011,kernel-irqchip=split 25 ``xen-vapic`` CPU flag: 27 .. parsed-literal:: 29 |qemu_system| --accel kvm,xen-version=0x40011,kernel-irqchip=split --cpu host,+xen-vapic [all …]
|
/openbmc/qemu/accel/kvm/ |
H A D | kvm-accel-ops.c | 2 * QEMU KVM support 12 * See the COPYING file in the top-level directory. 16 #include "qemu/osdep.h" 17 #include "qemu/error-report.h" 18 #include "qemu/main-loop.h" 19 #include "sysemu/kvm.h" 23 #include "qemu/guest-random.h" 26 #include <linux/kvm.h> 27 #include "kvm-cpus.h" 37 qemu_thread_get_self(cpu->thread); in kvm_vcpu_thread_fn() [all …]
|
/openbmc/qemu/docs/about/ |
H A D | build-platforms.rst | 1 .. _Supported-build-platforms: 6 QEMU aims to support building and executing on multiple host OS 9 minimum required versions of 3rd party software QEMU depends on. The 14 If a platform is not listed here, it does not imply that QEMU won't 21 support targets, QEMU considers only the version number, and assumes the 24 software in their distro, QEMU upstream code will not add explicit 25 support for those backports, unless the feature is auto-detectable in a 33 ---------------------------- 37 .. list-table:: 38 :header-rows: 1 [all …]
|
/openbmc/qemu/docs/devel/migration/ |
H A D | CPR.rst | 5 VM is migrated to a new QEMU instance on the same host. It is 7 that run the VM, such as QEMU or even the host kernel. At this time, 8 cpr-reboot is the only available mode. 10 Because QEMU is restarted on the same host, with access to the same 13 guest block devices between quitting old QEMU and starting new QEMU. 18 cpr-reboot mode 19 --------------- 21 In this mode, QEMU stops the VM, and writes VM state to the migration 22 URI, which will typically be a file. After quitting QEMU, the user 23 resumes by running QEMU with the ``-incoming`` option. Because the [all …]
|
/openbmc/openbmc/poky/meta/lib/oeqa/core/target/ |
H A D | qemu.py | 4 # SPDX-License-Identifier: MIT 22 port=None, machine='', rootfs='', kernel='', kvm=False, slirp=False, argument 35 self.kvm = kvm 45 use_kvm=kvm, use_slirp=slirp, dump_dir=dump_dir, logger=logger, 51 … self.logger.error("Could not start qemu with slirp without server ip - provide 'TEST_SERVER_IP'") 52 raise RuntimeError("FAILED to start qemu - check the task log and the boot log") 61 self.ssh = self.ssh + ['-p', port] 62 self.scp = self.scp + ['-P', port] 64 … self.logger.error("Could not get host machine port to connect qemu with slirp, ssh will not be " 65 "able to connect to qemu with slirp") [all …]
|
/openbmc/qemu/tests/vm/ |
H A D | aarch64vm.py | 11 # the COPYING file in the top-level directory. 17 from qemu.utils import kvm_available 19 # This is the config needed for current version of QEMU. 20 # This works for both kvm and tcg. 23 'machine' : "virt,gic-version=max", 26 # The minimum minor version of QEMU we will support with aarch64 VMs is 3. 27 # QEMU versions less than 3 have various issues running these VMs. 32 DEFAULT_CONFIG = {'kvm' : {'cpu' : "host", 33 'machine' : "virt,gic-version=host"}, 34 'tcg' : {'cpu' : "cortex-a57", [all …]
|
/openbmc/qemu/include/sysemu/ |
H A D | kvm.h | 2 * QEMU KVM support 10 * See the COPYING file in the top-level directory. 14 /* header to be included in non-KVM-specific code */ 20 #include "qemu/accel.h" 25 # include <linux/kvm.h> 50 * Returns: true if an in-kernel irqchip was created. 54 * target-independent code: use one of the following functions or 72 * Returns: true if we can deliver interrupts to KVM 91 * a KVM CPU (ie the kernel supports irqfds and we are running 94 * Always available if running with in-kernel irqchip. [all …]
|