From: Dominik Csapak <d.csapak@proxmox.com>
To: pve-devel@lists.proxmox.com
Subject: [PATCH common/manager/proxmox-perl-rs/qemu-server v2 0/5] use NVML for vGPU info querying
Date: Thu, 2 Apr 2026 13:21:59 +0200 [thread overview]
Message-ID: <20260402112212.2294356-1-d.csapak@proxmox.com> (raw)
This series replaces Christoph's previous series[0]
It's more or less a rewrite, thus no v2 or similar, but some patches directly
take code from Christoph's attempt, so i marked those commits as
co-developed-by.
Changes:
Instead of using our own wrapper+high level abstraction use the already existing
'nvml-wrapper' and 'nvml-wrapper-sys' which had a very similar approach, but are
already packaged in debian. (though not fully up-to-date to what we need, so
i updated/backported the patches)
Also i expose two functions, 'creatable' and 'supported' for future proofing,
since we want to have a more complete response in the api about which profiles
are available.
I moved the code that depends on the perlmod binding to qemu-server for now
as it seemed fitting, we only need it there and in pve-manager
If wanted I can split it out into it's own package (proxmox-pci?
proxmox-hardware? proxmox-mdev?, not sure what's a good name for this), but
that could also be done later when we need it.
Also changed the format of the description from 'x,y,z' to 'x
y
z' since
that's what was there previously and what the gui expects. Also the fields
themselves can contain ',' so parsing would be unnecessarily hard when we use
commas.
The pve-common cleanup patch is optional, and as an alternative we could
just mark these deprecated and remove them with e.g. 10.0 so we can save us a
breaks cyclye for pve-common <-> qemu-server.
NOTE: qemu-server and pve-manager need a versioned dependency:
qemu-server on a bumped lib-pve-rs
pve-manager on a bumped qemu-server
(since i can't know the versions beforehad, i'll leave that to the committer)
The performance indicated by Christoph seems fine for me for now, so any
optimizations necessary, we can do later too (e.g. not unloading the module
somehow, or caching the json values in perl, etc.)
changes from v1:
* rebase on master (dropped debcargo patches since they're already applied)
* add dependency to d/control files
0: https://lore.proxmox.com/pve-devel/20260120131319.949986-1-c.heiss@proxmox.com/
proxmox-perl-rs:
Dominik Csapak (1):
pve: add binding for accessing vgpu info
pve-rs/Cargo.toml | 1 +
pve-rs/Makefile | 1 +
pve-rs/debian/control | 1 +
pve-rs/src/bindings/mod.rs | 3 ++
pve-rs/src/bindings/nvml.rs | 91 +++++++++++++++++++++++++++++++++++++
5 files changed, 97 insertions(+)
create mode 100644 pve-rs/src/bindings/nvml.rs
qemu-server:
Dominik Csapak (2):
pci: move mdev related code to own module
pci: mdev: use PVE::RS::NVML for nvidia mdev information
src/PVE/QemuServer.pm | 5 +-
src/PVE/QemuServer/Makefile | 1 +
src/PVE/QemuServer/PCI.pm | 58 +++--------
src/PVE/QemuServer/PCI/Makefile | 9 ++
src/PVE/QemuServer/PCI/Mdev.pm | 164 ++++++++++++++++++++++++++++++++
5 files changed, 190 insertions(+), 47 deletions(-)
create mode 100644 src/PVE/QemuServer/PCI/Makefile
create mode 100644 src/PVE/QemuServer/PCI/Mdev.pm
pve-manager:
Dominik Csapak (1):
api: hardware: pci: use NVML for querying mdev information
PVE/API2/Hardware/PCI.pm | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
pve-common:
Dominik Csapak (1):
sysfs tools: remove moved code
src/PVE/SysFSTools.pm | 111 ------------------------------------------
1 file changed, 111 deletions(-)
Summary over all repositories:
12 files changed, 290 insertions(+), 161 deletions(-)
--
Generated by git-murpp 0.8.1
next reply other threads:[~2026-04-02 11:21 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-04-02 11:21 Dominik Csapak [this message]
2026-04-02 11:22 ` [PATCH proxmox-perl-rs v2 1/1] pve: add binding for accessing vgpu info Dominik Csapak
2026-04-02 11:22 ` [PATCH qemu-server v2 1/2] pci: move mdev related code to own module Dominik Csapak
2026-04-02 11:22 ` [PATCH qemu-server v2 2/2] pci: mdev: use PVE::RS::NVML for nvidia mdev information Dominik Csapak
2026-04-02 11:22 ` [PATCH manager v2 1/1] api: hardware: pci: use NVML for querying " Dominik Csapak
2026-04-02 11:22 ` [PATCH common v2 1/1] sysfs tools: remove moved code Dominik Csapak
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=20260402112212.2294356-1-d.csapak@proxmox.com \
--to=d.csapak@proxmox.com \
--cc=pve-devel@lists.proxmox.com \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.