lkml.org 
[lkml]   [2013]   [Jun]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH 3/4] KVM: PPC: Add support for IOMMU in-kernel handling
From
Date

On 19.06.2013, at 06:59, Benjamin Herrenschmidt wrote:

> On Wed, 2013-06-19 at 13:05 +0930, Rusty Russell wrote:
>> symbol_get() won't try to load a module; it'll just fail. This is what
>> you want, since they must have vfio in the kernel to get a valid fd...
>
> Ok, cool. I suppose what we want here Alexey is slightly higher level,
> something like:
>
> vfio_validate_iommu_id(file, iommu_id)
>
> Which verifies that the file that was passed in is allowed to use
> that iommu_id.
>
> That's a simple and flexible interface (ie, it will work even if we
> support multiple iommu IDs in the future for a vfio, for example
> for DDW windows etc...), the logic to know about the ID remains
> in qemu, this is strictly a validation call.
>
> That way we also don't have to expose the containing vfio struct etc...
> just that simple function.
>
> Alex, any objection ?

Which Alex? :)

I think validate works, it keeps iteration logic out of the kernel which is a good thing. There still needs to be an interface for getting the iommu id in VFIO, but I suppose that one's for the other Alex and Jörg to comment on.

>
> Do we need to make it a get/put interface instead ?
>
> vfio_validate_and_use_iommu(file, iommu_id);
>
> vfio_release_iommu(file, iommu_id);
>
> To ensure that the resource remains owned by the process until KVM
> is closed as well ?
>
> Or do we want to register with VFIO with a callback so that VFIO can
> call us if it needs us to give it up ?

Can't we just register a handler on the fd and get notified when it closes? Can you kill VFIO access without closing the fd?


Alex

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2013-06-19 12:21    [W:0.100 / U:0.328 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site