Commit Graph
4907 Commits
Author SHA1 Message Date
Daniel P. Berrangé 2d65cdeba8 docs: fix broken UUID example
The UUID had only 11 characters in the last component, instead of the
required 12. Add the missing trailing '2' which is present in all the
other matching example UUIDs.

Reviewed-by: Arun Menon <armenon@redhat.com>
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2026-01-06 10:58:23 +00:00
Michal Privoznik 72e4efbfa6 network: Introduce port for DNS forwarder
In the <dns/> section of network configuration users can set up
forwarding of DNS requests to custom DNS servers. These are
specified using 'addr' attribute. But configuring port wasn't
possible, until now. New 'port' attribute is introduced, which
allows overriding the default DNS port for given address.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Laine Stump <laine@redhat.com>
2025-12-19 09:47:29 +01:00
Roman Bogorodskiy 437c135671 docs: drvbhyve: document SLIRP networking
Signed-off-by: Roman Bogorodskiy <bogorodskiy@gmail.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Laine Stump <laine@redhat.com>
2025-12-16 19:26:47 +01:00
Jiri Denemark 54f3472d72 formatdomaincaps: Fix typo in Hyper-V Enlightenments section
Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
2025-11-28 14:56:29 +01:00
Roman Bogorodskiy 3a2127bef1 docs: bhyve: document VNC's wait attribute
Document the new VNC's 'wait' attribute in formatdomain.rst and
drvbhyve.rst.

Signed-off-by: Roman Bogorodskiy <bogorodskiy@gmail.com>
Reviewed-by: Peter Krempa <pkrempa@redhat.com>
2025-11-24 18:01:38 +01:00
Peter Krempa c1576ad519 Add support for 'dpofua' setting for SCSI disks
Add the 'dpofua' setting in the XML and for the qemu driver.

DPO - Disable Page Out and FUA - Force Unit Access are two features
implemented by SCSI disks (either both together or neither of them)
which influence how caching is handled. QEMU provides a good default
but in certain specific occasions changing the default may have
performance benefits.

Add support for setting them via the XML.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Pavel Hrdina <phrdina@redhat.com>
2025-11-24 16:40:32 +01:00
Peter Krempa eadbb34a8f docs: page.xsl: Convert repository edit URI into a parameter
Allow other sub-projects using the XSL template without modification.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
2025-11-24 16:40:24 +01:00
Peter Krempa 361106506b docs: site.xsl: Use separate 'asset_href_base' and 'link_href_base'
While our main page uses same argument for both to ensure that the
linking works also when browsed locally sub-projects such as
libvirt-wiki and libvirt-security-notice will want to pull 'site.xsl' as
is into their build assets. Pass both arguments via the build system so
that we don't have to carry distinct instances.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
2025-11-24 16:40:24 +01:00
Peter Krempa 071d29b726 docs: css: Split out any main-page CSS to local.css
Our other sub-projects such as the libvirt-wiki and soon also the
libvirt-security-notices will use the same CSS via asset import script.

Move any specifics into 'local.css' which will be defined by the
sub-projects so that 'main.css' can be imported directly.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
2025-11-24 16:40:24 +01:00
Peter Krempa 5ca7270c08 docs: index: Link to security notices from home page
Our main page mentions security notices which we host at
https://security.libvirt.org but links to them only from the security
process page. Since we already have the wording there, turn it directly
into a link.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
2025-11-24 16:40:24 +01:00
Peter Krempa 895a973c49 kbase: Add note about preserving VM on shutdown to backup article
Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
2025-11-24 16:40:24 +01:00
Peter Krempa 56432ed065 lib: Introduce VIR_DOMAIN_BACKUP_BEGIN_PRESERVE_SHUTDOWN_DOMAIN flag
This flag will instruct the hypervisor driver to keep the VM around
while the backup is running if the guest OS decides to shut down, so
that the backup can be finished.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
2025-11-24 16:40:24 +01:00
Daniel P. Berrangé dac28c6185 docs: describe support for multiple certs & PQC config
This describes the new index based certificate naming scheme, and
how to create & deploy certificates for post-quantum cryptography.

Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2025-11-24 15:05:09 +00:00
Nux 7d5a1a5384 Edit apps.rst to add Apache CloudStack in the IaaS section.
Add Apache CloudStack to the docs/apps.rst file, IaaS section.

Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Signed-off-by: Nux <nux@li.nux.ro>
2025-11-21 12:58:25 +00:00
Nathan Chen 4d6419b286 qemu: Implement pluggable-device smmuv3
Introduce support for "pciBus" driver attribute for
"smmuv3" IOMMU model. The "pciBus" attribute indicates
the index of the controller that a smmuv3 IOMMU device
is attached to, and differentiates the device-pluggable
arm-smmuv3 model from the virt-machine-associated smmuv3
model.

