diff options
| author | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-09-21 11:33:29 -0400 |
|---|---|---|
| committer | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-09-21 11:33:29 -0400 |
| commit | 85084a8fc6a95dd88f81bbec31cffa6b4aba56b7 (patch) | |
| tree | ca798964e0f29310e8ad0f6b8c9b4b8727047aa5 | |
| parent | 9ba056bd7a5d47a01287f66af7a11be9fc9d8fcc (diff) | |
| download | open-iov-85084a8fc6a95dd88f81bbec31cffa6b4aba56b7.tar.gz open-iov-85084a8fc6a95dd88f81bbec31cffa6b4aba56b7.zip | |
STATE.md: document available_instances counter-leak fix
| -rw-r--r-- | STATE.md | 1 |
1 files changed, 1 insertions, 0 deletions
@@ -31,6 +31,7 @@ against the emulated vGPU, then `nvidia-smi`, then CUDA validation. | Bug | Root cause | Fix | |-----|-----------|-----| +| `available_instances` stuck at 0, mdev create fails `-EUSERS` | mdev core's shared `parent->available_instances` counter leaked on crashed removes | `mdev_driver.get_available` callback computes availability from the driver's own device list (kernel/main.c) | | Module unload hang (`open_iov_vfio` stuck "Unloading") | Legacy `nv_vgpu_gsp_init()` booting physical GSP firmware, conflicting with host nvidia.ko; unload blocked in `cancel_work_sync` | Skip legacy GSP boot, use `gsp_emu_init()`; thread-stop via completion with 5s timeout; `cancel_work_sync` before `destroy_workqueue` | | mdev remove kernel panic (`vfio_device_group_unregister+0xa`) | NULL deref on VFIO group unregister | Defensive cleanup ordering in `nv_vgpu_mdev_remove()` | | mdev creation `EINVAL` (-22) | Double IOMMU group handling conflicted with `vfio_register_emulated_iommu_dev()` | Let VFIO create its own group; IOMMUFD emulated callbacks wired | |
