core-admin/qubes/ext
Marek Marczykowski-Górecki 4dc8631010
Use maxmem=0 to disable qmemman, add more automation to it
Use maxmem=0 for disabling dynamic memory balance, instead of cryptic
service.meminfo-writer feature. Under the hood, meminfo-writer service
is also set based on maxmem property (directly in qubesdb, not
vm.features dict).
Having this as a property (not "feature"), allow to have sensible
handling of default value. Specifically, disable it automatically if
otherwise it would crash a VM. This is the case for:
 - domain with PCI devices (PoD is not supported by Xen then)
 - domain without balloon driver and/or meminfo-writer service

The check for the latter is heuristic (assume presence of 'qrexec' also
can indicate balloon driver support), but it is true for currently
supported systems.

This also allows more reliable control of libvirt config: do not set
memory != maxmem, unless qmemman is enabled.

memory != maxmem only makes sense if qmemman for given domain is
enabled.  Besides wasting some domain resources for extra page tables
etc, for HVM domains this is harmful, because maxmem-memory difference
is made of Popupate-on-Demand pool, which - when depleted - will kill
the domain. This means domain without balloon driver will die as soon
as will try to use more than initial memory - but without balloon driver
it sees maxmem memory and doesn't know about the lower limit.

Fixes QubesOS/qubes-issues#4135
2018-11-21 02:13:25 +01:00
..
__init__.py Fix issues found by pylint 2.0 2018-07-15 23:51:15 +02:00
admin.py Change license to LGPL v2.1+ 2017-10-12 00:11:50 +02:00
block.py Change license to LGPL v2.1+ 2017-10-12 00:11:50 +02:00
core_features.py Update windows-related feature requests 2018-07-16 22:02:58 +02:00
gui.py Change license to LGPL v2.1+ 2017-10-12 00:11:50 +02:00
pci.py ext/pci: fix error message about missing device 2018-11-01 22:28:50 +01:00
qubesmanager.py Change license to LGPL v2.1+ 2017-10-12 00:11:50 +02:00
r3compatibility.py Do not generate R3 compat firewall rules if R4 format is supported 2018-10-15 06:05:05 +02:00
services.py Use maxmem=0 to disable qmemman, add more automation to it 2018-11-21 02:13:25 +01:00
windows.py ext/services: allow for os=Linux feature request from VM 2018-10-27 16:44:53 +02:00