Signed-off-by: Nathan Chen <nathanc@nvidia.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
2025-11-20 22:56:39 +01:00
Massimiliano Minella 4ae5351a50 docs: domain: add watchdog notification support
Since v0.8.0 a watchdog notification is available under event ID
VIR_DOMAIN_EVENT_ID_WATCHDOG, update the documentation to remove the
previous limitation.

Signed-off-by: Massimiliano Minella <massimiliano.minella@se.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
Signed-off-by: Ján Tomko <jtomko@redhat.com>
2025-11-19 11:32:46 +01:00
Roman Bogorodskiy f81e5158d4 docs: drvbhyve: add guest-specific nodes section
Add a section with guest-specific notes. Start with LPC slot address
information for the Windows guests.

Signed-off-by: Roman Bogorodskiy <bogorodskiy@gmail.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
2025-11-10 18:23:04 +01:00
Roman Bogorodskiy b2c7dba3eb docs: drvbhyve: improve the manpage link
When linking to the bhyve(8) manual page, do not set manpath
to a specific FreeBSD version so the latest actual version
is displayed.

Signed-off-by: Roman Bogorodskiy <bogorodskiy@gmail.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
2025-11-10 18:23:01 +01:00
Roman Bogorodskiy f4751e23d3 docs: drvbhyve: document device passthrough
Signed-off-by: Roman Bogorodskiy <bogorodskiy@gmail.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
2025-11-10 18:22:50 +01:00
Peter Krempa 19fc614d53 conf: Add configuration option for timed disk statistics collection
QEMU supports collection of disk statistics in configurable time
windows. Add support for enabling this feature to the conf parser.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
2025-11-05 14:27:57 +01:00
Peter Krempa 166be0d48c Expose qemu timed block statistics via bulk stats API
The statistics show various disk access timing parameters collected in
configurable interval which can be useful for performance
investigations.

Note that the statistic collection needs to be enabled explicitly for
the statistics to be collected and displayed.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
2025-11-05 14:27:57 +01:00
Peter Krempa d1eafbe88b Expose qemu storage request limits via bulk stats API
Management applications can use the detected limits to cross reference
with configuration within the VM to ensure optimal performance.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
2025-11-05 14:27:57 +01:00
Roman Bogorodskiy 63e989cc26 docs: drvbhyve: document NVMe device
Signed-off-by: Roman Bogorodskiy <bogorodskiy@gmail.com>
Reviewed-by: Jiri Denemark <jdenemar@redhat.com>
2025-10-31 13:38:50 +01:00
Michal Privoznik 86bba8f1d9 drvch: Document config file locations
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Jiri Denemark <jdenemar@redhat.com>
2025-10-31 13:14:16 +01:00
Michal Privoznik 4c5021bc92 drvch: Demote example section to a subsection
In our drvch.rst there's a section with example XML. Demote it to
a subsection ('-') since the whole document starts with section
('=') and this paragraph is really just a child of the root.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Jiri Denemark <jdenemar@redhat.com>
2025-10-31 13:14:08 +01:00
Michal Privoznik a96a4b04e1 docs: Document supported URIs for CH driver
Our docs suggest that only session mode is supported for CH
drvier. Well, that's clearly not case. Document the system URI
and refer to other (remote) supported transport modes (yeah, that
works too).

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Jiri Denemark <jdenemar@redhat.com>
2025-10-31 13:14:02 +01:00
Friedrich Oslage 66a47f8049 qemu: Update hyperv spinlock retries count default
Update default to 0xFFFFFFFF ("never notify" in qemu) and make retries
attribute optional.

Signed-off-by: Friedrich Oslage <friedrich@oslage.de>
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
2025-10-22 15:17:44 +02:00
Peter Krempa 1ebee849db docs: snapshot: Add a note that blockjobs ought to be avoided with 'manual' snapshots
Using a blockjob will reactivate the block nodes in qemu and thus e.g.
qcow2 metadata such as bitmaps may become marked as dirty. Users of
'manual' snapshots ought to avoid those.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
2025-10-21 15:32:40 +02:00
Michal Privoznik c181c7dd13 conf: Introduce hyperv host-model mode
So far we have two modes for hyperv features:

1) custom, where users have to enable features explicitly, and
2) passthrough, where hypervisor enables features automagically.

Problem with 'custom' mode is that some features are not plain
on/off switches but expect int/string value. Until very recently,
these were not reported in domcaps. And even if they were it's a
bit cumbersome.

Problem with 'passthrough' mode is that users don't get to see
the expanded list of enlightenments enabled.

