public inbox for pve-devel@lists.proxmox.com
 help / color / mirror / Atom feed
* [PATCH common/manager/proxmox-perl-rs/qemu-server v2 0/5] use NVML for vGPU info querying
@ 2026-04-02 11:21 Dominik Csapak
  2026-04-02 11:22 ` [PATCH proxmox-perl-rs v2 1/1] pve: add binding for accessing vgpu info Dominik Csapak
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: Dominik Csapak @ 2026-04-02 11:21 UTC (permalink / raw)
  To: pve-devel

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




^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2026-04-02 11:22 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-04-02 11:21 [PATCH common/manager/proxmox-perl-rs/qemu-server v2 0/5] use NVML for vGPU info querying Dominik Csapak
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

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