On Wed, Jan 15, 2025 at 02:39:55PM +1100, Alexey Kardashevskiy wrote: > > The thread was talking about the built-in support in iommufd to split > > mappings. > > Just to clarify - I am talking about splitting only "iommufd areas", not > large pages. In generality it is the same thing as you cannot generally guarantee that an area split doesn't also cross a large page. > If all IOMMU PTEs are 4k and areas are bigger than 4K => the hw > support is not needed to allow splitting. The comments above and below seem > to confuse large pages with large areas (well, I am consufed, at least). Yes, in that special case yes. > > That built-in support is only accessible through legacy APIs > > and should never be used in new qemu code. To use that built in > > support in new code we need to build new APIs. > > Why would not IOMMU_IOAS_MAP/UNMAP uAPI work? Thanks, I don't want to overload those APIs, I prefer to see a new API that is just about splitting areas. Splitting is a special operation that can fail depending on driver support. Jason