public inbox for pve-devel@lists.proxmox.com
 help / color / mirror / Atom feed
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

  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