<div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Jul 23, 2020 at 2:48 PM Peter Krempa <<a href="mailto:pkrempa@redhat.com">pkrempa@redhat.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On Thu, Jul 23, 2020 at 10:04:08 +0800, Han Han wrote:<br>
> Signed-off-by: Han Han <<a href="mailto:hhan@redhat.com" target="_blank">hhan@redhat.com</a>><br>
> ---<br>
>  docs/<a href="http://formatdomain.html.in" rel="noreferrer" target="_blank">formatdomain.html.in</a> | 3 ++-<br>
>  1 file changed, 2 insertions(+), 1 deletion(-)<br>
> <br>
> diff --git a/docs/<a href="http://formatdomain.html.in" rel="noreferrer" target="_blank">formatdomain.html.in</a> b/docs/<a href="http://formatdomain.html.in" rel="noreferrer" target="_blank">formatdomain.html.in</a><br>
> index f3a639b972..c180b59226 100644<br>
> --- a/docs/<a href="http://formatdomain.html.in" rel="noreferrer" target="_blank">formatdomain.html.in</a><br>
> +++ b/docs/<a href="http://formatdomain.html.in" rel="noreferrer" target="_blank">formatdomain.html.in</a><br>
> @@ -4092,7 +4092,8 @@<br>
>          contents should be reverted automatically when the guest<br>
>          exits.  With some hypervisors, marking a disk transient<br>
>          prevents the domain from participating in migration or<br>
> -        snapshots. <span class="since">Since 0.9.5</span><br>
> +        snapshots. Unsuppported by qemu, libxl, vz hypervisors.<br>
> +        <span class="since">Since 0.9.5</span><br>
<br>
We usually mention just where the config is supported. I don't think we<br>
should document it as you propose.<br>
<br></blockquote><div>It seems that this element is only supported in vmx driver, right?</div><div>➜  libvirt git:(master) ag '\->transient' -A 3</div><div><br></div><div>src/vz/vz_utils.c:352:    if (disk->transient) {<br>src/vz/vz_utils.c:353-        virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",<br>src/vz/vz_utils.c:354-                       _("Transient disks are not "<br>src/vz/vz_utils.c:355-                         "supported by vz driver."));<br>src/conf/domain_conf.c:10573:            def->transient = true;<br>src/conf/domain_conf.c:10574-        } else if (!encryption &&<br>src/conf/domain_conf.c:10575-                   virXMLNodeNameEqual(cur, "encryption")) {<br>src/conf/domain_conf.c:10576-            if (!(encryption = virStorageEncryptionParseNode(cur, ctxt)))<br>--<br>src/conf/domain_conf.c:25576:    if (def->transient)<br>src/conf/domain_conf.c:25577-        virBufferAddLit(buf, "<transient/>\n");<br>src/conf/domain_conf.c:25578-    virBufferEscapeString(buf, "<serial>%s</serial>\n", def->serial);<br>src/conf/domain_conf.c:25579-    virBufferEscapeString(buf, "<wwn>%s</wwn>\n", def->wwn);<br>src/qemu/qemu_validate.c:2168:    if (disk->transient) {<br>src/qemu/qemu_validate.c:2169-        virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",<br>src/qemu/qemu_validate.c:2170-                       _("transient disks not supported yet"));<br>src/qemu/qemu_validate.c:2171-        return -1;<br>src/libxl/libxl_conf.c:1148:    if (l_disk->transient) {<br>src/libxl/libxl_conf.c:1149-        virReportError(VIR_ERR_INTERNAL_ERROR, "%s",<br>src/libxl/libxl_conf.c:1150-                       _("libxenlight does not support transient disks"));<br>src/libxl/libxl_conf.c:1151-        return -1;<br>src/libxl/xen_xl.c:1699:    if (disk->transient) {<br>src/libxl/xen_xl.c:1700-        virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",<br>src/libxl/xen_xl.c:1701-                       _("transient disks not supported yet"));<br>src/libxl/xen_xl.c:1702-        goto cleanup;<br>src/libxl/xen_xm.c:342:    if (disk->transient) {<br>src/libxl/xen_xm.c:343-        virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",<br>src/libxl/xen_xm.c:344-                       _("transient disks not supported yet"));<br>src/libxl/xen_xm.c:345-        return -1;<br>src/test/test_driver.c:243:    nsdata->transient = tmp;<br>src/test/test_driver.c:244-<br>src/test/test_driver.c:245-    tmp = virXPathBoolean("boolean(./test:hasmanagedsave)", ctxt);<br>src/test/test_driver.c:246-    if (tmp == -1) {<br>--<br>src/test/test_driver.c:268:    if (nsdata->transient && nsdata->runstate == VIR_DOMAIN_SHUTOFF) {<br>src/test/test_driver.c:269-        virReportError(VIR_ERR_XML_ERROR, "%s",<br>src/test/test_driver.c:270-            _("transient domain cannot have runstate 'shutoff'"));<br>src/test/test_driver.c:271-        goto error;<br>--<br>src/test/test_driver.c:993:        obj->persistent = !nsdata->transient;<br>src/test/test_driver.c:994-        obj->hasManagedSave = nsdata->hasManagedSave;<br>src/test/test_driver.c:995-<br>src/test/test_driver.c:996-        if (nsdata->runstate != VIR_DOMAIN_SHUTOFF) {<br>src/vmx/vmx.c:2273:                (*def)->transient = STRCASEEQ(mode,<br>src/vmx/vmx.c:2274-                                              "independent-nonpersistent");<br>src/vmx/vmx.c:2275-        } else {<br>src/vmx/vmx.c:2276-            virReportError(VIR_ERR_INTERNAL_ERROR,<br>--<br>src/vmx/vmx.c:3640:    if (def->transient)<br>src/vmx/vmx.c:3641-        virBufferAsprintf(buffer,<br>src/vmx/vmx.c:3642-                          "%s%d:%d.mode = \"independent-nonpersistent\"\n",<br>src/vmx/vmx.c:3643-                          busType, controllerOrBus, unit);<br></div></div><br clear="all"><br>-- <br><div dir="ltr" class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr">Best regards,</div><div dir="ltr">-----------------------------------<br></div><div dir="ltr">Han Han<br>Senior Quality Engineer<br>Redhat.<br><br>Email: <a href="mailto:hhan@redhat.com" target="_blank">hhan@redhat.com</a><br>Phone: +861065339333<br></div></div></div></div></div></div></div>