Home
last modified time | relevance | path

Searched full:the (Results 76 – 100 of 6520) sorted by relevance

12345678910>>...261

/qemu/docs/interop/
H A Dvfio-user.rst14 of a generic VFIO device type, living inside the VMM, which we call the client,
15 and the core device implementation, living outside the VMM, which we call the
18 The vfio-user specification is partly based on the
21 VFIO is a mature and stable API, backed by an extensively used framework. The
24 particular implementation. None of the VFIO kernel modules are required for
25 supporting the protocol, on either the client or server side. Some source
28 The main idea is to allow a virtual device to function in a separate process in
29 the same host over a UNIX domain socket. A UNIX domain socket (``AF_UNIX``) is
33 * Sharing of client memory for DMA with the server.
34 * Sharing of server memory with the client for fast MMIO.
[all …]
/qemu/docs/system/
H A Dtls.rst6 Almost all network services in QEMU have the ability to use TLS for
9 certificates suitable for usage with QEMU, and applies to the VNC
10 server, character devices with the TCP backend, NBD server and client,
14 provided in PEM format. Aside from the core fields, the certificates
18 The GnuTLS package includes a command called ``certtool`` which can be
19 used to easily generate certificates and keys in the required format
28 Assuming that the QEMU network services will only ever be exposed to
31 sufficient, and in fact likely to be more secure since it removes the
32 ability of malicious 3rd parties to trick the CA into mis-issuing certs
33 for impersonating your services. The only likely exception where a
[all …]
H A Dqemu-block-drivers.rst.inc5 any of the tools (like ``qemu-img``). This includes the preferred formats
9 Depending on the image format, different options can be passed to
10 ``qemu-img create`` and ``qemu-img convert`` using the ``-o`` option.
11 This section describes each format and the options that are supported for it.
16 Raw disk image format. This format has the advantage of
19 Linux or NTFS on Windows), then only the written sectors will reserve
20 space. Use ``qemu-img info`` to know the real size used by the
32 may not be zero, depending on the storage location.
37 QEMU image format, the most versatile format. Use it to have smaller
47 Determines the qcow2 version to use. ``compat=0.10`` uses the
[all …]
H A Dvirtio-net-failover.rst5 This document explains the setup and usage of virtio-net standby feature which
8 The general idea is that we have a pair of devices, a (vfio-)pci and a
9 virtio-net device. Before migration the vfio device is unplugged and data flows
10 through the virtio-net device, on the target side another vfio-pci device is
11 plugged in to take over the data-path. In the guest the net_failover kernel
12 module will pair net devices with the same MAC address.
14 The two devices are called primary and standby device. The fast hardware based
15 networking device is called the primary device and the virtio-net device is the
22 can be lifted in the future with enhanced QEMU support. Also, only networking
23 devices are allowed as primary device. The user needs to ensure that primary
[all …]
H A Dreplay.rst5 of the Russian Academy of Sciences.
7 This work is licensed under the terms of the GNU GPL, version 2 or later.
8 See the COPYING file in the top-level directory.
13 Record/replay functions are used for the deterministic replay of qemu execution.
15 used for replaying the execution anywhere and for unlimited number of times.
16 It also supports checkpointing for faster rewind to the specific replay moment.
17 Execution replaying reads the log and replays all non-deterministic events
20 Deterministic replay has the following features:
23 the memory, state of the hardware devices, clocks, and screen of the VM.
24 * Writes execution log into the file for later replaying for multiple times
[all …]
/qemu/docs/specs/
H A Dfsi.rst5 The QEMU FSI emulation implements hardware interfaces between ASPEED SOC, FSI
6 master/slave and the end engine.
13 FSI allows a service processor access to the internal buses of a host POWER
16 into the ASPEED SoC.
18 Working backwards from the POWER processor, the fundamental pieces of interest
19 for the implementation are: (see the `FSI specification`_ for more details)
21 1. The Common FRU Access Macro (CFAM), an address space containing various
22 "engines" that drive accesses on buses internal and external to the POWER
23 chip. Examples include the SBEFIFO and I2C masters. The engines hang off of
24 an internal Local Bus (LBUS) which is described by the CFAM configuration
[all …]
H A Dppc-xive.rst5 The POWER9 processor comes with a new interrupt controller
9 Compared to the previous architecture, the main characteristics of
12 assistance. This removes the context switches required for the
19 The XIVE IC is composed of three sub-engines, each taking care of a
23 (SC). These are found in PCI PHBs, in the Processor Service
24 Interface (PSI) host bridge Controller, but also inside the main
25 controller for the core IPIs and other sub-chips (NX, CAP, NPU) of
26 the chip/processor. They are configured to feed the IVRE with
33 Controller (PC). It maintains the interrupt context state of each
34 thread and handles the delivery of the external interrupt to the
[all …]
H A Dppc-spapr-xive.rst4 The POWER9 processor comes with a new interrupt controller
7 virtualization features which enables the HW to deliver interrupts
15 the hypervisor provides identical interfaces and similar
16 functionality to PAPR+ Version 2.7. This is the default mode
22 the hypervisor provides new interfaces to manage the XIVE control
26 Which interrupt modes can be used by the machine is negotiated with
27 the guest O/S during the Client Architecture Support negotiation
28 sequence. The two modes are mutually exclusive.
30 Both interrupt mode share the same IRQ number space. See below for the
36 QEMU advertises the supported interrupt modes in the device tree
[all …]
/qemu/include/crypto/
H A Dcipher.h7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16 * You should have received a copy of the GNU Lesser General Public
35 * The QCryptoCipher object provides a way to perform encryption
36 * and decryption of data, with a standard API, regardless of the
37 * algorithm used. It further isolates the calling code from the
[all …]
/qemu/docs/devel/
H A Dtracing.rst10 This document describes the tracing infrastructure in QEMU and how to use it
24 This output comes from the "log" trace backend that is enabled by default when
27 Multiple patterns can be specified by repeating the ``--trace`` option::
44 Each directory in the source tree can declare a set of trace events in a local
46 listed in the "trace_events_subdirs" variable in the top level meson.build
47 file. During build, the "trace-events" file in each listed subdirectory will be
48 processed by the "tracetool" script to generate code for the trace events.
50 The individual "trace-events" files are merged into a "trace-events-all" file,
52 This merged file is to be used by the "simpletrace.py" script to later analyse
53 traces in the simpletrace data format.
[all …]
H A Dsubmitting-a-patch.rst7 the documentation. However, we get a lot of patches, and so we have
13 one-shot fix, the bare minimum we ask is that:
22 …- States you are legally able to contribute the code. See :ref:`patch_emails_must_include_a_signed…
24 - The project uses an email list based workflow. See :ref:`submitting_your_patches`
29 preserve CCs and keep non-subscribers in the loop on the threads they
32 volume of email, often over one thousand messages in a week. The list is
37 The larger your contribution is, or if you plan on becoming a long-term
38 contributor, then the more important the rest of this page becomes.
39 Reading the table of contents below should already give you an idea of
40 the basic requirements. Use the table of contents as a reference, and
[all …]
H A Dlockcnt.rst14 ``QLIST_FOREACH_SAFE`` protects against deletion of the current node (``ioh``)
16 actually delete the next node from the list. The simplest way to
17 avoid this is to mark the node as deleted, and remove it from the
18 list in the above loop::
32 ``ioh->fd_write`` invokes the loop again, some kind of counting is needed::
49 One may think of using the RCU primitives, ``rcu_read_lock()`` and
50 ``rcu_read_unlock()``; effectively, the RCU nesting count would take
51 the place of the walking_handlers global variable. Indeed,
59 - reference counting works even in the presence of code that keeps
65 the introduction of threads by many years. RCU is generally used to
[all …]
H A Drust.rst6 Rust in QEMU is a project to enable using the Rust programming language
9 Right now, the focus is on making it possible to write devices that inherit
16 Building the Rust in QEMU code
19 The Rust in QEMU code is included in the emulators via Meson. Meson
21 together with the C code. This is completely automatic when you run
25 are accustomed to the more "normal" Cargo-based development workflow.
28 * the set of warnings and lints that are used to build QEMU always
29 comes from the ``rust/Cargo.toml`` workspace file
37 of Cargo will complain that it cannot find the generated sources,
50 * by invoking ``cargo`` through the Meson `development environment`__
[all …]
H A Dqapi-code-gen.rst2 How to use the QAPI code generator
9 This work is licensed under the terms of the GNU GPL, version 2 or
10 later. See the COPYING file in the top-level directory.
20 format for the QEMU Monitor Protocol (QMP) for controlling qemu, as
21 well as the QEMU Guest Agent (QGA) for communicating with the guest.
22 The remainder of this document uses "Client JSON Protocol" when
23 referring to the wire contents of a QMP or QGA connection.
25 To map between Client JSON Protocol interfaces and the native C API,
26 we generate C code from a QAPI schema. This document describes the
27 QAPI schema language, and how it gets mapped to the Client JSON
[all …]
/qemu/include/block/
H A Daio.h9 * This work is licensed under the terms of the GNU GPL, version 2. See
10 * the COPYING file in the top-level directory.
68 * @ctx: the AioContext
69 * @old_node: the existing handler or NULL if this file descriptor is being
70 * monitored for the first time
71 * @new_node: the new handler or NULL if this file descriptor is being
82 * @ctx: the AioContext
96 * @ctx: the AioContext
112 * Each aio_bh_poll() call carves off a slice of the BH list, so that newly
113 * scheduled BHs are not processed until the next aio_bh_poll() call. All
[all …]
H A Dblockjob_int.h8 * of this software and associated documentation files (the "Software"), to deal
9 * in the Software without restriction, including without limitation the rights
11 * copies of the Software, and to permit persons to whom the Software is
12 * furnished to do so, subject to the following conditions:
14 * The above copyright notice and this permission notice shall be included in
15 * all copies or substantial portions of the Software.
17 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
20 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
22 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
[all …]
/qemu/block/
H A Dqed-l2-cache.c9 * This work is licensed under the terms of the GNU LGPL, version 2 or later.
10 * See the COPYING.LIB file in the top-level directory.
17 * An open image has one L2 table cache that is used to avoid accessing the
20 * Cluster offset lookup translates the logical offset within the block device
21 * to a cluster offset within the image file. This is done by indexing into
22 * the L1 and L2 tables which store cluster offsets. It is here where the L2
25 * If there is a cache miss, that L2 table is read from the image file and
26 * committed to the cache. Subsequent accesses to that L2 table will be served
27 * from the cache until the table is evicted from the cache.
29 * L2 tables are also committed to the cache when new L2 tables are allocated
[all …]
/qemu/docs/
H A Dthrottle.txt1 The QEMU throttling infrastructure
6 This work is licensed under the terms of the GNU GPL, version 2 or
7 later. See the COPYING file in the top-level directory.
12 I/O operations. The code itself is generic and independent of the I/O
13 units, but it is currently used to limit the number of bytes per second
16 This document explains how to use the throttling code in QEMU, and how
17 it works internally. The implementation is in throttle.c.
22 Two aspects of the disk I/O can be limited: the number of bytes per
23 second and the number of operations per second (IOPS). For each one of
24 them the user can set a global limit or separate limits for read and
[all …]
/qemu/docs/devel/migration/
H A Ddirty-limit.rst4 The dirty limit, short for dirty page rate upper limit, is a new capability
5 introduced in the 8.1 QEMU release that uses a new algorithm based on the KVM
6 dirty ring to throttle down the guest during live migration.
8 The algorithm framework is as follows:
28 When the qmp command qmp_set_vcpu_dirty_limit is called for the first time,
29 the QEMU main thread starts the throttle thread. The throttle thread, once
30 launched, executes the loop, which consists of three steps:
34 The entire work of PREPARE (1) is preparation for the second stage,
35 CALCULATE(2), as the name implies. It involves preparing the dirty
36 page rate value and the corresponding upper limit of the VM:
[all …]
/qemu/tests/uefi-test-tools/UefiTestToolsPkg/Include/Guid/
H A DBiosTablesTest.h2 Expose the address(es) of the ACPI RSD PTR table(s) and the SMBIOS entry
3 point(s) in a MB-aligned structure to the hypervisor.
5 The hypervisor locates the MB-aligned structure based on the signature GUID
6 that is at offset 0 in the structure. Once the RSD PTR and SMBIOS anchor
7 address(es) are retrieved, the hypervisor may perform various ACPI and SMBIOS
15 This program and the accompanying materials are licensed and made available
16 under the terms and conditions of the BSD License that accompanies this
17 distribution. The full text of the license may be found at
20 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, WITHOUT
40 // The following structure must be allocated in Boot Services Data type memory,
[all …]
/qemu/include/standard-headers/linux/
H A Dinput.h6 * under the terms of the GNU General Public License version 2 as published by
7 * the Free Software Foundation.
20 * The event structure itself
65 * @value: latest reported value for the axis.
66 * @minimum: specifies minimum value for the axis.
67 * @maximum: specifies maximum value for the axis.
69 * the event stream.
72 * @resolution: specifies resolution for the values reported for
73 * the axis.
75 * Note that input core does not clamp reported values to the
[all …]
H A Dvmclock-abi.h4 * This structure provides a vDSO-style clock to VM guests, exposing the
5 * relationship (or lack thereof) between the CPU clock (TSC, timebase, arch
6 * counter, etc.) and real time. It is designed to address the problem of
9 * When a guest is live migrated, this affects the clock in two ways.
11 * First, even between identical hosts the actual frequency of the underlying
12 * counter will change within the tolerances of its specification (typically
13 * ±50PPM, or 4 seconds a day). This frequency also varies over time on the
15 * live migration there is a step change in the frequency, with no warning.
17 * Second, there may be a step change in the value of the counter itself, as
18 * its accuracy is limited by the precision of the NTP synchronization on the
[all …]
/qemu/include/hw/virtio/
H A Dvhost.h89 /* the first virtqueue which would be used by this vhost dev */
91 /* one past the last vq index for the virtio device (not vhost) */
96 * vhost feature handling requires matching the feature set
97 * offered by a backend which may be a subset of the total
98 * features eventually offered to the guest.
100 * @features: available features provided by the backend
106 * future use should be discouraged and the variable retired as
107 * its easy to confuse with the VirtIO backend_features.
114 * @protocol_features: is the vhost-user only feature set by
117 * by the backend (see @features).
[all …]
/qemu/include/qemu/
H A Dfifo8.h16 * @capacity: capacity of the newly created FIFO
18 * Create a FIFO of the specified capacity. Clients should call fifo8_destroy()
19 * when finished using the fifo. The FIFO is initially empty.
28 * storage. The FIFO is no longer usable after this has been called.
37 * Push a data byte to the FIFO. Behaviour is undefined if the FIFO is full.
48 * Push a byte array to the FIFO. Behaviour is undefined if the FIFO is full.
49 * Clients are responsible for checking the space left in the FIFO using
58 * Pop a data byte from the FIFO. Behaviour is undefined if the FIFO is empty.
61 * Returns: The popped data byte.
69 * Peek the data byte at the current head of the FIFO. Clients are responsible
[all …]
/qemu/qapi/
H A Dblock-core.json20 # @vm-state-size: size of the VM state
22 # @date-sec: UTC date of the snapshot in seconds
33 # the moment in the recorded execution with the snapshots. This
48 # @format: The encryption format
70 # @data-file: the filename of the external data file that is stored in
71 # the image and used as a default for opening the image
74 # @data-file-raw: True if the external data file must stay valid as a
78 # @extended-l2: true if the image has extended L2 entries; only valid
83 # @corrupt: true if the image has been marked corrupt; only valid for
93 # @compression-type: the image cluster compression method (since 5.1)
[all …]

12345678910>>...261