1
0
Fork 0
mirror of https://github.com/retspen/webvirtcloud synced 2026-11-08 11:16:47 +00:00
webvirtcloud/vrtManager
catborise fe4cffdc91 fix(instances): new q35 VMs have spare PCIe ports, and a full VM says what to do
On a q35 machine each PCIe device (a virtio disk, a network card) takes
a root port of its own, libvirt makes only as many ports as the VM is
defined with, and a running VM gets no new one: adding a virtio disk to
such a VM failed with libvirt's "No more available PCI slots".

A new q35 VM is now defined with the PCIe root and 14 root ports, as
virt-install makes them: libvirt puts the VM's devices into them and
leaves the rest free for devices added while it runs.

When a running VM has no free slot, Add disk and Add network device say
what to do instead of libvirt's words: for a disk, the scsi bus when
the VM has a SCSI controller (its disks need no slot of their own), or
adding it with the VM shut down, where libvirt makes the port; for a
network device, shutting the VM down. A new volume whose attach was
refused stays in its pool, as before, to attach as an existing volume.
2026-10-31 19:47:26 +03:00
..
tests fix(instances): a network device keeps its source unless another is chosen 2026-10-31 18:10:05 +03:00
__init__.py Initial commit 2015-02-27 10:53:51 +02:00
connection.py fix(instances): a VM's destruction checks its files on every host first 2026-10-31 01:08:42 +03:00
create.py fix(instances): new q35 VMs have spare PCIe ports, and a full VM says what to do 2026-10-31 19:47:26 +03:00
hostdetails.py feat(computes): the host overview shows its VMs, capacity and load, also when it cannot be reached 2026-10-27 14:51:18 +03:00
instance.py fix(instances): a network device keeps its source unless another is chosen 2026-10-31 18:10:05 +03:00
interface.py feat(interfaces): the interface pages on Bootstrap's cards, tables and dialogs 2026-10-29 10:09:52 +03:00
libvirt-ssh fix(vrtManager): libvirt connections open within a time limit 2026-10-05 09:06:52 +03:00
network.py feat(networks): a network's DHCP leases on its page 2026-10-29 11:41:39 +03:00
nodedevs.py fix(nodedevs): the Devices page works on Python 3.12.3 2026-10-29 15:50:16 +03:00
nwfilters.py fix(virtsecrets): a secret in use is not deleted, and a password is stored as typed 2026-10-29 10:10:43 +03:00
rwlock.py fix(vrtManager): modernize rwlock for Python 3.12 compatibility and add tests 2026-09-24 21:49:52 +03:00
storage.py perf(storages): a pool's volumes are read with one libvirt call each 2026-10-28 19:34:34 +03:00
util.py fix(nwfilters): a filter in use is not deleted, and a change replaces no other filter 2026-10-29 10:10:17 +03:00
virtsecrets.py fix(virtsecrets): a secret in use is not deleted, and a password is stored as typed 2026-10-29 10:10:43 +03:00