summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
authorJiri Denemark <jdenemar@redhat.com>2022-05-10 15:20:25 +0200
committerJiri Denemark <jdenemar@redhat.com>2022-06-07 17:40:21 +0200
commitce34977c1fa96cd5c38f49a4bb5a686f3b09bd55 (patch)
tree40facb08423ae04c1f34ee2ac98e78fcfecc4f35 /tools
parent01d65a152037cd7babed64cd1aad4b86042016f3 (diff)
downloadlibvirt-ce34977c1fa96cd5c38f49a4bb5a686f3b09bd55.tar.gz
virsh: Add --postcopy option for domjobabort command
Signed-off-by: Jiri Denemark <jdenemar@redhat.com> Reviewed-by: Peter Krempa <pkrempa@redhat.com> Reviewed-by: Pavel Hrdina <phrdina@redhat.com>
Diffstat (limited to 'tools')
-rw-r--r--tools/virsh-domain.c16
1 files changed, 15 insertions, 1 deletions
diff --git a/tools/virsh-domain.c b/tools/virsh-domain.c
index dd7862b5e5..5c4a7d7b8d 100644
--- a/tools/virsh-domain.c
+++ b/tools/virsh-domain.c
@@ -6477,6 +6477,10 @@ static const vshCmdInfo info_domjobabort[] = {
static const vshCmdOptDef opts_domjobabort[] = {
VIRSH_COMMON_OPT_DOMAIN_FULL(VIR_CONNECT_LIST_DOMAINS_ACTIVE),
+ {.name = "postcopy",
+ .type = VSH_OT_BOOL,
+ .help = N_("interrupt post-copy migration")
+ },
{.name = NULL}
};
@@ -6484,11 +6488,21 @@ static bool
cmdDomjobabort(vshControl *ctl, const vshCmd *cmd)
{
g_autoptr(virshDomain) dom = NULL;
+ unsigned int flags = 0;
+ int rc;
if (!(dom = virshCommandOptDomain(ctl, cmd, NULL)))
return false;
- if (virDomainAbortJob(dom) < 0)
+ if (vshCommandOptBool(cmd, "postcopy"))
+ flags |= VIR_DOMAIN_ABORT_JOB_POSTCOPY;
+
+ if (flags == 0)
+ rc = virDomainAbortJob(dom);
+ else
+ rc = virDomainAbortJobFlags(dom, flags);
+
+ if (rc < 0)
return false;
return true;