From: Eneko Lacunza via pve-devel <pve-devel@lists.proxmox.com>
To: pve-devel@lists.proxmox.com
Cc: Eneko Lacunza <elacunza@binovo.es>
Subject: Re: [pve-devel] [PATCH guest-common/qemu-server/manager/docs v5 0/3] implement experimental vgpu live migration
Date: Wed, 5 Mar 2025 11:34:55 +0100 [thread overview]
Message-ID: <mailman.778.1741170936.293.pve-devel@lists.proxmox.com> (raw)
In-Reply-To: <20250120145203.282363-1-d.csapak@proxmox.com>
[-- Attachment #1: Type: message/rfc822, Size: 10852 bytes --]
From: Eneko Lacunza <elacunza@binovo.es>
To: pve-devel@lists.proxmox.com
Subject: Re: [pve-devel] [PATCH guest-common/qemu-server/manager/docs v5 0/3] implement experimental vgpu live migration
Date: Wed, 5 Mar 2025 11:34:55 +0100
Message-ID: <3492611b-e733-40f5-a542-9c03eb4bec9b@binovo.es>
Hi Dominik,
It is very likely we'll have access to a suitable cluster to test this
before summer, provided these patches are in published packages.
I can test and report back if that's helpful.
Regards
El 20/1/25 a las 15:51, Dominik Csapak escribió:
> and some useful cleanups
>
> This is implemented for mapped resources. This requires driver and
> hardware support, but aside from nvidia vgpus there don't seem to be
> many drivers (if any) that do support that.
>
> qemu already supports that for vfio-pci devices, so nothing to be
> done there besides actively enabling it.
>
> Since we currently can't properly test it here and very much depends on
> hardware/driver support, mark it as experimental everywhere (docs/api/gui).
> (though i tested the live-migration part manually here by using
> "exec:cat > /tmp/test" for the migration target, and "exec: cat
> /tmp/test" as the 'incoming' parameter for a new vm start, which worked ;) )
>
> i opted for marking them migratable at the mapping level, but we could
> theoretically also put it in the hostpciX config instead.
> (though imho it fits better in the cluster-wide resource mapping config)
>
> also the naming/texts could probably be improved, but i think
> 'live-migration-capable' is very descriptive and i didn't want to
> use an overly short name for it (which can be confusing, see the
> 'shared' flag for storages)
>
> should mostly be the same as v4 functionality/code-wise but still a bit
> changed due to the recent nvidia changes from our side, so probably
> warrants a bit of a closer look in any case
>
> changes from v4:
> * rebased on master (some work due to the recent nvidia changes)
> * incorporated thomas/alexanders feedback from v4
>
> changes from v3:
> * rebased on master
> * split first guest-common patch into 3
> * instead of merging keys, just write all expected keys in to expected_props
> * made $cfg optional so it does not break callers that don't call it
> * added patch to fix the cfg2cmd tests for mdev check
> * added patch to show vfio state transferred for migration
> * incorporated fionas feedback (mostly minor stuff)
>
> for more details see the individual patches
>
> changes from v2:
> * rebased on master
> * rework the rework of the properties check (pve-guest-common 1/4)
> * properly check mdev in the gui (pve-manager 1/5)
>
> manager patches depend on pve-guest-common/qemu-server patches
> qemu-server depends on pve-guest-common patches
>
> guest-common 3/3 breaks older qemu-server version before applying
> qemu-server patches 1&2
>
> pve-guest-common:
>
> Dominik Csapak (3):
> mapping: pci: check the mdev configuration on the device too
> mapping: pci: add 'live-migration-capable' flag to mappings
> mapping: remove find_on_current_node
>
> src/PVE/Mapping/PCI.pm | 27 +++++++++++++++------------
> src/PVE/Mapping/USB.pm | 10 ----------
> 2 files changed, 15 insertions(+), 22 deletions(-)
>
> qemu-server:
>
> Dominik Csapak (11):
> usb: mapping: move implementation of find_on_current_node here
> pci: mapping: move implementation of find_on_current_node here
> pci: mapping: check mdev config against hardware
> vm stop-cleanup: allow callers to decide error behavior
> migrate: call vm_stop_cleanup after stopping in phase3_cleanup
> pci: set 'enable-migration' to on for live-migration marked mapped
> devices
> check_local_resources: add more info per mapped device and return as
> hash
> api: enable live migration for marked mapped pci devices
> api: include not mapped resources for running vms in migrate
> preconditions
> tests: cfg2cmd: fix mdev tests
> migration: show vfio state transferred too
>
> PVE/API2/Qemu.pm | 55 ++++++++++++++++++++------------
> PVE/CLI/qm.pm | 2 +-
> PVE/QemuMigrate.pm | 44 +++++++++++++++++--------
> PVE/QemuServer.pm | 30 ++++++++++-------
> PVE/QemuServer/PCI.pm | 24 ++++++++++++--
> PVE/QemuServer/USB.pm | 17 ++++++++--
> test/MigrationTest/Shared.pm | 3 ++
> test/run_config2command_tests.pl | 2 +-
> 8 files changed, 123 insertions(+), 54 deletions(-)
>
> pve-manager
>
> Dominik Csapak (5):
> mapping: pci: include mdev in config checks
> bulk migrate: improve precondition checks
> bulk migrate: include checks for live-migratable local resources
> ui: adapt migration window to precondition api change
> fix #5175: ui: allow configuring and live migration of mapped pci
> resources
>
> PVE/API2/Cluster/Mapping/PCI.pm | 2 +-
> PVE/API2/Nodes.pm | 27 ++++++++++++++--
> www/manager6/dc/PCIMapView.js | 6 ++++
> www/manager6/window/Migrate.js | 51 ++++++++++++++++++++-----------
> www/manager6/window/PCIMapEdit.js | 12 ++++++++
> 5 files changed, 76 insertions(+), 22 deletions(-)
>
> pve-docs:
>
> Dominik Csapak (2):
> qm: resource mapping: add description for `mdev` option
> qm: resource mapping: document `live-migration-capable` setting
>
> qm.adoc | 18 ++++++++++++++++++
> 1 file changed, 18 insertions(+)
>
Eneko Lacunza
Zuzendari teknikoa | Director técnico
Binovo IT Human Project
Tel. +34 943 569 206 | https://www.binovo.es
Astigarragako Bidea, 2 - 2º izda. Oficina 10-11, 20180 Oiartzun
https://www.youtube.com/user/CANALBINOVO
https://www.linkedin.com/company/37269706/
[-- Attachment #2: Type: text/plain, Size: 160 bytes --]
_______________________________________________
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel
next prev parent reply other threads:[~2025-03-05 10:35 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-01-20 14:51 Dominik Csapak
2025-01-20 14:51 ` [pve-devel] [PATCH guest-common v5 1/3] mapping: pci: check the mdev configuration on the device too Dominik Csapak
2025-01-20 14:51 ` [pve-devel] [PATCH guest-common v5 2/3] mapping: pci: add 'live-migration-capable' flag to mappings Dominik Csapak
2025-01-20 14:51 ` [pve-devel] [PATCH guest-common v5 3/3] mapping: remove find_on_current_node Dominik Csapak
2025-01-22 8:16 ` Dominik Csapak
2025-01-22 15:10 ` Thomas Lamprecht
2025-01-20 14:51 ` [pve-devel] [PATCH qemu-server v5 01/11] usb: mapping: move implementation of find_on_current_node here Dominik Csapak
2025-01-20 14:51 ` [pve-devel] [PATCH qemu-server v5 02/11] pci: " Dominik Csapak
2025-02-11 12:45 ` Christoph Heiss
2025-02-13 9:30 ` Dominik Csapak
2025-01-20 14:51 ` [pve-devel] [PATCH qemu-server v5 03/11] pci: mapping: check mdev config against hardware Dominik Csapak
2025-01-20 14:51 ` [pve-devel] [PATCH qemu-server v5 04/11] vm stop-cleanup: allow callers to decide error behavior Dominik Csapak
2025-01-20 14:51 ` [pve-devel] [PATCH qemu-server v5 05/11] migrate: call vm_stop_cleanup after stopping in phase3_cleanup Dominik Csapak
2025-01-20 14:51 ` [pve-devel] [PATCH qemu-server v5 06/11] pci: set 'enable-migration' to on for live-migration marked mapped devices Dominik Csapak
2025-01-20 14:51 ` [pve-devel] [PATCH qemu-server v5 07/11] check_local_resources: add more info per mapped device and return as hash Dominik Csapak
2025-01-20 14:51 ` [pve-devel] [PATCH qemu-server v5 08/11] api: enable live migration for marked mapped pci devices Dominik Csapak
2025-01-20 14:51 ` [pve-devel] [PATCH qemu-server v5 09/11] api: include not mapped resources for running vms in migrate preconditions Dominik Csapak
2025-01-20 14:51 ` [pve-devel] [PATCH qemu-server v5 10/11] tests: cfg2cmd: fix mdev tests Dominik Csapak
2025-01-22 15:10 ` Thomas Lamprecht
2025-01-20 14:51 ` [pve-devel] [PATCH qemu-server v5 11/11] migration: show vfio state transferred too Dominik Csapak
2025-01-20 14:51 ` [pve-devel] [PATCH manager v5 1/5] mapping: pci: include mdev in config checks Dominik Csapak
2025-01-20 14:51 ` [pve-devel] [PATCH manager v5 2/5] bulk migrate: improve precondition checks Dominik Csapak
2025-02-11 12:50 ` Christoph Heiss
2025-01-20 14:51 ` [pve-devel] [PATCH manager v5 3/5] bulk migrate: include checks for live-migratable local resources Dominik Csapak
2025-01-20 14:52 ` [pve-devel] [PATCH manager v5 4/5] ui: adapt migration window to precondition api change Dominik Csapak
2025-01-20 14:52 ` [pve-devel] [PATCH manager v5 5/5] fix #5175: ui: allow configuring and live migration of mapped pci resources Dominik Csapak
2025-01-20 14:52 ` [pve-devel] [PATCH docs v5 1/2] qm: resource mapping: add description for `mdev` option Dominik Csapak
2025-01-20 14:52 ` [pve-devel] [PATCH docs v5 2/2] qm: resource mapping: document `live-migration-capable` setting Dominik Csapak
2025-02-11 12:57 ` [pve-devel] [PATCH guest-common/qemu-server/manager/docs v5 0/3] implement experimental vgpu live migration Christoph Heiss
2025-03-05 10:34 ` Eneko Lacunza via pve-devel [this message]
2025-03-06 11:06 ` Dominik Csapak
2025-03-06 14:42 ` Eneko Lacunza via pve-devel
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=mailman.778.1741170936.293.pve-devel@lists.proxmox.com \
--to=pve-devel@lists.proxmox.com \
--cc=elacunza@binovo.es \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal