
On Fri, Mar 20, 2015 at 15:39:03 +0100, Pavel Hrdina wrote:
From: Luyao Huang <lhuang@redhat.com>
We will ignore --maximum option when only use setvcpus with this option, like this (this error is another issue):
# virsh setvcpus test3 --maximum 10 error: Failed to create controller cpu for group: No such file or directory
this is because we do not set it in flags before we check if there is a flags set.
Refactor these code and fix the logic.
Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1204033
Signed-off-by: Luyao Huang <lhuang@redhat.com> Signed-off-by: Pavel Hrdina <phrdina@redhat.com> --- tools/virsh-domain.c | 30 ++++++------------------------ 1 file changed, 6 insertions(+), 24 deletions(-)
diff --git a/tools/virsh-domain.c b/tools/virsh-domain.c index 1d8225c..9430ad9 100644 --- a/tools/virsh-domain.c +++ b/tools/virsh-domain.c @@ -6735,6 +6735,8 @@ cmdSetvcpus(vshControl *ctl, const vshCmd *cmd) VSH_EXCLUSIVE_OPTIONS_VAR(current, live); VSH_EXCLUSIVE_OPTIONS_VAR(current, config); VSH_EXCLUSIVE_OPTIONS_VAR(guest, config); + VSH_EXCLUSIVE_OPTIONS_VAR(guest, maximum); + VSH_EXCLUSIVE_OPTIONS_VAR(config, maximum);
As Yanbing pointed out, you want to make live and maximum exclusive. Additionally this changes semantics, as currently --maximum was possible if and only if --config was specified, which would make it exclusive with --current too. This is also implied in the man page. We have the following options: 1) Make --maximum imply --config and document that properly 2) Make --maximum mutualy exclusive with --current too 3) Allow --maximum and --current and document that it will fail for online domains I'm fine with either of those options Peter