summaryrefslogtreecommitdiffstats
path: root/qapi
diff options
context:
space:
mode:
authorPeter Maydell2021-06-17 16:43:26 +0200
committerPeter Maydell2021-06-17 16:43:26 +0200
commitb6d73e9cb1c620960ca7d864ee0725f8a55fe778 (patch)
treebfea4ab0f516d9795a165b29640dc23b8c12b1b8 /qapi
parentMerge remote-tracking branch 'remotes/rth-gitlab/tags/pull-c11-20210615' into... (diff)
parentconfigure: Remove probe for _Static_assert (diff)
downloadqemu-b6d73e9cb1c620960ca7d864ee0725f8a55fe778.tar.gz
qemu-b6d73e9cb1c620960ca7d864ee0725f8a55fe778.tar.xz
qemu-b6d73e9cb1c620960ca7d864ee0725f8a55fe778.zip
Merge remote-tracking branch 'remotes/bonzini-gitlab/tags/for-upstream' into staging
* avoid deprecation warnings for SASL on macOS 10.11 or newer * fix -readconfig when config blocks have an id (like [chardev "qmp"]) * Error* initialization fixes * Improvements to ESP emulation (Mark) * Allow creating noreserve memory backends (David) * Improvements to query-memdev (David) * Bump compiler to C11 (Richard) * First round of SVM fixes from GSoC project (Lara) # gpg: Signature made Wed 16 Jun 2021 16:37:49 BST # gpg: using RSA key F13338574B662389866C7682BFFBD25F78C7AE83 # gpg: issuer "pbonzini@redhat.com" # gpg: Good signature from "Paolo Bonzini <bonzini@gnu.org>" [full] # gpg: aka "Paolo Bonzini <pbonzini@redhat.com>" [full] # Primary key fingerprint: 46F5 9FBD 57D6 12E7 BFD4 E2F7 7E15 100C CD36 69B1 # Subkey fingerprint: F133 3857 4B66 2389 866C 7682 BFFB D25F 78C7 AE83 * remotes/bonzini-gitlab/tags/for-upstream: (45 commits) configure: Remove probe for _Static_assert qemu/compiler: Remove QEMU_GENERIC include/qemu/lockable: Use _Generic instead of QEMU_GENERIC util: Use unique type for QemuRecMutex in thread-posix.h util: Pass file+line to qemu_rec_mutex_unlock_impl util: Use real functions for thread-posix QemuRecMutex softfloat: Use _Generic instead of QEMU_GENERIC configure: Use -std=gnu11 target/i386: Added Intercept CR0 writes check target/i386: Added consistency checks for CR0 target/i386: Added consistency checks for VMRUN intercept and ASID target/i386: Refactored intercept checks into cpu_svm_has_intercept configure: map x32 to cpu_family x86_64 for meson hmp: Print "reserve" property of memory backends with "info memdev" qmp: Include "reserve" property of memory backends hmp: Print "share" property of memory backends with "info memdev" qmp: Include "share" property of memory backends qmp: Clarify memory backend properties returned via query-memdev hostmem: Wire up RAM_NORESERVE via "reserve" property util/mmap-alloc: Support RAM_NORESERVE via MAP_NORESERVE under Linux ... Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'qapi')
-rw-r--r--qapi/machine.json16
-rw-r--r--qapi/qom.json10
2 files changed, 23 insertions, 3 deletions
diff --git a/qapi/machine.json b/qapi/machine.json
index 58a9c86b36..e4d0f9b24f 100644
--- a/qapi/machine.json
+++ b/qapi/machine.json
@@ -790,11 +790,19 @@
#
# @size: memory backend size
#
-# @merge: enables or disables memory merge support
+# @merge: whether memory merge support is enabled
#
-# @dump: includes memory backend's memory in a core dump or not
+# @dump: whether memory backend's memory is included in a core dump
#
-# @prealloc: enables or disables memory preallocation
+# @prealloc: whether memory was preallocated
+#
+# @share: whether memory is private to QEMU or shared (since 6.1)
+#
+# @reserve: whether swap space (or huge pages) was reserved if applicable.
+# This corresponds to the user configuration and not the actual
+# behavior implemented in the OS to perform the reservation.
+# For example, Linux will never reserve swap space for shared
+# file mappings. (since 6.1)
#
# @host-nodes: host nodes for its memory policy
#
@@ -809,6 +817,8 @@
'merge': 'bool',
'dump': 'bool',
'prealloc': 'bool',
+ 'share': 'bool',
+ '*reserve': 'bool',
'host-nodes': ['uint16'],
'policy': 'HostMemPolicy' }}
diff --git a/qapi/qom.json b/qapi/qom.json
index f7ef30f940..652be317b8 100644
--- a/qapi/qom.json
+++ b/qapi/qom.json
@@ -545,6 +545,9 @@
# @share: if false, the memory is private to QEMU; if true, it is shared
# (default: false)
#
+# @reserve: if true, reserve swap space (or huge pages) if applicable
+# (default: true) (since 6.1)
+#
# @size: size of the memory region in bytes
#
# @x-use-canonical-path-for-ramblock-id: if true, the canoncial path is used
@@ -556,6 +559,12 @@
# false generally, but true for machine
# types <= 4.0)
#
+# Note: prealloc=true and reserve=false cannot be set at the same time. With
+# reserve=true, the behavior depends on the operating system: for example,
+# Linux will not reserve swap space for shared file mappings --
+# "not applicable". In contrast, reserve=false will bail out if it cannot
+# be configured accordingly.
+#
# Since: 2.1
##
{ 'struct': 'MemoryBackendProperties',
@@ -566,6 +575,7 @@
'*prealloc': 'bool',
'*prealloc-threads': 'uint32',
'*share': 'bool',
+ '*reserve': 'bool',
'size': 'size',
'*x-use-canonical-path-for-ramblock-id': 'bool' } }