Therefore, mimic what we're already doing with CPUs: have
'host-model' which gets expanded at domain startup and is fixed
throughout domain's run.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
2025-10-15 10:04:12 +02:00
Michal Privoznik 57d2f4a0f0 conf: Report default hyperv values in domain capabilities
So far the set of available Hyper-V enlightenments are reported
in domain capabilities. Well, some enlightenments are more than
just simple on/off switch. For instance, the 'spinlocks'
enlightenment expects a number, or 'vendor_id' expects a string.

All of these have some default values (at least in QEMU) and are
used when the passthrough mode is set.

Allow querying these defaults in domain capabilities XML.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
2025-10-15 10:04:11 +02:00
Michal Privoznik 4cc4f0b04a docs: Drop remark on now unsupported version of QEMU
In formatdomaincaps.rst under section documenting hyperv features
there's a paragraph describing behaviour with QEMU older than
6.1.0. Well, as of v11.2.0-rc1~216 the minimum required version
is 6.2.0 rendering the paragraph needless. Drop it.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
2025-10-15 10:04:11 +02:00
Sebastian Jensen 970fead068 docs/apps: Remove "Cuckoo Sandbox"
Link pointed to a squatted domain, and the upstream repository on
GitHub has been archived since Apr 27, 2021:

https://github.com/cuckoosandbox/cuckoo
Signed-off-by: Ján Tomko <jtomko@redhat.com>
2025-09-23 12:45:56 +02:00
Enrique Llorente via Devel cca246e0cb qemu: support setting guest hostname/fqdn using DHCP on passt-backed interfaces
This commit introduces support for configuring hostnames in virtual
machines (VMs) using DHCP via an interface backed by the passt
transport. This is done with the new 'hostname' and 'fqdn' (Fully
Qualified Domain Name) attributes in the <backend> subelement of
<interface>. The values set in these attributes are added to the passt
commandline for the interface (with the --hostname and --fqdn
options), and passt will then send the settings to the guest by adding
options to the DHCP response when the interface is started - for IPv4,
hostname will be sent in option 12, or the FQDN will be sent in option
81, and for IPv6 the FQDN will be sent using option 39.

This will enable a management application to easily configure guest
hostnames without intervening in the guest's disk image (as long as
the guest uses DHCP for it's network interface configuration).

Here is an example of setting the hostname and fqdn for a guest (in
practice, you would only use one or the other, since according to the
RFC if option 81 is sent to the guest, option 12 should not be sent).

   <interface type='vhostuser'>
     <backend type='passt' hostname='bob' fqdn='bob.example.com'/>
     ...

Resolves: https://issues.redhat.com/browse/RHEL-79806
Signed-off-by: Enrique Llorente <ellorent@redhat.com>
Reviewed-by: Laine Stump <laine@redhat.com>
2025-09-10 13:12:41 -04:00
Andrea Righi d983a6bf3b docs: Document acpi nodeset in hostdev
Add documentation for the new <acpi nodeset="..."> element in hostdev,
which allows associating devices with ACPI Generic Initiator objects in
QEMU.

A typical use case is NVIDIA Multi-Instance GPU (MIG), where a physical
GPU is partitioned into multiple isolated instances, each tied to one or
more virtual NUMA nodes. The documentation includes an example showing
how to configure <numa> cells together with a MIG device.

Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Signed-off-by: Andrea Righi <arighi@nvidia.com>
2025-09-08 19:12:35 +01:00
Hector Cao 62a40b89b7 docs : add doc on cpu model and features
Add documentation on the way libvirt displays the Host CPU
model and capabilities (features). There is an implicit
expectation from users to get the CPU model name matching the
CPU model they are running on, however, this does not happen
most of the time. As a consequence, having a documentation
is useful both for users to align their expectation and for
us to point to a place where the situation is clearly explained.

Signed-off-by: Hector Cao <hector.cao@canonical.com>
Reviewed-by: Jiri Denemark <jdenemar@redhat.com>
2025-09-02 15:11:05 +02:00
Peter Krempa 66af43a52d kbase: live_full_disk_backup: Improve the document
Changes:
 - fixed emphasis on the API name and some operations
 - fixed the output example of some commands
 - added warning to avoid the snapshot+copy+commit approach as it's a
   bit dangerous
 - added --no-metadata to avoid creating snapshot XML

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
2025-08-28 08:42:05 +02:00
Peter Krempa b255d00624 docs: formatsecret: Convert inline emphasis of a warning to the '.. warning:' role
This is an example how to hilight very important information in the
docs.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
2025-08-28 08:42:05 +02:00
Peter Krempa e627b91a41 css: Add style for '.. note:' and '.. warning:' rST roles
One of our kbase docs already uses '.. note:' and we could use e.g.
'.. warning:' to replace some of emphasiszed paragraphs to make them
more prominent.

