Bug 589465
Summary: | [RFE] start a domain in paused mode | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Product: | Red Hat Enterprise Linux 6 | Reporter: | Dan Kenigsberg <danken> | ||||||||
Component: | libvirt | Assignee: | Eric Blake <eblake> | ||||||||
Status: | CLOSED CURRENTRELEASE | QA Contact: | Virtualization Bugs <virt-bugs> | ||||||||
Severity: | medium | Docs Contact: | |||||||||
Priority: | medium | ||||||||||
Version: | 6.0 | CC: | dallan, danken, hateya, hbrock, iheim, mgoldboi, mjenner, nzhang, ovirt-maint, Rhev-m-bugs, syeghiay, weizhan, xen-maint, ykaul | ||||||||
Target Milestone: | rc | Keywords: | FutureFeature | ||||||||
Target Release: | 6.0 | ||||||||||
Hardware: | All | ||||||||||
OS: | Linux | ||||||||||
Whiteboard: | vdsm & libvirt integration | ||||||||||
Fixed In Version: | libvirt-0_8_1-11_el6 | Doc Type: | Enhancement | ||||||||
Doc Text: | Story Points: | --- | |||||||||
Clone Of: | 589458 | Environment: | |||||||||
Last Closed: | 2010-11-11 14:48:07 UTC | Type: | --- | ||||||||
Regression: | --- | Mount Type: | --- | ||||||||
Documentation: | --- | CRM: | |||||||||
Verified Versions: | Category: | --- | |||||||||
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||||||
Cloudforms Team: | --- | Target Upstream Version: | |||||||||
Embargoed: | |||||||||||
Bug Depends On: | |||||||||||
Bug Blocks: | 589458 | ||||||||||
Attachments: |
|
Description
Dan Kenigsberg
2010-05-06 08:50:47 UTC
This request was evaluated by Red Hat Product Management for inclusion in a Red Hat Enterprise Linux major release. Product Management has requested further review of this request by Red Hat Engineering, for potential inclusion in a Red Hat Enterprise Linux Major release. This request is not yet committed for inclusion. This feature request did not get resolved in time for Feature Freeze for the current Red Hat Enterprise Linux release and has now been denied. You may re-open your request by requesting your support representative to propose it for the next release. This should be doable for virDomainCreateXML API which has a flags argument but the virDomainCreate() counterpart has no such flags, so adding this to defined domains would require too much work for RHEL-6.0. Daniel We should go ahead and fix the transient domain case (virDomainCreateXML) for VDSM. Upstream patch series posted: https://www.redhat.com/archives/libvir-list/2010-June/msg00186.html Created attachment 422372 [details]
1/3 - add new flag
Created attachment 422373 [details]
2/3 - use flag for qemu
Note - backport had merge conflict, unless upstream patch 2b57478ef0a0a983 is applied first (Jamie Strandboge, * Add stdin_path to qemudStartVMDaemon() args.) The attached file has the merge conflict resolved.
Created attachment 422374 [details]
3/3 - expose new flag in virsh
Per upstream review, I am working on adding the virDomainCreateFlags() API; the question is whether this new API needs to be backported to RHEL 6.0, or whether it can wait for 6.1 (leaving just the first 3 patches to virDomainCreateXML for inclusion in 6.0). https://www.redhat.com/archives/libvir-list/2010-June/msg00210.html We've painted ourselves into a bit of a corner. We already have the public typedef enum virDomainCreateFlags, so the new API has to be named something different (perhaps virDomainCreateWithFlags or virDomainCreate2). libvirt-0_8_1-9_el6 has been built in RHEL-6-candidate with the fix. Dave libvirt-python-0.8.1-10.el6.x86_64: python binding is missing VIR_DOMAIN_START_PAUSED. On IRC, Matthias pointed out that there was a partial dependency problem introduced in upstream commit a79fb1c491197a91094c that may impact the rebuild rules for python bindings. I'm looking further into the issue, and hope to figure out if that same issue applies to the RHEL6 build. libvirt-0_8_1-11_el6 has been built in RHEL-6-candidate with the fix. Dave On testing, I follow the steps: 1. start a domain with # virsh start demo Domain demo started 2. After demo started, pause the demo # virsh suspend demo Domain demo suspended # virsh list --all Id Name State ---------------------------------- 23 demo paused 3 Start the demo # virsh start demo error: Domain is already active # virsh list --all Id Name State ---------------------------------- 23 demo paused Is that the expected result? # rpm -qa libvirt libvirt-0.8.1-15.el6.x86_64 kernel 2.6.32-44.2.el6.x86_64 Using 'virsh start' cannot exercise the new functionality, since RHEL6 does not support starting a persistent guest in the paused state. To test this, you need to use a transient domain, via: virsh create dom.xml [--create] virsh list --all and verify that omitting --create shows the transient domain as running, while including --create shows the transient domain as paused. Thanks Eric. I change the step according to your advice: #virsh create dom.xml --paused Domain dom created from dom.xml #virsh list --all Id Name State ---------------------------------- 6 dom paused Is that means the bug has been fixed? Yes, it's fixed. Without the patch, virsh would have choked on --paused. According to comment 20 and 21, this bug can be verified. Verified with libvirt-0.8.1-27.el6.x86_64. # virsh create rhel6.xml --paused Domain rhel6 created from rhel6.xml # virsh list --all Id Name State ---------------------------------- 6 rhel6 paused - rhel6-rc shut off - winxp shut off Red Hat Enterprise Linux 6.0 is now available and should resolve the problem described in this bug report. This report is therefore being closed with a resolution of CURRENTRELEASE. You may reopen this bug report if the solution does not work for you. |