|
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
[Prev in Thread] | Current Thread | [Next in Thread] |