summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArthur Hanson Rasmusson <arthur@vgpu.io>2026-09-21 11:33:29 -0400
committerArthur Hanson Rasmusson <arthur@vgpu.io>2026-09-21 11:33:29 -0400
commit85084a8fc6a95dd88f81bbec31cffa6b4aba56b7 (patch)
treeca798964e0f29310e8ad0f6b8c9b4b8727047aa5
parent9ba056bd7a5d47a01287f66af7a11be9fc9d8fcc (diff)
downloadopen-iov-85084a8fc6a95dd88f81bbec31cffa6b4aba56b7.tar.gz
open-iov-85084a8fc6a95dd88f81bbec31cffa6b4aba56b7.zip
STATE.md: document available_instances counter-leak fix
-rw-r--r--STATE.md1
1 files changed, 1 insertions, 0 deletions
diff --git a/STATE.md b/STATE.md
index 2621bbd..dc81f80 100644
--- a/STATE.md
+++ b/STATE.md
@@ -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 |