[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 3/3] intel-iommu: PASID support
|
From: |
Jason Wang |
|
Subject: |
Re: [PATCH 3/3] intel-iommu: PASID support |
|
Date: |
Fri, 14 Jan 2022 15:22:16 +0800 |
On Fri, Jan 14, 2022 at 3:13 PM Peter Xu <peterx@redhat.com> wrote:
>
> On Fri, Jan 14, 2022 at 01:58:07PM +0800, Jason Wang wrote:
> > > > Right, but I think you meant to do this only when scalable mode is
> > > > disabled.
> > >
> > > Yes IMHO it will definitely suite for !scalable case since that's exactly
> > > what
> > > we did before. What I'm also wondering is even if scalable is enabled
> > > but no
> > > "real" pasid is used, so if all the translations go through the default
> > > pasid
> > > that stored in the device context entry, then maybe we can ignore
> > > checking it.
> > > The latter is the "hacky" part mentioned above.
> >
> > The problem I see is that we can't know what PASID is used as default
> > without reading the context entry?
>
> Can the default NO_PASID being used in mixture of !NO_PASID use case on the
> same device? If that's possible, then I agree..
My understanding is that it is possible.
>
> My previous idea should be based on the fact that if NO_PASID is used on one
> device, then all translations will be based on NO_PASID, but now I'm not sure
> of it.
Actually, what I meant is:
device 1 using transactions without PASID with RID2PASID 1
device 2 using transactions without PASID with RID2PASID 2
Then we can't assume a default pasid here.
>
> >
> > >
> > > The other thing to mention is, if we postpone the iotlb lookup to be after
> > > context entry, then logically we can have per-device iotlb, that means we
> > > can
> > > replace IntelIOMMUState.iotlb with VTDAddressSpace.iotlb in the future,
> > > too,
> > > which can also be more efficient.
> >
> > Right but we still need to limit the total slots and ATS is a better
> > way to deal with the IOTLB bottleneck actually.
>
> I think it depends on how the iotlb ghash is implemented. Logically I think
> if
> we can split the cache to per-device it'll be slightly better because we don't
> need to iterate over iotlbs of other devices when lookup anymore; meanwhile
> each iotlb takes less space too (no devfn needed anymore).
So we've already used sid in the IOTLB hash, I wonder how much we can
gain form this.
Thanks
>
> Thanks,
>
> --
> Peter Xu
>
- Re: [PATCH 2/3] intel-iommu: drop VTDBus, (continued)
[PATCH 3/3] intel-iommu: PASID support, Jason Wang, 2022/01/04
- Re: [PATCH 3/3] intel-iommu: PASID support, Peter Xu, 2022/01/13
- Re: [PATCH 3/3] intel-iommu: PASID support, Michael S. Tsirkin, 2022/01/13
- Re: [PATCH 3/3] intel-iommu: PASID support, Jason Wang, 2022/01/13
- Re: [PATCH 3/3] intel-iommu: PASID support, Peter Xu, 2022/01/13
- Re: [PATCH 3/3] intel-iommu: PASID support, Jason Wang, 2022/01/14
- Re: [PATCH 3/3] intel-iommu: PASID support, Peter Xu, 2022/01/14
- Re: [PATCH 3/3] intel-iommu: PASID support,
Jason Wang <=
- Re: [PATCH 3/3] intel-iommu: PASID support, Peter Xu, 2022/01/14
- Re: [PATCH 3/3] intel-iommu: PASID support, Jason Wang, 2022/01/14
- Re: [PATCH 3/3] intel-iommu: PASID support, Liu Yi L, 2022/01/14
- Re: [PATCH 3/3] intel-iommu: PASID support, Jason Wang, 2022/01/17