[PATCH] docs/system: Remove deprecated 'fulong2e' machine alias
by Philippe Mathieu-Daudé
The 'fulong2e' machine alias has been marked as deprecated since
QEMU v5.1 (commit c3a09ff68dd, the machine is renamed 'fuloong2e').
Time to remove it now.
Signed-off-by: Philippe Mathieu-Daudé <f4bug(a)amsat.org>
---
docs/system/deprecated.rst | 5 -----
docs/system/removed-features.rst | 5 +++++
hw/mips/fuloong2e.c | 1 -
3 files changed, 5 insertions(+), 6 deletions(-)
diff --git a/docs/system/deprecated.rst b/docs/system/deprecated.rst
index bacd76d7a58..e20bfcb17a4 100644
--- a/docs/system/deprecated.rst
+++ b/docs/system/deprecated.rst
@@ -309,11 +309,6 @@ The 'scsi-disk' device is deprecated. Users should use 'scsi-hd' or
System emulator machines
------------------------
-mips ``fulong2e`` machine (since 5.1)
-'''''''''''''''''''''''''''''''''''''
-
-This machine has been renamed ``fuloong2e``.
-
``pc-1.0``, ``pc-1.1``, ``pc-1.2`` and ``pc-1.3`` (since 5.0)
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
diff --git a/docs/system/removed-features.rst b/docs/system/removed-features.rst
index 8b20d78a4d0..430fc33ca18 100644
--- a/docs/system/removed-features.rst
+++ b/docs/system/removed-features.rst
@@ -120,6 +120,11 @@ mips ``r4k`` platform (removed in 5.2)
This machine type was very old and unmaintained. Users should use the ``malta``
machine type instead.
+mips ``fulong2e`` machine alias (removed in 6.0)
+''''''''''''''''''''''''''''''''''''''''''''''''
+
+This machine has been renamed ``fuloong2e``.
+
Related binaries
----------------
diff --git a/hw/mips/fuloong2e.c b/hw/mips/fuloong2e.c
index 29805242caa..bac2adbd5ae 100644
--- a/hw/mips/fuloong2e.c
+++ b/hw/mips/fuloong2e.c
@@ -383,7 +383,6 @@ static void mips_fuloong2e_init(MachineState *machine)
static void mips_fuloong2e_machine_init(MachineClass *mc)
{
mc->desc = "Fuloong 2e mini pc";
- mc->alias = "fulong2e"; /* Incorrect name used up to QEMU 4.2 */
mc->init = mips_fuloong2e_init;
mc->block_default_type = IF_IDE;
mc->default_cpu_type = MIPS_CPU_TYPE_NAME("Loongson-2E");
--
2.26.2
3 years, 11 months
[libvirt PATCH 0/9] Merge scripts in tests/cputestdata
by Tim Wiederhake
This series merges the functionality of cpu-cpuid.py into cpu-gather.py
and completes the transition.
For background, see
https://www.redhat.com/archives/libvir-list/2020-December/msg00706.html
Tim Wiederhake (9):
cpu-cpuid: Use argparse to parse arguments
cpu-cpuid: Remove xmltodict usage in parseMap
cpu-cpuid: Remove xmltodict usage in parseCPU
cpu-cpuid: Merge addFeature functions
cpu-cpuid: Merge checkFeature functions
cpu-cpuid: Deduplicate register list
cpu-gather: Use actions instead of flags for action argument
cpu-gather: Factor out call to cpu-cpuid.py
cpu-gather: Merge cpu-cpuid.py
tests/cputestdata/cpu-cpuid.py | 229 --------------------------------
tests/cputestdata/cpu-gather.py | 178 ++++++++++++++++++++++---
2 files changed, 156 insertions(+), 251 deletions(-)
delete mode 100755 tests/cputestdata/cpu-cpuid.py
--
2.26.2
3 years, 11 months
[PATCH] qemuMonitorFdsetsFree: Don't leak @set->fds
by Michal Privoznik
The @fds member of qemuMonitorFdsetInfo struct is an array and as
such, it's allocated in qemuMonitorJSONQueryFdsetsParse() but not
freed in qemuMonitorFdsetsFree().
Fixes: b8998cc670f7b1b11a83276050e49dce7efba333
Signed-off-by: Michal Privoznik <mprivozn(a)redhat.com>
---
src/qemu/qemu_monitor.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/src/qemu/qemu_monitor.c b/src/qemu/qemu_monitor.c
index 40f2997cb6..abdd9d5240 100644
--- a/src/qemu/qemu_monitor.c
+++ b/src/qemu/qemu_monitor.c
@@ -2708,6 +2708,8 @@ void qemuMonitorFdsetsFree(qemuMonitorFdsetsPtr fdsets)
for (j = 0; j < set->nfds; j++)
g_free(set->fds[j].opaque);
+
+ g_free(set->fds);
}
g_free(fdsets->fdsets);
g_free(fdsets);
--
2.26.2
3 years, 11 months
[PATCH] src: fix resource leak introduced in d4439a6b8
by Nikolay Shirokovskiy
@tmp that was copied just above is leaked on plain return.
The issue is found by Coverity.
Patch that inroduced a leak:
d4439a6b8 : src: adopt to VIR_DRV_SUPPORTS_FEATURE return -1
Signed-off-by: Nikolay Shirokovskiy <nshirokovskiy(a)virtuozzo.com>
---
src/libvirt-domain.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/libvirt-domain.c b/src/libvirt-domain.c
index 2f9081a..c9f8ffd 100644
--- a/src/libvirt-domain.c
+++ b/src/libvirt-domain.c
@@ -3022,7 +3022,7 @@ virDomainMigrateVersion3Full(virDomainPtr domain,
ret = VIR_DRV_SUPPORTS_FEATURE(domain->conn->driver, domain->conn,
VIR_DRV_FEATURE_MIGRATE_CHANGE_PROTECTION);
if (ret < 0)
- return NULL;
+ goto done;
if (ret)
protection = VIR_MIGRATE_CHANGE_PROTECTION;
--
1.8.3.1
3 years, 11 months
[PATCH v3 0/4] handle error in feature testing
by Nikolay Shirokovskiy
Justification is in the last patch.
Diff to v2 [1]:
- instead of RFC where fix was applied only to virMigrate3 now
all the places where VIR_DRV_SUPPORTS_FEATURE is used patched
to handle errors
[1] [RFC PATCH v2] fix error message in virMigrate3 if connection is broken
https://www.redhat.com/archives/libvir-list/2020-September/msg01348.html
Nikolay Shirokovskiy (4):
src: adopt to VIR_DRV_SUPPORTS_FEATURE return -1
libxl: adopt to VIR_DRV_SUPPORTS_FEATURE return -1
qemu: adopt to VIR_DRV_SUPPORTS_FEATURE return -1
src: don't hide error in VIR_DRV_SUPPORTS_FEATURE
src/driver.h | 9 +-
src/libvirt-domain.c | 511 ++++++++++++++++++++++++++++++--------------
src/libvirt-host.c | 18 +-
src/libvirt.c | 7 +-
src/libxl/libxl_migration.c | 10 +-
src/qemu/qemu_migration.c | 33 ++-
6 files changed, 396 insertions(+), 192 deletions(-)
--
1.8.3.1
3 years, 11 months
[libvirt PATCH 00/17] split and cleanup virStorageSource code
by Pavel Hrdina
The series is a prerequisite for implementing vhost-user-blk-pci.
I wanted to use already existing code to parse and format
virDomainChrSourceDefPtr as the vhostuser <disk> source similarly
like we do for <interface> but it was not possible because
the virStorageSource definition was living in util directory
where we don't allow including anything from conf directory.
Pavel Hrdina (17):
util: remove unused virStorageGenerateQcowPassphrase
virstoragefile: remove unused virStorageFileChainCheckBroken
util: move virQEMUBuildQemuImgKeySecretOpts into storage
util: move virStorageFileGetLVMKey to locking
util: move virStorageFileCheckCompat into conf
virfile: refactor virFileNBDDeviceAssociate
virstoragefile: move virStorageFileResize into virfile
virstoragefile: move virStorageFileIsClusterFS into virfile
virstoragefile: move virStorageIsFile into virfile
virstoragefile: move virStorageIsRelative into virfile
virstoragefile: change virStorageSource->drv to void pointer
storage: move storage file sources to separate directory
util: extract virStorageFile code into storage_file
util: move virStorageFileBackend code into storage_file
util: move virStorageSource code into conf
util: move virStorageEncryption code into conf
storage_file: use virStorageFile prefix for all functions
po/POTFILES.in | 10 +-
src/conf/backup_conf.c | 2 +-
src/conf/checkpoint_conf.c | 2 +-
src/conf/domain_conf.c | 2 +-
src/conf/domain_conf.h | 6 +-
src/conf/meson.build | 2 +
src/conf/snapshot_conf.c | 2 +-
src/conf/storage_conf.c | 25 +-
src/conf/storage_conf.h | 4 +-
.../storage_encryption.c} | 38 +-
.../storage_encryption.h} | 4 +-
src/conf/storage_source.c | 1316 +++++
src/conf/storage_source.h | 518 ++
src/driver.c | 1 +
src/esx/esx_storage_backend_iscsi.c | 2 +-
src/esx/esx_storage_backend_vmfs.c | 2 +-
src/libvirt_private.syms | 200 +-
src/libxl/meson.build | 1 +
src/libxl/xen_xl.c | 3 +-
src/locking/lock_driver_lockd.c | 67 +-
src/lxc/lxc_controller.c | 4 +-
src/meson.build | 1 +
src/qemu/meson.build | 1 +
src/qemu/qemu_backup.c | 3 +-
src/qemu/qemu_block.c | 3 +-
src/qemu/qemu_blockjob.c | 2 +-
src/qemu/qemu_command.c | 2 +-
src/qemu/qemu_domain.c | 19 +-
src/qemu/qemu_driver.c | 9 +-
src/qemu/qemu_hotplug.c | 3 +-
src/qemu/qemu_interop_config.c | 1 +
src/qemu/qemu_migration.c | 4 +-
src/qemu/qemu_process.c | 1 +
src/qemu/qemu_process.h | 2 +-
src/qemu/qemu_shim.c | 1 +
src/qemu/qemu_snapshot.c | 3 +-
src/storage/meson.build | 34 +-
src/storage/parthelper.c | 1 +
src/storage/storage_backend.c | 2 +-
src/storage/storage_backend_gluster.c | 1 +
src/storage/storage_util.c | 84 +-
src/storage_file/meson.build | 60 +
src/storage_file/storage_file.c | 3845 ++++++++++++
src/storage_file/storage_file.h | 197 +
.../storage_file_backend.c} | 4 +-
.../storage_file_backend.h} | 6 +-
.../storage_file_fs.c | 23 +-
.../storage_file_fs.h | 0
.../storage_file_gluster.c | 34 +-
.../storage_file_gluster.h | 0
src/util/meson.build | 2 -
src/util/virarptable.c | 1 +
src/util/vircgroupv1.c | 1 +
src/util/vircgroupv2devices.c | 1 +
src/util/virfile.c | 101 +-
src/util/virfile.h | 12 +-
src/util/virpidfile.c | 1 +
src/util/virqemu.c | 69 -
src/util/virqemu.h | 6 -
src/util/virresctrl.c | 1 +
src/util/virstoragefile.c | 5222 +----------------
src/util/virstoragefile.h | 572 +-
src/util/virsysinfo.c | 1 +
src/util/virtpm.c | 1 +
tests/meson.build | 4 +-
tests/qemublocktest.c | 7 +-
tests/virstoragetest.c | 9 +-
tools/virsh-console.c | 1 +
tools/virsh-util.c | 1 +
69 files changed, 6441 insertions(+), 6129 deletions(-)
rename src/{util/virstorageencryption.c => conf/storage_encryption.c} (90%)
rename src/{util/virstorageencryption.h => conf/storage_encryption.h} (96%)
create mode 100644 src/conf/storage_source.c
create mode 100644 src/conf/storage_source.h
create mode 100644 src/storage_file/meson.build
create mode 100644 src/storage_file/storage_file.c
create mode 100644 src/storage_file/storage_file.h
rename src/{util/virstoragefilebackend.c => storage_file/storage_file_backend.c} (97%)
rename src/{util/virstoragefilebackend.h => storage_file/storage_file_backend.h} (93%)
rename src/{storage => storage_file}/storage_file_fs.c (90%)
rename src/{storage => storage_file}/storage_file_fs.h (100%)
rename src/{storage => storage_file}/storage_file_gluster.c (89%)
rename src/{storage => storage_file}/storage_file_gluster.h (100%)
--
2.28.0
3 years, 11 months
[PATCH 00/12 RESEND] qemu: Preparation for 'object-add' qapification
by Peter Krempa
This is a resend of the patches from:
https://www.redhat.com/archives/libvir-list/2020-November/msg01625.html
which can be justified without the rest of the series. This series
cleans up some monitor code and few related bits to testing.
The reset of the series will be posted once there's progress on the
qapification of object-add in qemu.
Peter Krempa (12):
qemuMonitorJSONSetMigrationParams: Take double pointer for @params
qemuMonitorSetMigrationCapabilities: Take double pointer for @caps
qemuMonitorJSONSetMigrationCapabilities: Refactor cleanup
testQemuMonitorJSONqemuMonitorJSONGetMigrationCapabilities: refactor
cleanup
qemuMonitorJSONAddObject: Take double pointer for @props
qemuMonitorJSONMakeCommandInternal: Clear @arguments when stolen
qemuMonitorAddObject: Fix semantics of @alias
qemuMonitorAddObject: Refactor cleanup
util: json: Replace virJSONValueObjectSteal by
virJSONValueObjectRemoveKey
tests: qemuxml2argv: Don't check whether -netdev was QAPIfied
repeatedly
qemuBuildChrChardevStr: Rename 'flags' to 'cdevflags'
testCompareXMLToArgvValidateSchema: Populate autoNodeset
src/qemu/qemu_command.c | 10 +++---
src/qemu/qemu_migration_params.c | 22 ++++--------
src/qemu/qemu_monitor.c | 45 +++++++++----------------
src/qemu/qemu_monitor.h | 4 +--
src/qemu/qemu_monitor_json.c | 57 ++++++++++++--------------------
src/qemu/qemu_monitor_json.h | 6 ++--
src/util/virjson.c | 29 +++-------------
tests/qemumonitorjsontest.c | 26 +++++----------
tests/qemuxml2argvtest.c | 18 +++++++---
9 files changed, 81 insertions(+), 136 deletions(-)
--
2.29.2
3 years, 11 months
[PATCH 0/2] qemuDomainSetBlockIoTune: Fix for empty cdrom
by Peter Krempa
See 2/2
Peter Krempa (2):
qemuDomainSetBlockIoTune: Remove old uninformative comment
qemuDomainSetBlockIoTune: Skip monitor call for empty cdrom
src/qemu/qemu_driver.c | 26 +++++++++++++++-----------
1 file changed, 15 insertions(+), 11 deletions(-)
--
2.29.2
3 years, 11 months
[libvirt PATCH 0/2] Two small LXC veth creation bugs
by Laine Stump
Laine Stump (2):
lxc: remove unnecessary call to virNetDevReserveName()
lxc: eliminate leaked and dangling pointers in
virLXCProcessSetupInterfaceTap
src/lxc/lxc_process.c | 13 ++++++-------
1 file changed, 6 insertions(+), 7 deletions(-)
--
2.29.2
3 years, 11 months
[libvirt PATCH] util: validate pcie_cap_pos != 0 in virDeviceHasPCIExpressLink()
by Laine Stump
virDeviceHasPCIExpressLink() wasn't checking that pcie_cap_pos was
valid before attempting to use it, which could lead to reading the
byte at offset 0+PCI_CAP_ID_EXP instead of [valid
offset]+PCI_CAP_ID_EXP. In particular, this could happen for
"integrated" PCI devices (those that are on the PCIe root complex). If
it happened that the byte from the wrong address had the "right" bit
set, then it would lead to us innappropriately believing that Express
Link info was available when it wasn't, and the node device driver
would log an error like this:
virPCIDeviceGetLinkCapSta:2754 :
internal error: pci device 0000:00:18.0 is not a PCI-Express device
during a libvirtd restart. (this didn't ever occur until after
virPCIDeviceIsPCIExpress() was made more intelligent in commit
c00b6b1ae, which hasn't yet been in any official release)
Signed-off-by: Laine Stump <laine(a)redhat.com>
---
src/util/virpci.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/src/util/virpci.c b/src/util/virpci.c
index 9bfc743fbd..50fd5ef7ea 100644
--- a/src/util/virpci.c
+++ b/src/util/virpci.c
@@ -2722,6 +2722,11 @@ virPCIDeviceHasPCIExpressLink(virPCIDevicePtr dev)
if (virPCIDeviceInit(dev, fd) < 0)
goto cleanup;
+ if (dev->pcie_cap_pos == 0) {
+ ret = 0;
+ goto cleanup;
+ }
+
cap = virPCIDeviceRead16(dev, fd, dev->pcie_cap_pos + PCI_CAP_FLAGS);
type = (cap & PCI_EXP_FLAGS_TYPE) >> 4;
--
2.29.2
3 years, 11 months