Re: [PATCH 1/2] vfio: Publish the container after all fallible initialization
From: Jason Gunthorpe
Date: Mon Nov 02 2026 - 20:12:47 EST
On Fri, Oct 30, 2026 at 09:25:26PM -0700, Kyle Zeng wrote:
> vfio_group_init() publishes /dev/vfio/vfio before vfio_init() has
> finished. The optional no-IOMMU backend is also registered after the
> misc device. A concurrent open can therefore obtain a container while
> the module is still COMING, even if a later initialization step fails.
You didn't cc the vfio maintainers or the its list.
Nor did you refer to my prior remarks here:
https://lore.kernel.org/all/20261030120845.GA3889730@xxxxxxxx/
> The failed-module-init path frees the module without waiting for these
> open files.
This is a cdev core bug. It should not allow the file to be opened
until it has secured a module refcount. I don't know much about how
the module refcounting mechanisms work, but it is unreasonable to fix
it like you are doing here by hacking every misc user in the kernel.
Jason