On Fri, Jun 09, 2017 at 09:58:47AM +0800, Peter Xu wrote: > > > The problem is that when I was fixing the problem that vhost had with > > > PT (a764040, "exec: abstract address_space_do_translate()"), I did > > > broke the IOTLB translation a bit (it was using page masks). IMHO we > > > need to fix it first for correctness (patch 1/2). > > > > > > For patch 3, if we can have Jason's patch to allow dynamic > > > iommu_platform switching, that'll be the best, then I can rewrite > > > patch 3 with the switching logic rather than caching anything. But > > > IMHO that can be separated from patch 1/2 if you like. > > > > > > Or do you have better suggestion on how should we fix it? > > > > > > Thanks, > > > > Can we drop masks completely and replace with length? I think we > > should do that instead of trying to fix masks. > > Do you mean to modify IOMMUTLBEntry.addr_mask into length?
I think it's better than alternatives. > Again, I am not sure this is good... At least we need to get ack from > David since spapr should be the initial user of it, and possibly also > Alex since vfio should be assuming that (IIUC both in QEMU and kernel) > addr_mask is page masks rather than arbirary length. > > (CC Alex) > > Thanks, Callbacks that need powers of two can easily split up the range. > -- > Peter Xu