Re: [PATCH v3 02/16] iommufd/viommu: Add a default_viommu_ops for IOMMU_VIOMMU_TYPE_DEFAULT

2024-10-17 Thread Jason Gunthorpe
On Thu, Oct 17, 2024 at 11:50:44AM -0700, Nicolin Chen wrote:
> On Thu, Oct 17, 2024 at 03:47:29PM -0300, Jason Gunthorpe wrote:
> > On Wed, Oct 09, 2024 at 09:38:14AM -0700, Nicolin Chen wrote:
> > > An IOMMU_VIOMMU_TYPE_DEFAULT doesn't need a free() op since the core can
> > > free everything in the destroy(). Now with the new vDEVICE structure, it
> > > might want to allocate its own vDEVICEs.
> > > 
> > > Add a default_viommu_ops for driver to hook ops for default vIOMMUs.
> > 
> > Why? arm_smmu is now creating its own viommu object, so who will use
> > this?
> > 
> > Do we have any use for the default mode? It is already a bit
> > confusing, can we just drop it?
> 
> Hmm, that would make the default model completely useless..
> 
> Should we unsupport a default viommu allocation?

This is my ask?

Jason



Re: [PATCH v3 02/16] iommufd/viommu: Add a default_viommu_ops for IOMMU_VIOMMU_TYPE_DEFAULT

2024-10-17 Thread Nicolin Chen
On Thu, Oct 17, 2024 at 03:47:29PM -0300, Jason Gunthorpe wrote:
> On Wed, Oct 09, 2024 at 09:38:14AM -0700, Nicolin Chen wrote:
> > An IOMMU_VIOMMU_TYPE_DEFAULT doesn't need a free() op since the core can
> > free everything in the destroy(). Now with the new vDEVICE structure, it
> > might want to allocate its own vDEVICEs.
> > 
> > Add a default_viommu_ops for driver to hook ops for default vIOMMUs.
> 
> Why? arm_smmu is now creating its own viommu object, so who will use
> this?
> 
> Do we have any use for the default mode? It is already a bit
> confusing, can we just drop it?

Hmm, that would make the default model completely useless..

Should we unsupport a default viommu allocation?

Nicolin



Re: [PATCH v3 02/16] iommufd/viommu: Add a default_viommu_ops for IOMMU_VIOMMU_TYPE_DEFAULT

2024-10-17 Thread Jason Gunthorpe
On Wed, Oct 09, 2024 at 09:38:14AM -0700, Nicolin Chen wrote:
> An IOMMU_VIOMMU_TYPE_DEFAULT doesn't need a free() op since the core can
> free everything in the destroy(). Now with the new vDEVICE structure, it
> might want to allocate its own vDEVICEs.
> 
> Add a default_viommu_ops for driver to hook ops for default vIOMMUs.

Why? arm_smmu is now creating its own viommu object, so who will use
this?

Do we have any use for the default mode? It is already a bit
confusing, can we just drop it?

Jason