Simon Gaiser
132f0608aa
pci: Add permissive options
2018-01-19 02:03:45 +01:00
Marek Marczykowski-Górecki
2b364f0cd9
Allow to choose emulated video model via qvm-features
...
Add feature named 'video-model' to choose custom video model. It needs
to be supported by libvirt: https://libvirt.org/formatdomain.html#elementsVideo
Example usage:
qvm-features vm-name video-model cirrus
QubesOS/qubes-issues#2488
QubesOS/qubes-issues#3432
2017-12-28 02:50:22 +01:00
Marek Marczykowski-Górecki
466bf89aae
Fix starting VM with kernel=None
...
When dom0 do not provide the kernel, it should also not set kernel
command line in libvirt config. Otherwise qemu in stubdom fails to start
because it get -append option without -kernel, which is illegal
configuration.
Fixes QubesOS/qubes-issues#3339
2017-12-14 23:26:52 +01:00
Marek Marczykowski-Górecki
18f159f8ec
Add IPv6 related VM properties
...
Add property for IPv6 address ('ip6'). Build default value similarly to
IPv4 - common prefix + QID or Disp ID (for DispVMs).
This all is disabled unless 'ipv6' feature is enabled. It is inherited
from netvm (not template).
Even when enabled, VM may decide to not use it - or simply not support
it.
QubesOS/qubes-issues#718
2017-12-07 01:40:30 +01:00
HW42
c695f3268c
linux-stubdom: Set cmdline in HVM config
2017-10-30 16:19:01 +01:00
HW42
c583cf5190
Add basic PVHv2 support
2017-10-02 22:23:27 +02:00
HW42
0497bfb288
linux-stubdom: Add option for EFI/legacy-BIOS
...
QubesOS/qubes-issues#2849
2017-09-15 16:01:15 +02:00
HW42
a081283b10
linux-stubdom: use "vga" aka "stdvga" video card
...
In contrast to the cirrus card emulation the vga card supports more
video modes. Since the qemu gui-agent bug [1] is now fixed we can switch
back to use it.
[1]: QubesOS/qubes-linux-utils@f14637a615
2017-09-14 02:39:52 +02:00
Marek Marczykowski-Górecki
8dfe2b873d
Fix libvirt xml template
...
Issue found by the test created in previous commit.
2017-07-17 12:28:56 +02:00
Marek Marczykowski-Górecki
21940bef90
Change vm.hvm into vm.virt_mode
...
Fixes QubesOS/qubes-issues#2912
2017-07-17 12:26:10 +02:00
Marek Marczykowski-Górecki
2dbb51a38d
exc/block: fix attaching block device exposed by dom0
...
Don't set <backenddomain> element in libvirt XML when device is provided
by dom0.
2017-07-04 04:09:28 +02:00
Marek Marczykowski-Górecki
75608795b0
Disable SMAP in VMs
...
Linux kernel bug cause hypercall fails from HVM userspace (see
referenced issue). As a simple workaround, do not advertise SMAP to VMs
- but still use it as hypervisor level.
Fixes QubesOS/qubes-issues#2881
2017-07-04 04:09:27 +02:00
Marek Marczykowski-Górecki
5f187bd2bf
Force maxmem=memory for HVM with PCI devices
...
Xen do not support other cases at all ("PCI device assignment for HVM
guest failed due to PoD enabled", PoD means "populate on demand").
2017-06-20 12:47:00 +02:00
Marek Marczykowski-Górecki
5d3204c730
vm: remove prepare_dvm parameter from methods and events
...
It was related to DispVM savefile preparation, but it is no longer
applicable in Qubes 4.0
2017-06-05 23:38:30 +02:00
Marek Marczykowski-Górecki
9bb5054e50
ext: BlockDevices extension
...
Handle block devices exposed by VMs
2017-06-05 23:33:58 +02:00
Marek Marczykowski-Górecki
402afa1925
pci: use device attach options for disabling strict reset
...
Since we have now per-device options, it's more logical to use it here,
instead of features with device identifier encoded into feature name.
2017-05-22 03:21:13 +02:00
Marek Marczykowski-Górecki
d4353c2a30
Enable linux-stubdom by default
...
Also, make it possible to set default on a template for its VMs.
QubesOS/qubes-issues#2185
2017-05-16 09:01:40 +02:00
HW42
f7094bec4f
add support for linux stubdoms
...
(cherry picked from commit e14ac1500a05162b3c07a5f44b4f0223f43fe90c)
2017-05-15 14:43:30 +02:00
Bahtiar `kalkin-` Gadimov
990cfd8ab9
Migrate DeviceCollection to new API
...
- Use PersistentCollection as _set()
- attach/detach expect DeviceAssignment as parater
- attached(persistent=True) is now persistent()
- attached() returns all attached devices
- assigned() returns all attached device assignments
`# modified: templates/libvirt/xen.xml
Signed-off-by: Bahtiar `kalkin-` Gadimov <bahtiar@gadimov.de>
2017-04-15 18:05:28 +02:00
Marek Marczykowski-Górecki
1c20aae98a
Fix libvirt xml template for HVM domains
...
QubesOS/qubes-issues#2185
2017-02-15 00:01:33 +01:00
Wojtek Porczyk
68ad60c1b3
Merge remote-tracking branch 'origin/master' into core3-devel
...
Conflicts:
core/qubes.py
doc/Makefile
doc/manpages/qvm-prefs.rst
doc/qvm-tools/qvm-add-appvm.rst
doc/qvm-tools/qvm-backup-restore.rst
doc/qvm-tools/qvm-backup.rst
doc/qvm-tools/qvm-block.rst
doc/qvm-tools/qvm-clone.rst
doc/qvm-tools/qvm-firewall.rst
doc/qvm-tools/qvm-ls.rst
doc/qvm-tools/qvm-pci.rst
doc/qvm-tools/qvm-run.rst
doc/qvm-tools/qvm-shutdown.rst
doc/qvm-tools/qvm-start.rst
doc/qvm-tools/qvm-template-commit.rst
qvm-tools/qvm-ls
qvm-tools/qvm-prefs
qvm-tools/qvm-remove
tests/__init__.py
vm-config/xen-vm-template.xml
2016-11-30 03:07:39 +01:00
Wojtek Porczyk
9dc37c1ee7
Add possibility to override libvirt config
...
This is the equivalent of "custom config" from R3.x.
fixes QubesOS/qubes-issues#1798
2016-10-04 11:31:31 +02:00
Marek Marczykowski-Górecki
93e88e0c22
qubes/ext/pci: implement pci-no-strict-reset/BDF feature
...
Instead of old per-VM flag 'pci_strictreset', now implement this as
per-device flag using features. To not fail on particular device
assignment set 'pci-no-strict-reset/DEVICE-BDF' to True. For
example 'pci-no-strict-reset/00:1b.0'.
QubesOS/qubes-issues#2257
2016-09-03 20:41:06 +02:00
Marek Marczykowski-Górecki
aa67a4512e
qubes/ext/pci: move PCI devices handling to an extension
...
Implement required event handlers according to documentation in
qubes.devices.
A modification of qubes.devices.DeviceInfo is needed to allow dynamic,
read-only properties.
QubesOS/qubes-issues#2257
2016-09-03 20:41:03 +02:00
Marek Marczykowski-Górecki
70d3f58024
qubes/storage: misc fixes for VM-exposed block devices handling
...
Add 'backenddomain' element when source (not target) domain is not dom0.
Fix XML elemenet name. Actually set volume.domain when listing
VM-exposed devices.
QubesOS/qubes-issues#2256
2016-09-03 20:41:02 +02:00
Marek Marczykowski-Górecki
d7a3c0d319
qubes: new devices API
...
Allow device plugin to list attached and available devices. Enforce
at API level every device being exposed by some domain.
This commit only changes devices API, but not update existing users
(pci) yet.
QubesOS/qubes-issues#2257
2016-09-03 20:40:39 +02:00
Marek Marczykowski-Górecki
ddf76d39bf
libvirt.xml: fix IP address declaration
...
There is no longer different one for DispVM savefile preparation - there
is no DispVM savefile anymore.
2016-08-09 05:14:10 +02:00
Marek Marczykowski-Górecki
ec7a84ea9d
minor: formatting
...
QubesOS/qubes-issues#
2016-08-09 05:14:10 +02:00
Bahtiar `kalkin-` Gadimov
d3f8fc96e4
Fix pci device attachment to QubesVM
2016-07-21 12:22:53 +02:00
Wojtek Porczyk
677a3e51f4
Move libvirt XML network device to jinja
2016-06-16 13:29:15 +02:00
Wojtek Porczyk
ba20254888
Rewrite PCI attaching/detaching from xl to libvirt
...
The only remaining part is querying vm-side BDF. That can't be done
in libvirt.
2016-06-16 13:29:15 +02:00
Wojtek Porczyk
129f55fe36
Handle host e820 memory map feature
...
This is port of marmarek's "core: add pci_e820_host property"
QubesOS/qubes-issues#2019
2016-06-13 23:20:39 +02:00
Wojtek Porczyk
8de987443c
Fix whitespace in libvirt template
2016-06-13 22:09:48 +02:00
Bahtiar `kalkin-` Gadimov
cc7dd625d9
Loop over QubesVM.block_devices in libvirt xml
2016-04-25 07:16:36 +02:00
Wojtek Porczyk
04cc2099f7
HVM part 2
2016-03-21 11:44:54 +01:00
Wojtek Porczyk
5eaf03c4a2
HVM part 1
2016-03-21 11:44:46 +01:00