From d89136e159bd55a36f5500861ae61e0eeed3a82e Mon Sep 17 00:00:00 2001 From: yanjianqing Date: Fri, 26 Jul 2024 16:06:57 +0800 Subject: [PATCH] virt-manager upgrade to version 4.1.0-7 - tests: testdriver: Add filesystem socket example - cli: Drop unnecessary --disk prop aliases - fsdetails: Fix an error with source.socket of virtiofs - tests: cli: Fix test output after previous commit - cli: --disk: Add driver.metadata_cache options (cherry picked from commit 58bb2a7d27e0b9cfde41ae8a026ccaa361d1aaea) --- ...i-Drop-unnecessary-disk-prop-aliases.patch | 26 +++++ ...sk-Add-driver.metadata_cache-options.patch | 106 ++++++++++++++++++ ...-error-with-source.socket-of-virtiof.patch | 47 ++++++++ ...ix-test-output-after-previous-commit.patch | 26 +++++ ...driver-Add-filesystem-socket-example.patch | 31 +++++ virt-manager.spec | 14 ++- 6 files changed, 249 insertions(+), 1 deletion(-) create mode 100644 backport-cli-Drop-unnecessary-disk-prop-aliases.patch create mode 100644 backport-cli-disk-Add-driver.metadata_cache-options.patch create mode 100644 backport-fsdetails-Fix-an-error-with-source.socket-of-virtiof.patch create mode 100644 backport-tests-cli-Fix-test-output-after-previous-commit.patch create mode 100644 backport-tests-testdriver-Add-filesystem-socket-example.patch diff --git a/backport-cli-Drop-unnecessary-disk-prop-aliases.patch b/backport-cli-Drop-unnecessary-disk-prop-aliases.patch new file mode 100644 index 0000000..a030fb4 --- /dev/null +++ b/backport-cli-Drop-unnecessary-disk-prop-aliases.patch @@ -0,0 +1,26 @@ +From 4b150735720d8a54c153e10a1bc760d252594004 Mon Sep 17 00:00:00 2001 +From: Cole Robinson +Date: Wed, 17 Aug 2022 10:27:36 -0400 +Subject: [PATCH] cli: Drop unnecessary --disk prop aliases + +Signed-off-by: Cole Robinson +--- + virtinst/cli.py | 2 -- + 1 file changed, 2 deletions(-) + +diff --git a/virtinst/cli.py b/virtinst/cli.py +index 042b500f..388c5263 100644 +--- a/virtinst/cli.py ++++ b/virtinst/cli.py +@@ -3497,8 +3497,6 @@ class ParserDisk(VirtCLIParser): + "driver.io": "io", + "driver.name": "driver_name", + "driver.type": "driver_type", +- "driver.metadata_cache.max_size": "metadata_cache.max_size", +- "driver.metadata_cache.max_size.unit": "metadata_cache.max_size.unit", + } + + def _add_advertised_aliases(self): +-- +2.43.0 + diff --git a/backport-cli-disk-Add-driver.metadata_cache-options.patch b/backport-cli-disk-Add-driver.metadata_cache-options.patch new file mode 100644 index 0000000..4ead98d --- /dev/null +++ b/backport-cli-disk-Add-driver.metadata_cache-options.patch @@ -0,0 +1,106 @@ +From 11a887ece5b5bab287ff77b09337dc44c4e6e976 Mon Sep 17 00:00:00 2001 +From: Lin Ma +Date: Tue, 16 Aug 2022 12:59:57 +0800 +Subject: [PATCH] cli: --disk: Add driver.metadata_cache options + +Properly setting the metadata cache size can provide better performance +in case of using big qcow2 images. + +This patch introduces two driver options: +* driver.metadata_cache.max_size +* driver.metadata_cache.max_size.unit + +E.g. --disk ...,driver.type=qcow2,\ + driver.metadata_cache.max_size=2,\ + driver.metadata_cache.max_size.unit=MiB + +BTW, Metadata cache size control is currently supported only for qcow2. +Regarding how to properly caluclate the cache size of qcow2, Please refer +to qemu's documentation. + +Signed-off-by: Lin Ma +--- + tests/data/cli/compare/virt-install-many-devices.xml | 9 +++++++++ + tests/test_cli.py | 1 + + virtinst/cli.py | 7 +++++++ + virtinst/devices/disk.py | 5 +++++ + 4 files changed, 22 insertions(+) + +diff --git a/tests/data/cli/compare/virt-install-many-devices.xml b/tests/data/cli/compare/virt-install-many-devices.xml +index a73343a9..a33dc16a 100644 +--- a/tests/data/cli/compare/virt-install-many-devices.xml ++++ b/tests/data/cli/compare/virt-install-many-devices.xml +@@ -423,6 +423,15 @@ + + + ++ ++ ++ ++ 2048 ++ ++ ++ ++ ++ + +
+ +diff --git a/tests/test_cli.py b/tests/test_cli.py +index 774db098..259ac78c 100644 +--- a/tests/test_cli.py ++++ b/tests/test_cli.py +@@ -605,6 +605,7 @@ source.reservations.managed=no,source.reservations.source.type=unix,source.reser + --disk path=/fooroot.img,size=.0001,transient=on + --disk source.dir=/ + --disk type=nvme,source.type=pci,source.managed=no,source.namespace=2,source.address.domain=0x0001,source.address.bus=0x02,source.address.slot=0x00,source.address.function=0x0 ++--disk /tmp/disk1.qcow2,size=16,driver.type=qcow2,driver.metadata_cache.max_size=2048,driver.metadata_cache.max_size.unit=KiB + + + --network user,mac=12:34:56:78:11:22,portgroup=foo,link_state=down,rom_bar=on,rom_file=/tmp/foo +diff --git a/virtinst/cli.py b/virtinst/cli.py +index c4dffd34..042b500f 100644 +--- a/virtinst/cli.py ++++ b/virtinst/cli.py +@@ -3497,6 +3497,8 @@ class ParserDisk(VirtCLIParser): + "driver.io": "io", + "driver.name": "driver_name", + "driver.type": "driver_type", ++ "driver.metadata_cache.max_size": "metadata_cache.max_size", ++ "driver.metadata_cache.max_size.unit": "metadata_cache.max_size.unit", + } + + def _add_advertised_aliases(self): +@@ -3696,6 +3698,11 @@ class ParserDisk(VirtCLIParser): + cls.add_arg("driver.queues", "driver_queues") + cls.add_arg("driver.error_policy", "error_policy") + ++ cls.add_arg("driver.metadata_cache.max_size", ++ "driver_metadata_cache_max_size") ++ cls.add_arg("driver.metadata_cache.max_size.unit", ++ "driver_metadata_cache_max_size_unit") ++ + cls.add_arg("iotune.read_bytes_sec", "iotune_rbs") + cls.add_arg("iotune.write_bytes_sec", "iotune_wbs") + cls.add_arg("iotune.total_bytes_sec", "iotune_tbs") +diff --git a/virtinst/devices/disk.py b/virtinst/devices/disk.py +index dc59fd13..9609ebac 100644 +--- a/virtinst/devices/disk.py ++++ b/virtinst/devices/disk.py +@@ -481,6 +481,11 @@ class DeviceDisk(Device): + driver_iothread = XMLProperty("./driver/@iothread", is_int=True) + driver_queues = XMLProperty("./driver/@queues", is_int=True) + ++ driver_metadata_cache_max_size = XMLProperty( ++ "./driver/metadata_cache/max_size", is_int=True) ++ driver_metadata_cache_max_size_unit = XMLProperty( ++ "./driver/metadata_cache/max_size/@unit") ++ + error_policy = XMLProperty("./driver/@error_policy") + serial = XMLProperty("./serial") + wwn = XMLProperty("./wwn") +-- +2.37.2.windows.2 + + + diff --git a/backport-fsdetails-Fix-an-error-with-source.socket-of-virtiof.patch b/backport-fsdetails-Fix-an-error-with-source.socket-of-virtiof.patch new file mode 100644 index 0000000..a7d1264 --- /dev/null +++ b/backport-fsdetails-Fix-an-error-with-source.socket-of-virtiof.patch @@ -0,0 +1,47 @@ +From 58f5e36da76277bfc7fb4d87293be60ef6e0cbc1 Mon Sep 17 00:00:00 2001 +From: Lin Ma +Date: Tue, 16 Aug 2022 12:59:36 +0800 +Subject: [PATCH] fsdetails: Fix an error with source.socket of virtiofs + +Using the source.socket of virtiofs needs a virtiofsd daemon launched +outside of libvirtd, So the filesystem UI doesn't support it yet. If +users need it they can set it manually in the XML editor. +But if we view the filesystem info of such a VM on the details page, +It fails with this error message: + +Traceback (most recent call last): + File "/usr/share/virt-manager/virtManager/details/details.py", line 1713, in _refresh_page + self._refresh_filesystem_page(dev) + File "/usr/share/virt-manager/virtManager/details/details.py", line 2241, in _refresh_filesystem_page + self.fsDetails.set_dev(dev) + File "/usr/share/virt-manager/virtManager/device/fsdetails.py", line 193, in set_dev + self.widget("fs-source").set_text(dev.source) +TypeError: Argument 1 does not allow None as a value + +This patch fixes above issue by leaving the 'source path' info blank in +case of source.socket. +In this case, Considering that showing 'target path' info without source +info is kind of meaningless, So this patch leaves the 'target path' info +blank as well. + +Signed-off-by: Lin Ma +--- + virtManager/device/fsdetails.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/virtManager/device/fsdetails.py b/virtManager/device/fsdetails.py +index 40868d1c..b9956e1d 100644 +--- a/virtManager/device/fsdetails.py ++++ b/virtManager/device/fsdetails.py +@@ -190,7 +190,7 @@ class vmmFSDetails(vmmGObjectUI): + self.widget("fs-format-combo"), dev.driver_format) + + if dev.type != DeviceFilesystem.TYPE_RAM: +- self.widget("fs-source").set_text(dev.source) ++ self.widget("fs-source").set_text(dev.source or "") + else: + self.widget("fs-ram-source-spin").set_value(int(dev.source) // 1024) + self.widget("fs-target").set_text(dev.target or "") +-- +2.37.2.windows.2 + diff --git a/backport-tests-cli-Fix-test-output-after-previous-commit.patch b/backport-tests-cli-Fix-test-output-after-previous-commit.patch new file mode 100644 index 0000000..ad2db06 --- /dev/null +++ b/backport-tests-cli-Fix-test-output-after-previous-commit.patch @@ -0,0 +1,26 @@ +From 7295ebfb02e1a6ebcc1fc94c4aecfe8e21a0e567 Mon Sep 17 00:00:00 2001 +From: Cole Robinson +Date: Wed, 17 Aug 2022 10:21:31 -0400 +Subject: [PATCH] tests: cli: Fix test output after previous commit + +Signed-off-by: Cole Robinson +--- + tests/data/cli/compare/virt-install-many-devices.xml | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/tests/data/cli/compare/virt-install-many-devices.xml b/tests/data/cli/compare/virt-install-many-devices.xml +index a33dc16a..c27512d1 100644 +--- a/tests/data/cli/compare/virt-install-many-devices.xml ++++ b/tests/data/cli/compare/virt-install-many-devices.xml +@@ -424,7 +424,7 @@ + + + +- ++ + + 2048 + +-- +2.43.0 + diff --git a/backport-tests-testdriver-Add-filesystem-socket-example.patch b/backport-tests-testdriver-Add-filesystem-socket-example.patch new file mode 100644 index 0000000..0d4d04f --- /dev/null +++ b/backport-tests-testdriver-Add-filesystem-socket-example.patch @@ -0,0 +1,31 @@ +From 1b87e3e54c782da39cf30b100a22f70c37bfcddd Mon Sep 17 00:00:00 2001 +From: Cole Robinson +Date: Wed, 17 Aug 2022 10:29:31 -0400 +Subject: [PATCH] tests: testdriver: Add filesystem socket example + +Signed-off-by: Cole Robinson +--- + tests/data/testdriver/testdriver.xml | 7 +++++++ + 1 file changed, 7 insertions(+) + +diff --git a/tests/data/testdriver/testdriver.xml b/tests/data/testdriver/testdriver.xml +index b213863d..7c94e698 100644 +--- a/tests/data/testdriver/testdriver.xml ++++ b/tests/data/testdriver/testdriver.xml +@@ -599,6 +599,13 @@ Foo bar baz & yeah boii < > yeahfoo + + + ++ ++ ++ ++ ++
++ ++ + + + +-- +2.37.2.windows.2 + diff --git a/virt-manager.spec b/virt-manager.spec index d13a87c..fd871b0 100644 --- a/virt-manager.spec +++ b/virt-manager.spec @@ -2,7 +2,7 @@ Name: virt-manager Version: 4.1.0 -Release: 6 +Release: 7 Summary: The manage virtual machines tool which via libvirt. License: GPLv2+ BuildArch: noarch @@ -14,6 +14,11 @@ Patch2: Add-loongarch-support-in-guest-class.patch Patch3: Add-some-default-device-support-for-loongarch.patch Patch4: Add-test-cases-for-loongarch.patch Patch5: Update-chinese-translation-file.patch +Patch6: backport-cli-disk-Add-driver.metadata_cache-options.patch +Patch7: backport-tests-cli-Fix-test-output-after-previous-commit.patch +Patch8: backport-fsdetails-Fix-an-error-with-source.socket-of-virtiof.patch +Patch9: backport-cli-Drop-unnecessary-disk-prop-aliases.patch +Patch10: backport-tests-testdriver-Add-filesystem-socket-example.patch Requires: virt-manager-common = %{version}-%{release} python3-gobject gtk3 libvirt-glib >= 0.0.9 Requires: gtk-vnc2 dconf vte291 gtksourceview4 @@ -91,6 +96,13 @@ done %{_mandir}/man1/{virt-install.1*,virt-clone.1*,virt-xml.1*} %changelog +* Fri Jul 26 2024 yanjianqing - 4.1.0-7 +- tests: testdriver: Add filesystem socket example +- cli: Drop unnecessary --disk prop aliases +- fsdetails: Fix an error with source.socket of virtiofs +- tests: cli: Fix test output after previous commit +- cli: --disk: Add driver.metadata_cache options + * Wed Jul 17 2024 yanjianqing - 4.1.0-6 - Update chinese translation file -- Gitee