Привет! Я уже довольно долго использую PCIe passthrough на сборке TRX50 Threadripper с Nvidia 4070ti Super Asus Tuf и AMD 7900xtx Sapphire Pulse. Недавно я заменил 4070ti Super на AMD 7700xt Sapphire Pulse, и у меня начались проблемы. На двух разных Windows VM всё проходит нормально, но после перезагрузки любой из них GUI Proxmox становится неотзываемым примерно на 30 секунд. Кажется, что происходит перезагрузка, но экран BIOS не появляется, и несколько устройств PCIe, помимо GPU, перестают отображаться в lspci. Мне приходится перезагружаться из GUI, когда он снова появляется, чтобы вернуть PCIe-устройства. Также я убедился, что устройства не находятся в одних и тех же группах IOMMU. Все мои слоты PCIe подключены к CPU, а не к чипсету. 7700xt находится в верхнем x16 слоте. Что ещё более странно, 7700xt отлично проходит в EndeavourOS VM, и я могу перезагружать гостя без проблем. Проблема звучит как баг сброса, но почему она затрагивает только Windows-гости?
Вот ещё несколько важных деталей: я использую softdep radeon pre: vfio-pci softdep amdgpu pre: vfio-pci softdep snd_hda_intel pre: vfio-pc и задаю идентификаторы устройств в vfio.conf. Я пробовал заблокировать драйверы и не блокировать их, используя softdep. HDR не работает, когда 7700xt проходит в Windows VM, но работает в EndeavourOS VM при тех же настройках. Мне приходится использовать vga=1 как для 7900xtx, так и для 7700xt в Windows-госте, иначе вообще не будет дисплея. Это не так для EndeavourOS VMs.
При запуске journalctl -p 4 после жёстких перезагрузок я получаю следующие ошибки:
Code: Apr 05 11:42:48 pve3 kernel: mce: [Hardware Error]: CPU 0: Machine Check: 0 Bank 28: bea000000505080b
Apr 05 11:42:48 pve3 kernel: mce: [Hardware Error]: TSC 0 ADDR fffff080807fe0 MISC d0150fff00000000 PPIN 2b0bb7e3cdc4045 SYND 5d000009 IPID 1002e1f002c00
Apr 05 11:42:48 pve3 kernel: mce: [Hardware Error]: PROCESSOR 2:a10f81 TIME 1743874964 SOCKET 0 APIC 0 microcode a108108
Эти ошибки не возникают при нормальных перезагрузках, но я сбросил CPU и RAM на всякий случай. RAM тестировалась более 8 часов, когда я впервые собрал систему. Если я быстро запущу journalctl -p 4 до сбоя/перезагрузки машины, я могу получить эти ошибки:
Code: Apr 05 11:39:27 pve3 pvedaemon[3134]: error writing '1' to '/sys/bus/pci/devices/0000:03:00.0/reset': Inappropriate ioctl for device
Apr 05 11:39:27 pve3 pvedaemon[3134]: failed to reset PCI device '0000:03:00.0', but trying to continue as not all devices need a reset
Apr 05 11:40:10 pve3 pvestatd[2051]: VM 303 qmp command failed - VM 303 not running
Apr 05 11:41:33 pve3 kernel: pcieport 0000:01:00.0: Unable to change power state from D3hot to D0, device inaccessible
7700xt - устройство 0000:03:00.0. Кто-нибудь может помочь?
Вот ещё несколько важных деталей: я использую softdep radeon pre: vfio-pci softdep amdgpu pre: vfio-pci softdep snd_hda_intel pre: vfio-pc и задаю идентификаторы устройств в vfio.conf. Я пробовал заблокировать драйверы и не блокировать их, используя softdep. HDR не работает, когда 7700xt проходит в Windows VM, но работает в EndeavourOS VM при тех же настройках. Мне приходится использовать vga=1 как для 7900xtx, так и для 7700xt в Windows-госте, иначе вообще не будет дисплея. Это не так для EndeavourOS VMs.
При запуске journalctl -p 4 после жёстких перезагрузок я получаю следующие ошибки:
Code: Apr 05 11:42:48 pve3 kernel: mce: [Hardware Error]: CPU 0: Machine Check: 0 Bank 28: bea000000505080b
Apr 05 11:42:48 pve3 kernel: mce: [Hardware Error]: TSC 0 ADDR fffff080807fe0 MISC d0150fff00000000 PPIN 2b0bb7e3cdc4045 SYND 5d000009 IPID 1002e1f002c00
Apr 05 11:42:48 pve3 kernel: mce: [Hardware Error]: PROCESSOR 2:a10f81 TIME 1743874964 SOCKET 0 APIC 0 microcode a108108
Эти ошибки не возникают при нормальных перезагрузках, но я сбросил CPU и RAM на всякий случай. RAM тестировалась более 8 часов, когда я впервые собрал систему. Если я быстро запущу journalctl -p 4 до сбоя/перезагрузки машины, я могу получить эти ошибки:
Code: Apr 05 11:39:27 pve3 pvedaemon[3134]: error writing '1' to '/sys/bus/pci/devices/0000:03:00.0/reset': Inappropriate ioctl for device
Apr 05 11:39:27 pve3 pvedaemon[3134]: failed to reset PCI device '0000:03:00.0', but trying to continue as not all devices need a reset
Apr 05 11:40:10 pve3 pvestatd[2051]: VM 303 qmp command failed - VM 303 not running
Apr 05 11:41:33 pve3 kernel: pcieport 0000:01:00.0: Unable to change power state from D3hot to D0, device inaccessible
7700xt - устройство 0000:03:00.0. Кто-нибудь может помочь?
