[PATCH] qemu: Fix crash in qemuBuildDeviceCommandlineHandleOverrides
by Peter Krempa
'STREQ' is used to compare the override alias with the device alias.
While the parser ensures that the override alias is non-NULL, the device
alias may be NULL and STREQ doesn't handle that.
Fixes: 38ab5c9ead5
Resolves: https://gitlab.com/libvirt/libvirt/-/issues/321
Signed-off-by: Peter Krempa <pkrempa(a)redhat.com>
---
src/qemu/qemu_command.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c
index 52e4ef03cd..b1be77743c 100644
--- a/src/qemu/qemu_command.c
+++ b/src/qemu/qemu_command.c
@@ -240,6 +240,10 @@ qemuBuildDeviceCommandlineHandleOverrides(virJSONValue *props,
const char *alias = virJSONValueObjectGetString(props, "id");
size_t i;
+ /* If the device doesn't have an alias we can't override it's props */
+ if (!alias)
+ return;
+
for (i = 0; i < nsdef->ndeviceOverride; i++) {
qemuDomainXmlNsDeviceOverride *dev = nsdef->deviceOverride + i;
size_t j;
--
2.36.1
2 years, 5 months
[libvirt][PATCH RESEND v12 0/6] Support query and use SGX
by Haibin Huang
This patch series provides support for enabling Intel's Software Guard Extensions (SGX) feature in guest VM.
Giving the SGX support in QEMU had been merged. Intel SGX is a set of instructions that increases the security of application code and data, giving them more protection from disclosure or modification.
Developers can partition sensitive information into enclaves, which are areas of execution in memory with more security protection.
The typical flow looks below at very high level:
1. Calls virConnectGetDomainCapabilities API to domain capabilities that includes the following SGX information.
<feature>
...
<sgx supported='yes'>
<epc_size unit='KiB'>N</epc_size>
</sgx>
...
</feature>
2. User requests to start a guest calling virCreateXML() with SGX requirement. It does not support NUMA yet, since latest QEMU 6.2 release does not support NUMA.
It should contain
<devices>
...
<memory model='sgx-epc'>
<target>
<size unit='KiB'>N</size>
</target>
</memory>
...
</devices>
Please note that SGX NUMA support will be implemented in future patches.
Haibin Huang (4):
Define SGX capabilities structs
Get SGX capabilities form QMP
Convert QMP capabilities to domain capabilities
conf: expose SGX feature in domain capabilities
Lin Yang (2):
conf: Introduce SGX EPC element into device memory xml
qemu: Add command-line to generate SGX EPC memory backend
docs/formatdomain.rst | 9 +-
docs/formatdomaincaps.rst | 26 ++++
src/conf/domain_capabilities.c | 33 ++++
src/conf/domain_capabilities.h | 13 ++
src/conf/domain_conf.c | 6 +
src/conf/domain_conf.h | 1 +
src/conf/domain_validate.c | 16 ++
src/conf/schemas/domaincaps.rng | 22 ++-
src/conf/schemas/domaincommon.rng | 1 +
src/libvirt_private.syms | 1 +
src/qemu/qemu_alias.c | 6 +-
src/qemu/qemu_capabilities.c | 145 ++++++++++++++++++
src/qemu/qemu_capabilities.h | 4 +
src/qemu/qemu_capspriv.h | 4 +
src/qemu/qemu_command.c | 54 ++++++-
src/qemu/qemu_domain.c | 38 +++--
src/qemu/qemu_domain_address.c | 6 +
src/qemu/qemu_driver.c | 1 +
src/qemu/qemu_monitor.c | 10 ++
src/qemu/qemu_monitor.h | 3 +
src/qemu/qemu_monitor_json.c | 104 ++++++++++++-
src/qemu/qemu_monitor_json.h | 9 ++
src/qemu/qemu_process.c | 2 +
src/qemu/qemu_validate.c | 8 +
src/security/security_apparmor.c | 1 +
src/security/security_dac.c | 2 +
src/security/security_selinux.c | 2 +
tests/domaincapsdata/bhyve_basic.x86_64.xml | 1 +
tests/domaincapsdata/bhyve_fbuf.x86_64.xml | 1 +
tests/domaincapsdata/bhyve_uefi.x86_64.xml | 1 +
tests/domaincapsdata/empty.xml | 1 +
tests/domaincapsdata/libxl-xenfv.xml | 1 +
tests/domaincapsdata/libxl-xenpv.xml | 1 +
.../domaincapsdata/qemu_2.11.0-q35.x86_64.xml | 1 +
.../domaincapsdata/qemu_2.11.0-tcg.x86_64.xml | 1 +
tests/domaincapsdata/qemu_2.11.0.s390x.xml | 1 +
tests/domaincapsdata/qemu_2.11.0.x86_64.xml | 1 +
.../domaincapsdata/qemu_2.12.0-q35.x86_64.xml | 1 +
.../domaincapsdata/qemu_2.12.0-tcg.x86_64.xml | 1 +
.../qemu_2.12.0-virt.aarch64.xml | 1 +
tests/domaincapsdata/qemu_2.12.0.aarch64.xml | 1 +
tests/domaincapsdata/qemu_2.12.0.ppc64.xml | 1 +
tests/domaincapsdata/qemu_2.12.0.s390x.xml | 1 +
tests/domaincapsdata/qemu_2.12.0.x86_64.xml | 1 +
.../domaincapsdata/qemu_3.0.0-q35.x86_64.xml | 1 +
.../domaincapsdata/qemu_3.0.0-tcg.x86_64.xml | 1 +
tests/domaincapsdata/qemu_3.0.0.ppc64.xml | 1 +
tests/domaincapsdata/qemu_3.0.0.s390x.xml | 1 +
tests/domaincapsdata/qemu_3.0.0.x86_64.xml | 1 +
.../domaincapsdata/qemu_3.1.0-q35.x86_64.xml | 1 +
.../domaincapsdata/qemu_3.1.0-tcg.x86_64.xml | 1 +
tests/domaincapsdata/qemu_3.1.0.ppc64.xml | 1 +
tests/domaincapsdata/qemu_3.1.0.x86_64.xml | 1 +
.../domaincapsdata/qemu_4.0.0-q35.x86_64.xml | 1 +
.../domaincapsdata/qemu_4.0.0-tcg.x86_64.xml | 1 +
.../qemu_4.0.0-virt.aarch64.xml | 1 +
tests/domaincapsdata/qemu_4.0.0.aarch64.xml | 1 +
tests/domaincapsdata/qemu_4.0.0.ppc64.xml | 1 +
tests/domaincapsdata/qemu_4.0.0.s390x.xml | 1 +
tests/domaincapsdata/qemu_4.0.0.x86_64.xml | 1 +
.../domaincapsdata/qemu_4.1.0-q35.x86_64.xml | 1 +
.../domaincapsdata/qemu_4.1.0-tcg.x86_64.xml | 1 +
tests/domaincapsdata/qemu_4.1.0.x86_64.xml | 1 +
.../domaincapsdata/qemu_4.2.0-q35.x86_64.xml | 1 +
.../domaincapsdata/qemu_4.2.0-tcg.x86_64.xml | 1 +
.../qemu_4.2.0-virt.aarch64.xml | 1 +
tests/domaincapsdata/qemu_4.2.0.aarch64.xml | 1 +
tests/domaincapsdata/qemu_4.2.0.ppc64.xml | 1 +
tests/domaincapsdata/qemu_4.2.0.s390x.xml | 1 +
tests/domaincapsdata/qemu_4.2.0.x86_64.xml | 1 +
.../domaincapsdata/qemu_5.0.0-q35.x86_64.xml | 1 +
.../domaincapsdata/qemu_5.0.0-tcg.x86_64.xml | 1 +
.../qemu_5.0.0-virt.aarch64.xml | 1 +
tests/domaincapsdata/qemu_5.0.0.aarch64.xml | 1 +
tests/domaincapsdata/qemu_5.0.0.ppc64.xml | 1 +
tests/domaincapsdata/qemu_5.0.0.x86_64.xml | 1 +
.../domaincapsdata/qemu_5.1.0-q35.x86_64.xml | 1 +
.../domaincapsdata/qemu_5.1.0-tcg.x86_64.xml | 1 +
tests/domaincapsdata/qemu_5.1.0.sparc.xml | 1 +
tests/domaincapsdata/qemu_5.1.0.x86_64.xml | 1 +
.../domaincapsdata/qemu_5.2.0-q35.x86_64.xml | 1 +
.../domaincapsdata/qemu_5.2.0-tcg.x86_64.xml | 1 +
.../qemu_5.2.0-virt.aarch64.xml | 1 +
tests/domaincapsdata/qemu_5.2.0.aarch64.xml | 1 +
tests/domaincapsdata/qemu_5.2.0.ppc64.xml | 1 +
tests/domaincapsdata/qemu_5.2.0.s390x.xml | 1 +
tests/domaincapsdata/qemu_5.2.0.x86_64.xml | 1 +
.../domaincapsdata/qemu_6.0.0-q35.x86_64.xml | 1 +
.../domaincapsdata/qemu_6.0.0-tcg.x86_64.xml | 1 +
.../qemu_6.0.0-virt.aarch64.xml | 1 +
tests/domaincapsdata/qemu_6.0.0.aarch64.xml | 1 +
tests/domaincapsdata/qemu_6.0.0.s390x.xml | 1 +
tests/domaincapsdata/qemu_6.0.0.x86_64.xml | 1 +
.../domaincapsdata/qemu_6.1.0-q35.x86_64.xml | 1 +
.../domaincapsdata/qemu_6.1.0-tcg.x86_64.xml | 1 +
tests/domaincapsdata/qemu_6.1.0.x86_64.xml | 1 +
.../domaincapsdata/qemu_6.2.0-q35.x86_64.xml | 4 +
.../domaincapsdata/qemu_6.2.0-tcg.x86_64.xml | 4 +
.../qemu_6.2.0-virt.aarch64.xml | 1 +
tests/domaincapsdata/qemu_6.2.0.aarch64.xml | 1 +
tests/domaincapsdata/qemu_6.2.0.ppc64.xml | 1 +
tests/domaincapsdata/qemu_6.2.0.x86_64.xml | 4 +
.../domaincapsdata/qemu_7.0.0-q35.x86_64.xml | 4 +
.../domaincapsdata/qemu_7.0.0-tcg.x86_64.xml | 4 +
.../qemu_7.0.0-virt.aarch64.xml | 1 +
tests/domaincapsdata/qemu_7.0.0.aarch64.xml | 1 +
tests/domaincapsdata/qemu_7.0.0.ppc64.xml | 1 +
tests/domaincapsdata/qemu_7.0.0.x86_64.xml | 4 +
.../domaincapsdata/qemu_7.1.0-q35.x86_64.xml | 1 +
.../domaincapsdata/qemu_7.1.0-tcg.x86_64.xml | 1 +
tests/domaincapsdata/qemu_7.1.0.x86_64.xml | 1 +
.../caps_6.2.0.x86_64.replies | 22 ++-
.../caps_6.2.0.x86_64.xml | 5 +
.../caps_7.0.0.x86_64.replies | 22 ++-
.../caps_7.0.0.x86_64.xml | 5 +
.../caps_7.1.0.x86_64.replies | 21 ++-
.../sgx-epc.x86_64-6.2.0.args | 37 +++++
tests/qemuxml2argvdata/sgx-epc.xml | 36 +++++
tests/qemuxml2argvtest.c | 2 +
.../sgx-epc.x86_64-6.2.0.xml | 52 +++++++
tests/qemuxml2xmltest.c | 2 +
121 files changed, 793 insertions(+), 40 deletions(-)
create mode 100644 tests/qemuxml2argvdata/sgx-epc.x86_64-6.2.0.args
create mode 100644 tests/qemuxml2argvdata/sgx-epc.xml
create mode 100644 tests/qemuxml2xmloutdata/sgx-epc.x86_64-6.2.0.xml
--
2.17.1
2 years, 5 months
[PULL 00/11] hw/nvme updates
by Klaus Jensen
From: Klaus Jensen <k.jensen(a)samsung.com>
Hi Peter,
The following changes since commit 70e975203f366f2f30daaeb714bb852562b7b72f:
Merge tag 'pull-request-2022-06-03' of https://gitlab.com/thuth/qemu into staging (2022-06-03 06:43:38 -0700)
are available in the Git repository at:
git://git.infradead.org/qemu-nvme.git tags/nvme-next-pull-request
for you to fetch changes up to d7fe639cabf778903f6cab23ff58c905c71375ec:
hw/nvme: add new command abort case (2022-06-03 21:48:24 +0200)
----------------------------------------------------------------
hw/nvme updates
----------------------------------------------------------------
Dmitry Tikhov (4):
hw/nvme: fix narrowing conversion
hw/nvme: add missing return statement
hw/nvme: fix copy cmd for pi enabled namespaces
hw/nvme: add new command abort case
Klaus Jensen (7):
hw/nvme: fix smart aen
hw/nvme: enforce common serial per subsystem
hw/nvme: do not auto-generate eui64
hw/nvme: do not auto-generate uuid
hw/nvme: do not report null uuid
hw/nvme: bump firmware revision
hw/nvme: deprecate the use-intel-id compatibility parameter
docs/about/deprecated.rst | 15 +++++++++++++++
hw/core/machine.c | 1 +
hw/nvme/ctrl.c | 26 ++++++++++++++------------
hw/nvme/dif.c | 5 +++++
hw/nvme/ns.c | 9 +++++----
hw/nvme/nvme.h | 1 +
hw/nvme/subsys.c | 7 +++++++
7 files changed, 48 insertions(+), 16 deletions(-)
--
2.36.1
2 years, 5 months
[PATCH] qemu: fd: Fix monitor usage of qemuFDPassDirectGetPath
by Peter Krempa
We need to use the 'name' variable and just overwrite it with the FD
number when FDs are passed on the monitor. Otherwise we will read NULL
path if the FD is accessed before being passed on the monitor. The idea
of this helper is to simplify the monitor code so it would be
counterproductive to have other behaviour.
Fixes the following symptom:
$ virsh attach-interface cd network default --model virtio
error: Failed to attach interface
error: internal error: unable to execute QEMU command 'netdev_add': File descriptor named '(null)' has not been found
Fixes: bca9047906fd73fd30f275dd45b64998fbbcf6de
Resolves: https://gitlab.com/libvirt/libvirt/-/issues/318
Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=2092856
Signed-off-by: Peter Krempa <pkrempa(a)redhat.com>
---
src/qemu/qemu_fd.c | 8 +++-----
1 file changed, 3 insertions(+), 5 deletions(-)
diff --git a/src/qemu/qemu_fd.c b/src/qemu/qemu_fd.c
index 6311161657..51a8133fde 100644
--- a/src/qemu/qemu_fd.c
+++ b/src/qemu/qemu_fd.c
@@ -235,7 +235,6 @@ qemuFDPassGetPath(qemuFDPass *fdpass)
struct _qemuFDPassDirect {
int fd;
- char *path;
char *name;
bool passed; /* passed to qemu via monitor */
@@ -251,7 +250,6 @@ qemuFDPassDirectFree(qemuFDPassDirect *fdpass)
VIR_FORCE_CLOSE(fdpass->fd);
g_free(fdpass->name);
- g_free(fdpass->path);
g_free(fdpass);
}
@@ -295,7 +293,8 @@ qemuFDPassDirectTransferCommand(qemuFDPassDirect *fdpass,
return;
virCommandPassFD(cmd, fdpass->fd, VIR_COMMAND_PASS_FD_CLOSE_PARENT);
- fdpass->path = g_strdup_printf("%d", fdpass->fd);
+ g_free(fdpass->name);
+ fdpass->name = g_strdup_printf("%d", fdpass->fd);
fdpass->fd = -1;
}
@@ -318,7 +317,6 @@ qemuFDPassDirectTransferMonitor(qemuFDPassDirect *fdpass,
if (qemuMonitorSendFileHandle(mon, fdpass->name, fdpass->fd) < 0)
return -1;
- fdpass->path = g_strdup(fdpass->name);
VIR_FORCE_CLOSE(fdpass->fd);
fdpass->passed = true;
@@ -358,5 +356,5 @@ qemuFDPassDirectGetPath(qemuFDPassDirect *fdpass)
if (!fdpass)
return NULL;
- return fdpass->path;
+ return fdpass->name;
}
--
2.35.3
2 years, 5 months
[libvirt PATCH] ci: gitlab: Expire artifacts after 1 day
by Erik Skultety
With GitLab cutting down on shared resource usage it's very likely that
following our measure to decrease the number of CI minutes we'll also
need to decrease our usage of storage. Start by decreasing artifact
expiration time to 1 day for jobs that are currently exceeding it (by a
lot -> 30 days). At the same time, define expiration on the integration
jobs' artifacts where there currently isn't one defined.
Although 1 day doesn't seem to be enough of a time period, given the
cadency of libvirt pipeline executions it should suffice giving
everyone/jobs enough time to download artifacts if needed.
Signed-off-by: Erik Skultety <eskultet(a)redhat.com>
---
.gitlab-ci.yml | 4 ++--
ci/integration-template.yml | 1 +
2 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 6a8b89729f..1b39047862 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -74,7 +74,7 @@ website:
expose_as: 'Website'
name: 'website'
when: on_success
- expire_in: 30 days
+ expire_in: 1 day
paths:
- website
@@ -115,7 +115,7 @@ potfile:
expose_as: 'Potfile'
name: 'potfile'
when: on_success
- expire_in: 30 days
+ expire_in: 1 day
paths:
- libvirt.pot
diff --git a/ci/integration-template.yml b/ci/integration-template.yml
index e2ccebd1f6..bd634a971b 100644
--- a/ci/integration-template.yml
+++ b/ci/integration-template.yml
@@ -80,6 +80,7 @@
SCRATCH_DIR: "/tmp/scratch"
artifacts:
name: logs
+ expire_in: 1 day
paths:
- logs
when: on_failure
--
2.36.1
2 years, 5 months
[PATCH] qemu: Restore label to temp file in qemuDomainScreenshot()
by Michal Privoznik
Obtaining a screenshot via virDomainScreenshot() works like this:
1) we create a temp file, label it, then
2) tell QEMU to store the screenshot into it, and
3) finally, open the file for transfer via virStream
Since the file is just temporary and even explicitly unlinked at
the end, no seclabel restoration is done. This makes perfect
sense for security models which attach a label to file itself
(DAC, SELinux) because the label is gone with the file. However,
for models where a list of files and allowed actions is kept on a
side (AppArmor) this approach means we just append files into the
profile and never remove them. In turn, the file grows and policy
update takes longer with each entry.
Restore the seclabel for AppArmor's sake.
Signed-off-by: Michal Privoznik <mprivozn(a)redhat.com>
---
src/qemu/qemu_driver.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/src/qemu/qemu_driver.c b/src/qemu/qemu_driver.c
index fb63e6550f..0c6645ed89 100644
--- a/src/qemu/qemu_driver.c
+++ b/src/qemu/qemu_driver.c
@@ -3423,8 +3423,13 @@ qemuDomainScreenshot(virDomainPtr dom,
endjob:
VIR_FORCE_CLOSE(tmp_fd);
- if (unlink_tmp)
+ if (unlink_tmp) {
+ /* This may look pointless, since we're removing the file anyways, but
+ * it's crucial for AppArmor. Otherwise these temp files would
+ * accumulate in the domain's profile. */
+ qemuSecurityDomainRestorePathLabel(driver, vm, tmp);
unlink(tmp);
+ }
qemuDomainObjEndJob(vm);
--
2.35.1
2 years, 5 months
[PATCH REBASE 00/17] Use virXMLPropEnum() more (part I)
by Michal Privoznik
This is rebased version of:
https://listman.redhat.com/archives/libvir-list/2022-April/229941.html
Michal Prívozník (17):
Drop needless typecast to virStorageType enum
virStorageSourceGetActualType: Change type of retval
virDomainBackupDefParse: Switch to virXMLPropEnumDefault()
virDomainDeviceAddressParseXML: Switch to virXMLPropEnumDefault()
virDomainStorageNetworkParseHost: Switch to virXMLPropEnumDefault()
virDomainHostdevSubsysSCSIDefParseXML: Switch to
virXMLPropEnumDefault()
virDomainHostdevSubsysSCSIVHostDefParseXML: Switch to
virXMLPropEnumDefault()
virDomainDiskSourceNVMeParse: Switch to virXMLPropEnumDefault()
virDomainDiskDefMirrorParse: Switch to virXMLPropEnumDefault()
virDomainDiskSourcePoolDefParse: Switch to virXMLPropEnumDefault()
virDomainDiskDefParseSourceXML: Switch to virXMLPropEnumDefault()
virDomainChrDefParseXML: Switch to virXMLPropEnumDefault()
virDomainTPMDefParseXML: Switch to virXMLPropEnumDefault()
virDomainPanicDefParseXML: Switch to virXMLPropEnumDefault()
virDomainInputDefParseXML: Switch to virXMLPropEnumDefault()
virDomainHubDefParseXML: Switch to virXMLPropEnumDefault()
virDomainTimerDefParseXML: Switch to virXMLPropEnumDefault()
src/ch/ch_monitor.c | 2 +-
src/conf/backup_conf.c | 16 +-
src/conf/backup_conf.h | 2 +-
src/conf/device_conf.c | 12 +-
src/conf/device_conf.h | 4 +-
src/conf/domain_audit.c | 2 +-
src/conf/domain_conf.c | 494 ++++++------------
src/conf/domain_conf.h | 54 +-
src/conf/domain_validate.c | 6 +-
src/conf/storage_source_conf.c | 2 +-
src/conf/storage_source_conf.h | 8 +-
src/conf/virchrdev.c | 29 +
src/libxl/libxl_conf.c | 32 +-
src/libxl/libxl_domain.c | 2 +-
src/libxl/xen_common.c | 29 +-
src/libxl/xen_xl.c | 7 +-
src/libxl/xen_xm.c | 3 +
src/locking/domain_lock.c | 2 +-
src/lxc/lxc_cgroup.c | 2 +-
src/lxc/lxc_controller.c | 2 +-
src/qemu/qemu_backup.c | 2 +-
src/qemu/qemu_block.c | 14 +-
src/qemu/qemu_cgroup.c | 12 +
src/qemu/qemu_command.c | 49 +-
src/qemu/qemu_domain.c | 44 +-
src/qemu/qemu_domain_address.c | 4 +-
src/qemu/qemu_driver.c | 4 +-
src/qemu/qemu_hotplug.c | 4 +-
src/qemu/qemu_migration.c | 6 +-
src/qemu/qemu_monitor.c | 54 +-
src/qemu/qemu_monitor_json.c | 4 +-
src/qemu/qemu_process.c | 10 +-
src/qemu/qemu_snapshot.c | 16 +-
src/qemu/qemu_validate.c | 19 +-
src/security/security_apparmor.c | 6 +-
src/security/security_dac.c | 8 +-
src/security/security_selinux.c | 28 +-
.../storage_file_backend_gluster.c | 2 +-
src/storage_file/storage_source.c | 4 +-
.../storage_source_backingstore.c | 16 +-
src/vmx/vmx.c | 26 +
tests/qemuxml2argvtest.c | 2 +-
tests/testutilsqemu.c | 2 +-
43 files changed, 557 insertions(+), 489 deletions(-)
--
2.35.1
2 years, 5 months
[libvirt PATCH] docs: contact: recommend the TLS port for IRC
by Ján Tomko
Signed-off-by: Ján Tomko <jtomko(a)redhat.com>
---
docs/contact.rst | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/docs/contact.rst b/docs/contact.rst
index 19e1b66a52..f8f7e806b3 100644
--- a/docs/contact.rst
+++ b/docs/contact.rst
@@ -80,7 +80,7 @@ Some of the libvirt developers may be found on IRC on the `OFTC
IRC <https://oftc.net>`__ network. Use the settings:
- server: irc.oftc.net
-- port: 6667 (the usual IRC port)
+- port: 6697 (the usual IRC TLS port)
- channel: #virt
NB There is no guarantee that someone will be watching or able to reply
--
2.35.1
2 years, 5 months
[libvirt PATCH] Fix typos
by Tim Wiederhake
Signed-off-by: Tim Wiederhake <twiederh(a)redhat.com>
---
src/qemu/qemu_fd.c | 2 +-
src/util/virfile.c | 2 +-
tests/meson.build | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/src/qemu/qemu_fd.c b/src/qemu/qemu_fd.c
index bc6a37663c..6311161657 100644
--- a/src/qemu/qemu_fd.c
+++ b/src/qemu/qemu_fd.c
@@ -262,7 +262,7 @@ qemuFDPassDirectFree(qemuFDPassDirect *fdpass)
* @fd: The FD, cleared when passed.
*
* The qemuFDPassDirect helper returned by this helper is used to hold a FD
- * passed to qemu either direcly via FD number when used on commandline or the
+ * passed to qemu either directly via FD number when used on commandline or the
* 'getfd' QMP command.
*/
qemuFDPassDirect *
diff --git a/src/util/virfile.c b/src/util/virfile.c
index e4522b5f67..99da058db3 100644
--- a/src/util/virfile.c
+++ b/src/util/virfile.c
@@ -4595,7 +4595,7 @@ struct runIOParams {
*
* Execute the copy based on the passed parameters.
*
- * Returns: size transfered, or < 0 on error.
+ * Returns: size transferred, or < 0 on error.
*/
static off_t
diff --git a/tests/meson.build b/tests/meson.build
index 1871f5e611..bc9d8ccc4c 100644
--- a/tests/meson.build
+++ b/tests/meson.build
@@ -47,7 +47,7 @@ tests_env = [
#
# (process:50880): GLib-WARNING **: 02:54:15.272: poll(2) failed due to: Bad file descriptor.
#
-# Our code is inherantly racy, calling g_source_destroy which
+# Our code is inherently racy, calling g_source_destroy which
# removes the FD from the event thread poll asynchronously
# but we close the FD immediately after g_source_destroy returns.
#
--
2.31.1
2 years, 5 months
[PATCH 00/15] docs: Convert some pages to rST and clean up (part 6)
by Peter Krempa
After this series only 2 non-generated HTML files remain:
- index.html.in
- 404.html.in
It is possible to convert these but the utility of doing so may not be
great for now.
Additionally this series cleans up some long-broken links and removes
unneeded raw HTML passthrough to declare anchors.
Pavel Hrdina (2):
docs: storage: rename headers to remove duplicate names
docs: Convert 'storage' page to rst
Peter Krempa (13):
docs: formatsecret: Correct link to storage volume XML definition
Correct links to TLS certificate setup page
docs: Convert 'remote' page to rst
docs: remote: Remove 'Limitations' paragraph
docs: Convert 'uri' page to rst
docs: uri: Remove old 'NULL URI' section
docs: uri: Consolidate paragraphs on Xen URIs
docs: uri: Move the 'test' hypervisor under a 'local hypervisors
heading
docs: uri: Rewrite section about transport protocols and extra
parameters
docs: governance: Remove unused HTML anchors
docs: contact: Remove HTML anchors and adjust documents using them
docs: bugs: Remove raw HTML anchor 'quality'
docs: formatdomain: Remove old unreferenced HTML anchors
.gitlab/issue_templates/bug.md | 2 +-
docs/bugs.rst | 5 -
docs/contact.rst | 11 +-
docs/contribute.rst | 10 +-
docs/drvesx.rst | 5 +-
docs/formatdomain.rst | 112 -----
docs/formatsecret.rst | 8 +-
docs/governance.rst | 5 -
docs/kbase/tlscerts.rst | 4 +-
docs/meson.build | 6 +-
docs/page.xsl | 2 +-
docs/remote.html.in | 297 ------------
docs/remote.rst | 209 +++++++++
docs/securityprocess.rst | 4 +-
docs/storage.html.in | 833 ---------------------------------
docs/storage.rst | 790 +++++++++++++++++++++++++++++++
docs/uri.html.in | 507 --------------------
docs/uri.rst | 405 ++++++++++++++++
tools/virt-pki-validate.in | 10 +-
19 files changed, 1431 insertions(+), 1794 deletions(-)
delete mode 100644 docs/remote.html.in
create mode 100644 docs/remote.rst
delete mode 100644 docs/storage.html.in
create mode 100644 docs/storage.rst
delete mode 100644 docs/uri.html.in
create mode 100644 docs/uri.rst
--
2.35.1
2 years, 5 months