Introduce style for the generated HTML to add some hilight for them.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
2025-08-28 08:42:05 +02:00
Peter Krempa 84f8b7f7d9 kbase: live_full_disk_backup: Fix use of '.. note' directive
The note was misindented thus breaking the numbered list around.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
2025-08-28 08:42:05 +02:00
Roman Bogorodskiy d06f8f096a docs: add network driver documentation
Currently documents only FreeBSD/pf specific configuration.

Signed-off-by: Roman Bogorodskiy <bogorodskiy@gmail.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
2025-08-23 09:59:58 +02:00
Sebastian Mitterle 4e43cf0a4f docs/tlscerts: mention dropped 'encryption_key'
Older libvirt versions still only work if 'encryption_key' is enabled
in the server and client certificates. Add a note.

Suggested-by: Daniel P. Berrangé <berrange@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Signed-off-by: Sebastian Mitterle <smitterl@redhat.com>
2025-08-20 12:43:53 +01:00
Sebastian Mitterle aa7e4f5360 docs/tlscerts: document need for socket activation
Mention that the tls socket needs to be started and the libvirtd
or virtproxyd service might have to be started.

If this is not done the user might run into connection issues and
it seems this is not mentioned elsewhere in the docs.

Suggested-by: Daniel P. Berrangé <berrange@redhat.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Signed-off-by: Sebastian Mitterle <smitterl@redhat.com>
2025-08-20 12:43:21 +01:00
Mark Cave-Ayland 2a0cd28095 conf: add support for 'edid' attribute to video model
Add the ability to enable/disable exposing the EDID information to the guest.
The edid attribute can specified in the domain XML as below:

    <video>
        <model type='virtio' edid='off'/>
    </video>

If the edid attribute is unspecified, it is not generated so that the
virtualisation platform will continue to use its default.

The edid attribute is only valid for the vga, boch and virtio display models
and is currently only implemented for the QEMU driver.

Signed-off-by: Mark Cave-Ayland <mark.caveayland@nutanix.com>
Reviewed-by: Peter Krempa <pkrempa@redhat.com>
2025-08-14 12:47:05 +02:00
Roman Bogorodskiy e4588ddac7 docs: storage: fix the "since" tag
Trivial :since: tag fix in the ZFS section.

Signed-off-by: Roman Bogorodskiy <bogorodskiy@gmail.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
2025-08-13 15:41:05 +02:00
Pavel Hrdina 1686db62ed docs: hacking: Define policy forbidding use of AI code generators
This policy is a copy of what QEMU project is using [1] as there is no
reason to use different policy, only modification is changing the
project name and link to DCO.

[1] <https://www.qemu.org/docs/master/devel/code-provenance.html#use-of-ai-content-generators>

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
Reviewed-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Jim Fehlig <jfehlig@suse.com>
2025-08-08 13:43:52 +02:00
Daniel P. Berrangé b0cc1c5243 docs: update <hwuuid> docs to refer to version 11.7.0
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
2025-08-01 18:30:10 +01:00
Mark Cave-Ayland 5d2235ff45 conf: introduce hardware UUID (hwuuid) element
The hardware UUID (hwuuid) element provides a mechanism to supply an external
UUID to the guest, as opposed to the libvirt domain UUID. This is to allow
for the scenario whereby a domain can be stopped, cloned and then started as
a new domain without altering the guest-visible UUID.

Add the element, documentation and core code for the hwuuid feature along
with an implementation for the QEMU driver.

Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Signed-off-by: Mark Cave-Ayland <mark.caveayland@nutanix.com>
2025-08-01 18:26:27 +01:00
Collin Walling e03995e63e docs: domain: document deprecated_features attribute
Provide documentation for the deprecated_features XML attribute.
Available since 11.0.0, and supported for S390.

Signed-off-by: Collin Walling <walling@linux.ibm.com>
Reviewed-by: Boris Fiuczynski <fiuczy@linux.ibm.com>
Acked-by: Thomas Huth <thuth@redhat.com>
2025-07-25 15:36:21 +02:00
Zhenzhong Duan 5e5528ef14 docs: domain: Add documentation for Intel TDX guest
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
Signed-off-by: Zhenzhong Duan <zhenzhong.duan@intel.com>
2025-07-25 11:36:11 +01:00
Zhenzhong Duan f873974883 conf: Expose TDX feature in domain capabilities
Extend qemu TDX capability to domain capabilities.

Signed-off-by: Chenyi Qiang <chenyi.qiang@intel.com>
Signed-off-by: Zhenzhong Duan <zhenzhong.duan@intel.com>
Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>
2025-07-25 11:27:55 +01:00