On 11/12/2015 02:23 AM, Nikolay Shirokovskiy wrote:
virDomainSetMemory is documented to change only runtime configuration
of
running domain. This can't be implemented for vz driver as it always change
persistent state too. Let's extend semantics of this function for changes to be
hyperviror specific. As a result 'virsh setmem' without parameters (which ends
up in virDomainSetMemory call) would be possible for a vz domain. By the way,
virsh documentation for this case states that behaviour is hypervisor specific
already.
Signed-off-by: Nikolay Shirokovskiy <nshirokovskiy(a)virtuozzo.com>
---
src/libvirt-domain.c | 5 +++--
1 files changed, 3 insertions(+), 2 deletions(-)
Found this in my unread libvir-list unreplied to history...
I've adjusted the commit header/message to put in some history:
libvirt: Update virDomainSetMemory description
virDomainSetMemory is documented to change only runtime configuration of
running domain. However, that's not true of all hypervisors supported.
Seems as though when commit id '0f2e50be5' added the current flag, the
function description should have been updated similar to when commit id
'c1795c52' updated the virDomainSetMaxMemory description. Especially since
commit id '80427f1d' updated the virsh 'setmem' description to indicate
"behavior is different depending on hypervisor."
This patch will update the description to match current functionality.
ACK and pushed.
John
diff --git a/src/libvirt-domain.c b/src/libvirt-domain.c
index de7eb04..56ab907 100644
--- a/src/libvirt-domain.c
+++ b/src/libvirt-domain.c
@@ -1882,8 +1882,9 @@ virDomainSetMaxMemory(virDomainPtr domain, unsigned long memory)
* to Domain0 i.e. the domain where the application runs.
* This function may require privileged access to the hypervisor.
*
- * This command only changes the runtime configuration of the domain,
- * so can only be called on an active domain.
+ * This command is hypervisor-specific for whether active, persistent,
+ * or both configurations are changed; for more control, use
+ * virDomainSetMemoryFlags().
*
* Returns 0 in case of success and -1 in case of failure.
*/