/qemu/include/qom/ |
H A D | object_interfaces.h | 23 * @can_be_deleted: callback to be called before an object is removed 32 * Interface also provides an optional ability to do the second 53 * @errp: if an error occurs, a pointer to an area to store the error 78 * @errp: if an error occurs, a pointer to an area to store the error 80 * Create an instance of the user creatable object @type, placing 93 * @errp: if an error occurs, a pointer to an area to store the error 95 * Create an instance of the user creatable object according to the 103 * @errp: if an error occurs, a pointer to an area to store the error 110 * Returns: ObjectOptions on success, NULL when an error occurred (*errp is set 118 * @errp: if an error occurs, a pointer to an area to store the error [all …]
|
H A D | object.h | 39 * @errp: a pointer to an Error that is filled if getting/setting fails. 107 * Called when an object is being removed from the QOM composition tree. 116 * Called when an object's last reference is removed. 125 * The base for all classes. The only thing that #ObjectClass contains is an 387 * for defining an abstract type, without any interfaces. 444 * @instance_init: This function is called to initialize an object. The parent 448 * an object, after all @instance_init functions were called, as well as 452 * An object should only free the members that are unique to its type in this 459 * implementing an explicit class type if they are not adding additional 501 * Converts an object to a #Object. Since all objects are #Objects, [all …]
|
/qemu/tests/functional/ |
H A D | test_x86_cpu_model_versions.py | 91 'Cascadelake-Server must not be an alias') 93 'Cascadelake-Server-v1 must not be an alias') 98 'qemu64 must not be an alias') 100 'qemu64-v1 must not be an alias') 104 # On pc-*-4.0, no CPU model should be reported as an alias: 106 self.assertNotIn('alias-of', c, "%s shouldn't be an alias" % (name)) 110 Check if unversioned CPU model is an alias pointing to right version 123 'Cascadelake-Server must be an alias of Cascadelake-Server-v1') 125 'Cascadelake-Server-v1 must not be an alias') 130 'qemu64 must be an alias of qemu64-v1') [all …]
|
/qemu/include/qapi/ |
H A D | visitor.h | 30 * and QemuOpts) parse an external representation and build the 32 * take a QAPI object and generate an external representation, the 72 * the root of a tree, @name is ignored; when visiting a member of an 74 * member of a list, @name is NULL; and when visiting the member of an 88 * If an error is detected during visit_type_FOO() with an input 92 * Using an output or clone visitor with an incomplete object has 95 * incomplete objects. Since input visitors never produce an 96 * incomplete object, such an object is possible only by manual 102 * is an additional generated function in qapi-visit-MODULE.h 183 * succeeded, even if an intermediate visit encounters an error). [all …]
|
/qemu/include/hw/xtensa/ |
H A D | xtensa-isa.h | 20 * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, 48 * . an instruction buffer - for holding the raw instruction bits 73 * specific values are only fixed for a particular instantiation of an 108 * Decoding an instruction involves first finding the format, which 124 * Encoding an instruction is roughly the same procedure in reverse: 144 * xtensa_isa_ok, an error message containing additional information 146 * The error messages are stored in an internal buffer, which should 188 /* Allocate an xtensa_insnbuf of the right size. */ 193 /* Release an xtensa_insnbuf. */ 230 /* Deallocate an xtensa_isa structure. */ [all …]
|
/qemu/docs/ |
H A D | image-fuzzer.txt | 44 The runner uses an external image fuzzer to generate test images. An image 79 - $off for an offset in the fuzzed image 136 The runner calls an image generator specifying the path to a test image file, 138 An image generator is expected to provide a 155 purpose, so an image generator is not recommended to modify it internally. 183 6. Should generate the test image with the correct structure based on an image 185 7. Should accept a seed as an argument (for regression purpose) 186 8. Should generate a seed if it is not specified as an input parameter. 189 10. Should accept a vector of actions as an argument (for test reproducing and 193 actions, if it is not specified as an input parameter [all …]
|
/qemu/docs/interop/ |
H A D | parallels.rst | 34 Block Allocation Table, an entity that contains information for 40 The header is placed at the start of an image and contains the following 76 A zero in this field means that the image was opened by an old 83 An offset, in sectors, from the start of the file to the start of 105 Format Extension offset, an offset, in sectors, from the start of 118 Each BAT entry contains an offset from the start of the file to the 137 The data area is an area from the data offset (provided by ``header.data_off`` 148 The Format Extension is an area 1 cluster in size that provides additional 173 If the software cannot load the extension (due to an 175 changed. If this flag is unset and there is an error on [all …]
|
H A D | qed_spec.txt | 9 …ut the image file. A regular cluster may be a '''data cluster''', an '''L2''', or an '''L1 table'… 40 ** An image with unknown ''features'' bits enabled must not be opened. File format changes that ar… 41 ** An image with unknown ''compat_features'' bits enabled can be opened safely. The unknown featur… 42 ** An image with unknown ''autoclear_features'' bits enable can be opened safely after clearing the… 45 …ed within the first ''header_size'' clusters. The backing filename may be an absolute path or rel… 50 …This should be used to ensure that raw backing files are never detected as an image format if they… 80 …ontiguous clusters. The table_size header field determines table size for an image file. For exa… 94 …ay wish to store per-offset information. The least significant 12 bits of an offset are reserved … 97 Reads to an unallocated area of the image file access the backing file. If there is no backing fil… 99 Writes to an unallocated area cause a new data clusters to be allocated, and a new L2 table if that… [all …]
|
H A D | qcow2.rst | 39 Number of bits that are used for addressing an offset 43 Note: QEMU as of today has an implementation limit of 2 MB 53 Note: QEMU has an implementation limit of 32 MB as 59 table layouts limit an image to no more than 64 PB 60 (56 bits) of populated clusters, and an image may 96 Bitmask of incompatible features. An implementation must 97 fail to open an image if an unknown bit is set. 109 Bit 2: External data file bit. If this bit is set, an 118 An External Data File Name header extension may 127 L2 table entries use an extended format that [all …]
|
/qemu/docs/devel/ |
H A D | multiple-iothreads.rst | 16 QEMU is an event-driven program that can do several things at once using an 53 The main difference between legacy code and new code that can run in an 67 * LEGACY ``qemu_aio_set_event_notifier()`` - monitor an event notifier 71 * LEGACY ``qemu_aio_wait()`` - run an event loop iteration 74 runs in an ``IOThread``. They might cause a crash or deadlock if called from an 79 * ``aio_set_event_notifier()`` - monitor an event notifier 83 * ``aio_poll()`` - run an event loop iteration 93 ``qemu_get_aio_context()``. Code that takes an ``AioContext`` argument 97 How to synchronize with an ``IOThread`` 104 are thread-safe. They can be used to trigger activity in an ``IOThread``. [all …]
|
H A D | reset.rst | 24 You can apply a reset to an object using ``resettable_assert_reset()``. You need 26 instantly reset an object, without keeping it in reset state, just call 30 The Resettable interface handles reset types with an enum ``ResetType``: 86 Note that, since resettable is an interface, the API takes a simple Object as 89 calls to resettable interface are done through base class functions, such an 98 Device or Bus into an Object and pass the cold reset type. When possible 116 of an object is split into three well defined phases. 139 (if an object is already in reset state when calling 155 This section documents the APIs that an implementation of a resettable object 158 for example when specializing an existing device or bus. [all …]
|
H A D | control-flow-integrity.rst | 15 function calls have not been altered by an attacker. 48 If desired, an additional flag to increase the verbosity of the output in case 55 violation, the binary will terminate with an illegal instruction signal. 78 3. Plugins, since a plugin is implemented as an external library 80 4. Modules, since they are implemented as an external library 83 signal handler may have been provided by an external library or even plugged 89 If you are working on function that is performing a call using an 92 definition, and add an explanation on why the function is not compatible 93 with CFI. An example of the use of ``QEMU_DISABLE_CFI`` is provided here:: 98 * A TB is a blob of binary code, created at runtime and called with an [all …]
|
H A D | qapi-code-gen.rst | 67 syntax in an EBNF-like notation: 155 self-contained, but at the moment, nothing prevents an included file 157 an outer file. The parser may be made stricter in the future to 223 Nothing prevents an empty enumeration, although it is probably not 226 On the wire, an enumeration type's value is represented by its 227 (string) name. In C, it's represented by an enumeration constant. 236 QAPI schema order), where N is the number of values. There is an 239 Do not use string or an integer type when an enumeration type can do 261 A one-element array containing a string denotes an array of the type 262 named by the string. Example: ``['int']`` denotes an array of ``int``. [all …]
|
H A D | memory.rst | 19 Memory is modelled as an acyclic graph of MemoryRegion objects. Sinks 53 - IOMMU region: an IOMMU region translates addresses of accesses made to it 55 these are only needed for modelling an IOMMU, not for simple devices. 61 and an MMIO region. 79 but an alias may not point back to itself, directly or indirectly. 89 (that is, to an MMIO, RAM or ROM region). This means that the region 96 Subregions cannot be added to an alias region. 146 attached to an object, which acts as its owner or parent. QEMU ensures 149 device. For example, the owner object will not die between an 152 After creation, a region can be added to an address space or a [all …]
|
/qemu/docs/system/s390x/ |
H A D | vfio-ap.rst | 12 linux system running in an IBM Z system LPAR. 26 An AP adapter is an IBM Z adapter card that can perform cryptographic 27 functions. There can be from 0 to 256 adapters assigned to an LPAR depending 31 determined by machine model. When installed, an AP adapter is accessed by 36 An adapter is partitioned into domains. Each domain can be thought of as 37 a set of hardware registers for processing AP instructions. An adapter can 51 An AP queue is the means by which an AP command-request message is sent to an 52 AP usage domain inside a specific AP. An AP queue is identified by a tuple 53 comprised of an AP adapter ID (APID) and an AP queue index (APQI). The 55 forms an AP Queue Number (APQN) uniquely identifying an AP queue. AP [all …]
|
/qemu/block/ |
H A D | qed-l2-cache.c | 17 * An open image has one L2 table cache that is used to avoid accessing the 34 * Multiple I/O requests may be using an L2 table cache entry at any given 35 * time. That means an entry may be in use across several requests and 37 * particular, an entry evicted from the cache will only be freed once all 40 * An in-flight I/O request will hold a reference to a L2 table cache entry for 45 * An interesting case occurs when two requests need to access an L2 table that 84 * Allocate an uninitialized entry from the cache 103 * Decrease an entry's reference count and free if necessary when the reference 123 * Find an entry in the L2 cache. This may return NULL and it's up to the 146 * Commit an L2 cache entry into the cache. This is meant to be used as part of [all …]
|
/qemu/tests/qemu-iotests/ |
H A D | 142 | 96 …_qemu -drive "$files","$ids",cache.direct=on | grep -e "Cache" -e "[Cc]annot|[Cc]ould not|[Cc]an't" 98 … -drive "$files","$ids",file.cache.direct=on | grep -e "Cache" -e "[Cc]annot|[Cc]ould not|[Cc]an't" 100 …rive "$files","$ids",backing.cache.direct=on | grep -e "Cache" -e "[Cc]annot|[Cc]ould not|[Cc]an't" 102 …"$files","$ids",backing.file.cache.direct=on | grep -e "Cache" -e "[Cc]annot|[Cc]ould not|[Cc]an't" 108 …-drive "$files","$ids",cache.writeback=off | grep -e "Cache" -e "[Cc]annot\|[Cc]ould not\|[Cc]an't" 119 …u -drive "$files","$ids",cache.no-flush=on | grep -e "Cache" -e "[Cc]annot\|[Cc]ould not\|[Cc]an't" 121 …ive "$files","$ids",file.cache.no-flush=on | grep -e "Cache" -e "[Cc]annot\|[Cc]ould not\|[Cc]an't" 123 … "$files","$ids",backing.cache.no-flush=on | grep -e "Cache" -e "[Cc]annot\|[Cc]ould not\|[Cc]an't" 125 …les","$ids",backing.file.cache.no-flush=on | grep -e "Cache" -e "[Cc]annot\|[Cc]ould not\|[Cc]an't" 162 # new cache mode is specified in the flags, not as an option. [all …]
|
H A D | 060 | 36 # Sometimes the error line might be dumped before/after an event 52 # These tests only work for compat=1.1 images without an external 60 rt_offset=65536 # 0x10000 (XXX: just an assumption) 61 rb_offset=131072 # 0x20000 (XXX: just an assumption) 62 l1_offset=196608 # 0x30000 (XXX: just an assumption) 63 l2_offset=262144 # 0x40000 (XXX: just an assumption) 64 l2_offset_after_snapshot=524288 # 0x80000 (XXX: just an assumption) 67 # Overlap checks are done before write operations only, therefore opening an 102 # We could now try to fix the image, but this would probably fail (how should an 165 # Write two clusters, the second one enforces creation of an L2 table after [all …]
|
/qemu/tests/qtest/ |
H A D | rtl8139-test.c | 106 /* Test 2. Check we didn't get an interrupt with TimerInt == 0 */ in test_timer() 108 fatal("got an interrupt\n"); in test_timer() 116 fatal("we should have an interrupt here!\n"); in test_timer() 122 fatal("got an interrupt\n"); in test_timer() 134 fatal("we should have an interrupt here!\n"); in test_timer() 146 fatal("we should have an interrupt here!\n"); in test_timer() 149 /* Test 4. Increment TimerInt we should see an interrupt */ in test_timer() 163 fatal("we should have an interrupt here!\n"); in test_timer() 171 /* Test 5. Second time we pass from 0 should see an interrupt */ in test_timer() 173 /* here we should have an interrupt */ in test_timer() [all …]
|
/qemu/python/qemu/qmp/ |
H A D | qmp_client.py | 7 accept an incoming connection from that server. 38 Abstract exception class for Protocol errors that wrap an Exception. 53 An exception occurred during the Greeting phase. 62 An exception occurred during the Negotiation phase. 92 Exception raised by `execute()` (et al) when an RPC is interrupted. 94 This error is raised when an `execute()` statement could not be 139 An execution reply was successfully routed, but not understood. 141 If a QMP message is received with an 'id' field to allow it to be 344 Add an incoming message to the appropriate queue/handler. 355 # Below, we assume everything left is an execute/exec-oob response. [all …]
|
/qemu/qapi/ |
H A D | introspect.json | 19 # Command query-qmp-schema exposes the QMP wire ABI as an array of 31 # version of QEMU may list an object member as an optional 34 # string into a specific enum or from one specific type into an 37 # Returns: array of @SchemaInfo, where each element describes an 62 # @enum: an enumeration type 64 # @array: an array type 66 # @object: an object type (struct or union) 68 # @alternate: an alternate type 134 # @int: JSON number that is an integer 180 # An object member. [all …]
|
/qemu/include/system/ |
H A D | memory.h | 237 /* RAM is an mmap-ed named file */ 350 * and provide an implementation of at least the @translate method here 358 * Conceptually an IOMMU provides a mapping from input address 359 * to an output TLB entry. If the IOMMU is aware of memory transaction 366 * @translate takes an input address and an IOMMU index 389 * may use this as an optimization, to stop doing a page table 393 * IOMMUTLBEntry. (Note that this implies that an IOMMU may not 397 * holding the big QEMU lock or is inside an RCU critical section; 399 * register an IOMMU notifier so it can invalidate its cached 459 * Optional method -- an IOMMU only needs to provide this method [all …]
|
H A D | device_tree.h | 34 * @errp: handle to an error object 40 * returned array contains a single element equal to NULL. If an error 54 * @errp: handle to an error object 60 * returned array contains a single element equal to NULL. If an error 80 * @array: pointer to an array of string pointers 99 * @errp: handle to an error object 113 * @errp: handle to an error object 145 * to be an array of cells. The values of the cells are specified via 149 * an error being returned). If a value is too large to fit in the 150 * number of cells specified for it, an error is returned. [all …]
|
/qemu/trace/ |
H A D | control.h | 71 * Search an event by its name. 80 * Whether the given string is an event name pattern. 88 * Get the identifier of an event. 95 * Get the name of an event. 103 * Get the tracing state of an event, both static and the QEMU dynamic state. 115 * Get the tracing state of an event, both static and dynamic state from all 131 * Get the static tracing state of an event. 141 * Get the dynamic tracing state of an event. 150 * Set the dynamic tracing state of an event.
|
/qemu/docs/specs/ |
H A D | ppc-xive.rst | 30 routing by matching an event source number with an Event 65 esb: Event State Buffer (Array of PQ bits in an IVSE) 108 an Event State Buffer (ESB) array and can be controlled by MMIOs. 111 Structure (EAS) table for an Event Notification Descriptor (END) 113 a notification path to a CPU and an in-memory Event Queue, in which 114 will be enqueued an EQ data for the O/S to pull. 155 Interrupt flow from an O/S perspective 158 After an event data has been enqueued in the O/S Event Queue, the IVPE 160 in the register IBP (Interrupt Pending Buffer) to indicate that an 169 Register (NSR) is updated to notify the presence of an exception for [all …]
|