[pve-devel] [PATCH common/qemu-server] improve sysfs write behaviour
Stoiko Ivanov
s.ivanov at proxmox.com
Tue Nov 5 11:12:56 CET 2024
Thanks big-time for the quick fix!
I encountered this at a machine at home with an older GPU (NVIDIA GT1030)
passed through to a VM, which seemingly does not handle resets too well.
with both patches applied the guest starts again w/o error - the tasklog
contains:
```
error writing '1' to '/sys/bus/pci/devices/0000:01:00.0/reset': Inappropriate ioctl for device
can't reset PCI device '0000:01:00.0'
```
(similarly this is the output when starting on the commandline with
`qm start <vmid>`)
with or without the nit/idea for the qemu-server 1/1 patch consider this:
Reviewed-by: Stoiko Ivanov <s.ivanov at proxmox.com>
Tested-by: Stoiko Ivanov <s.ivanov at proxmox.com>
On Tue, 5 Nov 2024 10:24:19 +0100
Dominik Csapak <d.csapak at proxmox.com> wrote:
> As i feared previously in [0], making it a hard error when encountering
> errors during sysfs writes uncovered some situations where our code was
> too strict to keep some setups working.
>
> One such case is resetting devices, which is seemingly not necessary
> at all times, so this series
>
> * donwgrades that error to warning
> * adds some more logging to `file_write` to be able to better debug
>
> Alternatively, we could rewrite file_write such that we can control the
> error behaviour with a parameter and replace all "old" call sites so
> that we ignore errors. But since the only other call sites currently are
> for binding vfio-pci to the device. (which AFAIK is necessary and not
> optional) and setting mdev models (which is also not optional), we should
> mostly be fine with this approach here.
>
> In [1], some users reported it's breaking, at least one with binding of
> vfio-pci, which I'm currently investigating there to see if it's really
> necessary.
>
> 0: https://lore.proxmox.com/pve-devel/20240723082925.934603-1-d.csapak@proxmox.com/
> 1: https://forum.proxmox.com/threads/156848/
>
> pve-common:
>
> Dominik Csapak (1):
> sysfstools: file_write: log the actual error if there was one
>
> src/PVE/SysFSTools.pm | 7 ++++++-
> 1 file changed, 6 insertions(+), 1 deletion(-)
>
> qemu-server:
>
> Dominik Csapak (1):
> pci: don't hard require resetting devices for passthrough
>
> PVE/QemuServer/PCI.pm | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
More information about the pve-devel
mailing list