> From: Peter Xu [mailto:pet...@redhat.com] > Sent: Tuesday, March 6, 2018 2:56 PM > Subject: Re: [PATCH v3 00/12] Introduce new iommu notifier framework for > virt-SVA > > On Thu, Mar 01, 2018 at 06:33:23PM +0800, Liu, Yi L wrote: > > This patchset is to introduce a notifier framework for virt-SVA. > > You may find virt-SVA design details from the link below. > > > > https://lists.gnu.org/archive/html/qemu-devel/2017-04/msg04925.html > > > > SVA is short for Shared Virtual Addressing. This is also called Shared > > Virtual Memory in previous patchsets. However, SVM is confusing as it > > can also be short for Secure Virtual Machine. So this patchset use > > Shared Virtual Addressing instead of Shared Virtual Memory. And it > > would be applied in future (SVA)related patch series as well. > > > > Qemu has an existing notifier framework based on MemoryRegion, which > > are used for MAP/UNMAP. However, it is not well suited for virt-SVA. > > Reasons are as below: > > - virt-SVA works along with PT = 1 > > - if PT = 1 IOMMU MR are disabled so MR notifier are not registered > > - new notifiers do not fit nicely in this framework as they need to be > > registered even if PT = 1 > > - need a new framework to attach the new notifiers > > - Additional background can be got from: > > https://lists.gnu.org/archive/html/qemu-devel/2017-04/msg04931.html > > > > So a new iommu notifier framework is needed. This patchset introduces > > a notifier framework based on IOMMUSVAContext. IOMMUSVAContext is > > introduced to be an abstract of virt-SVA operations in Qemu. > > > > Patch Overview: > > * 1 - 2: rename existing naming, the IOMMU MemoryRegion Notifier > > framework > > * 3 - 4: introduce SVA notifier framework based on IOMMUSVAContext > > * 5 - 7: introduce PCISVAOps and expose the SVA notfier framework > > through hw/pci layer > > * 8 - 12: show the usage of SVA notifier in Intel vIOMMU emulator > > Do you have online branch so that I can check out?
yes, I should have pasted it. Here it is: https://github.com/luxis1999/sva_notifier.git > The patches are a bit scattered and it's really hard for me to > reference things within it... So a complete tree to read would be > nice. > > I roughly went over most of the patches, and the framework you > introduced is still not that clear to me. For now I feel like it can > be simplified somehow, but I'll hold and speak after I read the whole > tree again. > > Also, it'll be good too if you can always provide some status update > of the kernel-counterpart it. Good suggestion. For this patchset, it only affects Qemu. Yeah, but for the whole virt-SVA enabling, there is kernel-counterparts. I would do it in the virt-SVA patchset series. Thanks, Yi Liu