Re: [PATCH v3 0/5] Update vfio_group to use the modern cdev lifecycle

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 15 Oct 2021 08:40:49 -0300
Jason Gunthorpe <jgg@xxxxxxxxxx> wrote:

> These days drivers with state should use cdev_device_add() and
> cdev_device_del() to manage the cdev and sysfs lifetime. This simple
> pattern ties all the state (vfio, dev, and cdev) together in one memory
> structure and uses container_of() to navigate between the layers.
> 
> This is a followup to the discussion here:
> 
> https://lore.kernel.org/kvm/20210921155705.GN327412@xxxxxxxxxx/
> 
> This builds on Christoph's work to revise how the vfio_group works and is
> against the latest VFIO tree.
> 
> This is on github: https://github.com/jgunthorpe/linux/commits/vfio_group_cdev
> 
> v3:
>  - Streamline vfio_group_find_or_alloc()
>  - Remove vfio_group_try_get() and just opencode the refcount_inc_not_zero
> v2: https://lore.kernel.org/r/0-v2-fd9627d27b2b+26c-vfio_group_cdev_jgg@xxxxxxxxxx
>  - Remove comment before iommu_group_unregister_notifier()
>  - Add comment explaining what the WARN_ONs vfio_group_put() do
>  - Fix error logic around vfio_create_group() in patch 3
>  - Add horizontal whitespace
>  - Clarify comment is refering to group->users
> v1: https://lore.kernel.org/r/0-v1-fba989159158+2f9b-vfio_group_cdev_jgg@xxxxxxxxxx
> 
> Cc: Liu Yi L <yi.l.liu@xxxxxxxxx>
> Cc: "Tian, Kevin" <kevin.tian@xxxxxxxxx>
> Cc: Christoph Hellwig <hch@xxxxxx>
> Signed-off-by: Jason Gunthorpe <jgg@xxxxxxxxxx>
> 
> Jason Gunthorpe (5):
>   vfio: Delete vfio_get/put_group from vfio_iommu_group_notifier()
>   vfio: Do not open code the group list search in vfio_create_group()
>   vfio: Don't leak a group reference if the group already exists
>   vfio: Use a refcount_t instead of a kref in the vfio_group
>   vfio: Use cdev_device_add() instead of device_create()
> 
>  drivers/vfio/vfio.c | 381 +++++++++++++++++---------------------------
>  1 file changed, 149 insertions(+), 232 deletions(-)

Applied to vfio next branch for v5.16.  Thanks,

Alex




[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux