[libvirt PATCH 0/7] Define and enable Snowridge CPU model
by Tim Wiederhake
This series adds and enables the Snowridge CPU model.
Note that qemu currently uses the same model ID for Icelake-Server [1]
and Snowridge [2]. The correct ID for Icelake is 106 [3], a mistake
that has been fixed in libvirt already [4], but is still missing in
qemu [5].
[1] https://git.qemu.org/?p=3Dqemu.git;a=3Dblob;f=3Dtarget/i386/cpu.c;h=3D354=
59a38bb1ce7180c5c28e6e215489ef35d3bfe;hb=3DHEAD#l3409
[2] https://git.qemu.org/?p=3Dqemu.git;a=3Dblob;f=3Dtarget/i386/cpu.c;h=3D354=
59a38bb1ce7180c5c28e6e215489ef35d3bfe;hb=3DHEAD#l3661
[3] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/a=
rch/x86/include/asm/intel-family.h#n80
[4] https://gitlab.com/libvirt/libvirt/-/commit/1278ac6265589cd83cc2e661056c8=
60e98105507
[5] https://lists.nongnu.org/archive/html/qemu-devel/2020-12/msg00599.html
Tim Wiederhake (7):
cputestdata: Add test data for Snowridge
cpu_map: Add support for fsrm CPU feature
cpu_map: Add support for core-capability CPU feature
cputestdata: Snowridge: Update with core-capability CPU feature
cpu_map: Add support for split-lock-detect CPU feature
cputestdata: Snowridge: Update with split-lock-detect feature
cpu_map: Define and enable Snowridge model
src/cpu_map/index.xml | 1 +
src/cpu_map/meson.build | 1 +
src/cpu_map/x86_Snowridge.xml | 71 +
src/cpu_map/x86_features.xml | 11 +
...64-cpuid-Atom-P5362-processor-disabled.xml | 9 +
..._64-cpuid-Atom-P5362-processor-enabled.xml | 10 +
.../x86_64-cpuid-Atom-P5362-processor.json | 2415 +++++++++++++++++
.../x86_64-cpuid-Atom-P5362-processor.xml | 61 +
.../x86_64-cpuid-Ice-Lake-Server-guest.xml | 1 +
.../x86_64-cpuid-Ice-Lake-Server-host.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 +
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 +
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.x86_64.xml | 1 +
.../domaincapsdata/qemu_5.2.0-q35.x86_64.xml | 1 +
.../domaincapsdata/qemu_5.2.0-tcg.x86_64.xml | 1 +
tests/domaincapsdata/qemu_5.2.0.x86_64.xml | 1 +
25 files changed, 2596 insertions(+)
create mode 100644 src/cpu_map/x86_Snowridge.xml
create mode 100644 tests/cputestdata/x86_64-cpuid-Atom-P5362-processor-disab=
led.xml
create mode 100644 tests/cputestdata/x86_64-cpuid-Atom-P5362-processor-enabl=
ed.xml
create mode 100644 tests/cputestdata/x86_64-cpuid-Atom-P5362-processor.json
create mode 100644 tests/cputestdata/x86_64-cpuid-Atom-P5362-processor.xml
--=20
2.26.2
4 years, 4 months
[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
4 years, 4 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
4 years, 4 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
4 years, 4 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
4 years, 4 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
4 years, 4 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
4 years, 4 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
4 years, 4 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
4 years, 4 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
4 years, 4 months