In the Linux kernel, the following vulnerability has been resolved: vfio: Remove device debugfs before releasing devres VFIO device debugfs files created with debugfs_create_devm_seqfile() store a devres allocated debugfs_devm_entry as inode private data. vfio_unregister_group_dev() currently calls vfio_device_del() before vfio_device_debugfs_exit(), but device_del() releases devres. This can leave debugfs entries visible with stale inode private data while unregister waits for userspace references to drain. Remove the per-device debugfs tree before vfio_device_del(). The debugfs view is diagnostic only, so losing it at the start of unregister is preferable to preserving entries whose backing storage may already have been released. Complete the teardown by clearing the per-device debugfs root after removal. This matches the global debugfs root cleanup and prevents future users from mistaking a removed dentry for a live debugfs tree during the remainder of unregister.
https://git.kernel.org/stable/c/dc7fe87de492ea7f33a72b78d26650b75bf37f4f
https://git.kernel.org/stable/c/a5df401dc84f091e20b045560569f0736758fea7
https://git.kernel.org/stable/c/a53109ffb6b5148e11a27fb7670355b92db12dd3
https://git.kernel.org/stable/c/6cc60b41d61657dc469893d14e8e55d160056ff1