[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v12 04/13] virtio-iommu: Add the iommu regions
From: |
Auger Eric |
Subject: |
Re: [PATCH v12 04/13] virtio-iommu: Add the iommu regions |
Date: |
Tue, 14 Jan 2020 09:37:51 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.4.0 |
Hi Peter,
On 1/13/20 8:53 PM, Peter Xu wrote:
> On Thu, Jan 09, 2020 at 03:43:10PM +0100, Eric Auger wrote:
>> Implement a callback called on PCI bus enumeration that
>> initializes for a given device on the bus hierarchy
>> an IOMMU memory region. The PCI bus hierarchy is stored
>> locally in IOMMUPciBus and IOMMUDevice objects.
>>
>> At the time of the enumeration, the bus number may not be
>> computed yet.
>>
>> So operations that will need to retrieve the IOMMUdevice
>> and its IOMMU memory region from the bus number and devfn,
>> once the bus number is garanteed to be frozen,
>> use an array of IOMMUPciBus, lazily populated.
>>
>> virtio_iommu_mr() is the top helper that allows to retrieve
>> the IOMMU memory region from the requester ID.
>>
>> Signed-off-by: Eric Auger <address@hidden>
>>
>> ---
>> v11 -> v12:
>> - add the iommu_find_iommu_pcibus() mechanics. Without it,
>> when attaching t device to a domain we could not check
>> the device is effectively protected by this IOMMU
>
> Sorry I probably lost the context again after read the previous
> version... Could you hint me what does this used for?
In v11 Jean pointed out that as_by_bus_num was not used in my series. I
first planned to remove it and then noticed that it could be useful to
test on "attach" whether the RID of the device effectively corresponds
to a device protected by the IOMMU and in the negative, return an error.
In https://patchwork.kernel.org/patch/11258269/#23067995
This is the same mechanics used in intel_iommu/smmu.
>
> In all cases, I see that virtio_iommu_mr() is introduced but not used.
> Would be good to put it into the patch where it's firstly used.
OK fair enough, I will put the helper in the same patch as the user as
you have requested that since the beginning ;-) The resulting patch may
be huge. Just hope nobody will request me to split it back ;-)
Thanks
Eric
>
> Thanks,
>
- [PATCH v12 00/13] VIRTIO-IOMMU device, Eric Auger, 2020/01/09
- [PATCH v12 01/13] migration: Support QLIST migration, Eric Auger, 2020/01/09
- [PATCH v12 02/13] virtio-iommu: Add skeleton, Eric Auger, 2020/01/09
- [PATCH v12 03/13] virtio-iommu: Decode the command payload, Eric Auger, 2020/01/09
- [PATCH v12 04/13] virtio-iommu: Add the iommu regions, Eric Auger, 2020/01/09
- Re: [PATCH v12 04/13] virtio-iommu: Add the iommu regions, Peter Xu, 2020/01/13
- [PATCH v12 05/13] virtio-iommu: Endpoint and domains structs and helpers, Eric Auger, 2020/01/09
- Re: [PATCH v12 05/13] virtio-iommu: Endpoint and domains structs and helpers, Peter Xu, 2020/01/13
- Re: [PATCH v12 05/13] virtio-iommu: Endpoint and domains structs and helpers, Auger Eric, 2020/01/14
- Re: [PATCH v12 05/13] virtio-iommu: Endpoint and domains structs and helpers, Peter Xu, 2020/01/14
- Re: [PATCH v12 05/13] virtio-iommu: Endpoint and domains structs and helpers, Auger Eric, 2020/01/15
- Re: [PATCH v12 05/13] virtio-iommu: Endpoint and domains structs and helpers, Peter Xu, 2020/01/15
- Re: [PATCH v12 05/13] virtio-iommu: Endpoint and domains structs and helpers, Auger Eric, 2020/01/15