qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v6 10/15] hostmem: Wire up RAM_NORESERVE via "reserve" proper


From: David Hildenbrand
Subject: Re: [PATCH v6 10/15] hostmem: Wire up RAM_NORESERVE via "reserve" property
Date: Fri, 23 Apr 2021 16:21:22 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.8.1

On 23.04.21 14:10, Markus Armbruster wrote:
David Hildenbrand <david@redhat.com> writes:

diff --git a/backends/hostmem.c b/backends/hostmem.c
index c6c1ff5b99..58fdc1b658 100644
--- a/backends/hostmem.c
+++ b/backends/hostmem.c
@@ -217,6 +217,11 @@ static void host_memory_backend_set_prealloc(Object *obj, 
bool value,
       Error *local_err = NULL;
       HostMemoryBackend *backend = MEMORY_BACKEND(obj);
   +    if (!backend->reserve && value) {
+        error_setg(errp, "'prealloc=on' and 'reserve=off' are incompatible");
+        return;
+    }

Aha.  Shouldn't this be documented in qom.json?

Whoops, skipped that comment. Can add it if that's the place to
document that.

Yes, please.  .json doc comments is where we document the external
interface.


What about something like this:

diff --git a/qapi/qom.json b/qapi/qom.json
index e9b86893a5..4fa3137aab 100644
--- a/qapi/qom.json
+++ b/qapi/qom.json
@@ -559,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',


--
Thanks,

David / dhildenb




reply via email to

[Prev in Thread] Current Thread [Next in Thread]