IF YOU WOULD LIKE TO GET AN ACCOUNT, please write an
email to Administrator. User accounts are meant only to access repo
and report issues and/or generate pull requests.
This is a purpose-specific Git hosting for
BaseALT
projects. Thank you for your understanding!
Только зарегистрированные пользователи имеют доступ к сервису!
Для получения аккаунта, обратитесь к администратору.
The virt-manager application generates invalid guest XML when a
spapr-vio SCSI model controller is changed to a virtio-scsi model controller.
1. Create a guest
2. Add an spapr-vio controller to the guest via this gui path:
->Add Hardware
->Controller
->Type SCSI
->Model Hypervisor default
At this point, there will be a valid spapr-vio SCSI controller defined:
<controller type='scsi' index='0'>
<address type='spapr-vio' reg='0x2000'/>
</controller>
3.Now modify the above SCSI controller using this gui path:
->Choose "Controller sPAPR SCSI" on left pane
->Choose "VirtIO SCSI" for the Model on the right pane
->Apply
At this point, there will be a SCSI controller definition which is invalid due to an incorrect address type:
~# virsh dumpxml dotg2|grep -A2 -i scsi
<controller type='scsi' index='0' model='virtio-scsi'>
<address type='spapr-vio' reg='0x2000'/>
</controller>
Any attempt to start the guest will throw this error:
error: Failed to start domain dotg2
error: internal error: process exited while connecting to monitor: 2016-12-02T17:45:12.989165Z qemu-system-ppc64le: -device virtio-scsi-pci,id=scsi0,reg=0x2000: Property '.reg' not found
virt-manager fails to realize that the address type needs to be changed to a PCI address for a virtio-scsi controller.
If you change the model, you are supposed to leave the address field empty, so that libvirt sets it correctly. Or change the address field also appropriately.
Note that this bug can be reproduced entirely within virt-manager. No manual editing of guest XML is being done here. So, fix is to make virt-manager delete the address field when the SCSI controller model is changed, allowing libvirt to automatically assign a new address with the correct type.
Signed-off-by: Seeteena Thoufeek <s1seetee@linux.vnet.ibm.com>
such as a VM is active.
This patch will disable 'Clone' label in VMActionMenu
if we can't clone a VM,
as same as we did for 'Clone' button in clone ui page.
Signed-off-by: Chen Hanxiao <chenhanxiao@gmail.com>
For Xen, virt-manager uses a 'xenmigr' URI scheme, which is not
supported by the libvirt libxl driver. Attempting migration
fails with
libvirtError: invalid argument: unable to parse URI: xenmigr://myhost
The old xend-based libvirt driver supports this scheme, but also
supports an empty scheme. It's not clear what the 'xenmigr' scheme
is used for. 'xenmigr' is not referenced by any files in the Xen
code-base, including old branches with xend.
Drop setting scheme to 'xenmigr' when creating the Xen migration URI.
Signed-off-by: Jim Fehlig <jfehlig@suse.com>
libvirt has supported the migration V3 protocol for many years now.
A nice feature of the virDomainMigrate3 API is that it will detect
the protocol version supported by the underlying hypervisor,
including whether it supports the extensible parameters variant,
and call the hypervisor API with parameters fixed up as needed.
Change virt-manager to use the virDomainMigrate3 API, allowing
migration to work with hypervisors that only support the extensible
parameters variant of the migration V3 API.
Signed-off-by: Jim Fehlig <jfehlig@suse.com>
When creating a storage volume, it wouldn't show up in the list
since the refresh signaling was busted.
Code was using VIR_STORAGE_POOL_EVENT_REFRESHED which was dropped
from lifecycle event type, refresh is introduced as top level
event.
Function _close_viewer should be always called together with setting
unavailable page. Call only _activate_unavailable_page which does both things.
Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
We need to tweak refresh() handling to work similar to the shared
XML and status caching in libvirtobject.py: when the user manually
invokes the refresh() operation, and storage events are set up,
we just invoke the refresh() but let the event loop handle
refreshing the cache.
This fixes a backtrace when invoking a manual refresh via the
host details dialog
When new pool objects appear, we call refresh() on them, to ensure
we have the latest data (in case manual changes were made to the
storage pool directory behind libvirt's back, which is quite common).
However with the storage event support, this results in lots of
REFRESHED signals during initial connection startup, which kick
off redundant object polling.
Avoid storage REFRESHED events if they come in before the connection
is finished starting up to skip this redundant polling.
Otherwise this triggers some event calls and results in double
polling during connection startup. Doesn't cause any issues, just
spams the logs and needless libvirt calls
Even if it's not marked readonly or shareable, floppy media is
very likely to be a shared resource and not something that belongs
to the VM that the user will want to delete by default.
continue_install is intended to facilitate windows XP style 3 stage
installs:
stage 1: initial dos style disk setup, reboot
stage 2: actual full installer, reboot
stage 3: OS is functional, virt-install is done
The code assumed that we needed to keep the cdrom as the primary
boot device for the second stage, so virt-install/virt-manager needed
to hang around through the second stage run, wait until the VM shutdown,
then encode the final XML to boot of the disk.
Windows is and always has been smart enough to handle that case though...
after the initial boot, if we set the hd as the primary boot device
for stage 2, the disk bits that windows already installed will make
use of the cdrom as necessary. So the entire premise of continue_install
is irrelevant. Maybe back when it was added, when xen didn't even have
working ACPI support, this served a purpose, but I'm pretty sure we
can safely drop it nowadays.
If the first install attempt fails, then the second attempt succeeds,
we were still removing the disk images we created as though the
install never succeeded. We need to clear out the cached failed_guest
value via the customize dialog callback
https://bugzilla.redhat.com/show_bug.cgi?id=1342043
This improves loading domcapabilities to get domcapabilities for recommended
machine, not for default machine.
Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
If password for console is saved currently there is no way how to tell
virt-manager to forget that password. This patch improves the authentication
page in order to provide a way how to forget password simply by unchecking the
"Save this password in your keyring".
Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
Commit 839ce682 removed deprecated support of save/restore which was replaced by
managedsave feature. This is a leftover that wasn't removed together with that
commit.
Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1340356
Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
Commit a0c2fdf4 fixed a bug that there was no way how to close the app.
The original issue isn't present anymore but reverting that commit isn't
enough. We need to increment/decrement window count while
showing/closing the create window in order to not exit right after
the create window is opened.
Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1331707
Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
- If connecting remotely but graphics has no listen address,
like the spice GL case.
- Trying to connect to a TLS using VM over an ssh tunnel, it doesn't
seem to work: https://bugzilla.redhat.com/show_bug.cgi?id=1320331
Basically reverting this commit:
commit 1c8bf88db7
Author: Cole Robinson <crobinso@redhat.com>
Date: Tue Jun 18 08:46:24 2013 -0400
baseclass: Add unregister wrappers for idle and timeout
If an idle handler raises an exception, it isn't unregistered and loops
forever. This is a regression from previous pygobject and pygtk:
https://bugzilla.gnome.org/show_bug.cgi?id=702552
Work around this for now with our own wrappers.