From: "Tian, Kevin" <kevin.tian@intel.com> To: Jean-Philippe Brucker <jean-philippe.brucker@arm.com>, valmiki <valmikibow@gmail.com>, Alex Williamson <alex.williamson@redhat.com> Cc: "iommu@lists.linux-foundation.org" <iommu@lists.linux-foundation.org>, "kvm@vger.kernel.org" <kvm@vger.kernel.org>, "linux-pci@vger.kernel.org" <linux-pci@vger.kernel.org>, "Lan, Tianyu" <tianyu.lan@intel.com>, "Pan, Jacob jun" <jacob.jun.pan@intel.com> Subject: RE: Support SVM without PASID Date: Fri, 11 Aug 2017 06:29:43 +0000 [thread overview] Message-ID: <AADFC41AFE54684AB9EE6CBC0274A5D190D6ED70@SHSMSX101.ccr.corp.intel.com> (raw) In-Reply-To: <b973c557-1b4a-18d2-a05e-28680a49daf9@arm.com> PiBGcm9tOiBKZWFuLVBoaWxpcHBlIEJydWNrZXIgW21haWx0bzpqZWFuLXBoaWxpcHBlLmJydWNr ZXJAYXJtLmNvbV0NCj4gU2VudDogRnJpZGF5LCBBdWd1c3QgNCwgMjAxNyA1OjQzIFBNDQo+IA0K PiBIaSBLZXZpbiwNCj4gDQo+IE9uIDA0LzA4LzE3IDAyOjQ5LCBUaWFuLCBLZXZpbiB3cm90ZToN Cj4gPj4gRnJvbTogSmVhbi1QaGlsaXBwZSBCcnVja2VyDQo+ID4+IFNlbnQ6IFR1ZXNkYXksIEF1 Z3VzdCAxLCAyMDE3IDQ6MjYgUE0NCj4gPj4NCj4gPj4gSXQgZGVwZW5kcyB3aGF0IHR5cGUgeW91 IHVzZSB3aGVuIHJlZ2lzdGVyaW5nIHRoZSBJT01NVSB3aXRoDQo+ID4+IFZGSU9fU0VUX0lPTU1V Og0KPiA+Pg0KPiA+PiAqIElmIHRoZSB0eXBlIGlzIFZGSU9fVFlQRTF2Ml9JT01NVSwgdGhlbg0K PiA+PiBWRklPX0lPTU1VX01BUC9VTk1BUF9ETUENCj4gPj4gICBhZmZlY3RzIHRoZSBzdGFnZS0x IG5vbi1QQVNJRCBjb250ZXh0IChhbHJlYWR5IHRoZSBjYXNlIGluIG1haW5saW5lKS4NCj4gPj4g ICBJbiBhZGRpdGlvbiwgd2l0aCBteSBwYXRjaCB0aGUgQklORCBpb2N0bCB3aWxsIGFmZmVjdCBz dGFnZS0xIFBBU0lEDQo+ID4+ICAgY29udGV4dHMsIGFuZCBiaW5kIHByb2Nlc3MgcGFnZSBkaXJl Y3RvcmllcyB0byB0aGUgZGV2aWNlIChob3N0IFNWTSkuDQo+ID4+DQo+ID4+ICogSWYgdGhlIHR5 cGUgaXMgVkZJT19UWVBFMV9ORVNUSU5HX0lPTU1VLCB0aGVuDQo+ID4+IFZGSU9fSU9NTVVfTUFQ L1VOTUFQX0RNQQ0KPiA+PiAgIHdpbGwgYWZmZWN0IHN0YWdlLTIgbWFwcGluZ3MgKGFscmVhZHkg aW4gbWFpbmxpbmUpLg0KPiA+PiAgIFdpdGggbXkgU01NVSBwYXRjaCBzZXJpZXMsIHRoZSBCSU5E IGlvY3RsIGlzIG5vdCBzdXBwb3J0ZWQgaW4gdGhpcyBtb2RlLg0KPiA+PiAgIEJ1dCBpbiB0aGUg ZnV0dXJlLCBCSU5EIHdvdWxkIGFsbG93IHRvIG1hbmFnZSBzdGFnZS0xIGFzIHdlbGw6DQo+ID4+ ICAgLSBiaW5kIGEgcHJvY2VzcyBwYWdlIGRpcmVjdG9yeSAoaG9zdCBTVk0gd2l0aCBhZGRlZCBz dGFnZS0yKSwgb3INCj4gPg0KPiA+IEkgdGhvdWdodCBob3N0IFNWTSB3aWxsIG9ubHkgZ28gdGhy b3VnaCBWRklPX1RZUEUxdjJfSU9NTVUsDQo+ID4gc2luY2UgeW91IHNhaWQgc3RhZ2UtMiBpbiBB Uk0gU01NVSBpcyBvbmx5IGZvciBHUEEtPkhQQSB1c2FnZQ0KPiA+IGluIHByZXZpb3VzIGV4cGxh bmF0aW9uLiB0aGVuIHdoYXQgZG9lcyAiaG9zdCBTVk0gd2l0aCBhZGRlZA0KPiA+IHN0YWdlLTIi IG1lYW4gaGVyZT8NCj4gDQo+IEFoLCB0aGF0J3MganVzdCBhIGNyYXp5IGlkZWEgSSBoYWQuIEkn bSBub3Qgc3VyZSBpdCBpcyB1c2VmdWwgb3Igd29ydGgNCj4gaW1wbGVtZW50aW5nLCBidXQgaXQg aXMgb25lIG9mIHRoZSBwb3NzaWJpbGl0eSBvZmZlcmVkIGJ5IG5lc3RlZCB0cmFuc2xhdGlvbi4N Cj4gDQo+IENvbnNpZGVyIHRoZSBzaXR1YXRpb24gd2hlcmUgYSB1c2Vyc3BhY2UgZHJpdmVyIChu byB2aXJ0dWFsaXphdGlvbikgaXMNCj4gYnVpbHQgaW4gYSBjbGllbnQtc2VydmVyIGZhc2hpb246 IHRoZSBzZXJ2ZXIgY29udHJvbHMgYSBkZXZpY2UgYW5kIHNwYXducw0KPiBuZXcgcHJvY2Vzc2Vz IChjbGllbnRzKSwgZWFjaCBzaGFyaW5nIGEgY29udGV4dCB3aXRoIHRoZSBkZXZpY2UgdXNpbmcg aXRzDQo+IG93biBQQVNJRC4gSWYgdGhlIHNlcnZlciB3YW50cyB0byBoaWRlIHBhcnRzIG9mIHRo ZSBjbGllbnQgYWRkcmVzcyBzcGFjZQ0KPiBmcm9tIHRoZSBkZXZpY2UgKGUuZy4gLnRleHQpLCB0 aGVuIGl0IGNvdWxkIGNvbnRyb2wgc3RhZ2UtMiB2aWEgTUFQL1VOTUFQDQo+IHRvIHJlc3RyaWN0 IHRoZSBhZGRyZXNzIHNwYWNlLg0KDQpzdGFnZS0xIGlzIGxpbmtlZCB0byBDUFUgcGFnZSB0YWJs ZSAoVkEtPlBBKSBmb3IgU1ZNLCB3aGlsZSBwaHlzaWNhbCANCm1lbW9yeSBpcyBtYW5hZ2VkIGJ5 IGtlcm5lbC4gSSBkaWRuJ3QgY29tZSB1cCBhIGdvb2QgcmVhc29uIHdoeSANCnNlcnZlciBhcHBs aWNhdGlvbiBuZWVkcyBvciBoYXMga25vd2xlZGdlIHRvIGhpZGUgc29tZSByZXNvdXJjZSANCndo aWNoIGlzIG5vdCBtYW5hZ2VkIGJ5IGl0c2VsZi4uLg0KDQo+IA0KPiBJdCB3b3VsZCB1c2UgZGlm ZmVyZW50IHNlbWFudGljcyBvZiBNQVAvVU5NQVAgdGhvdWdoLCBhcyB0aGUgaW9jdGwgd291bGQN Cj4gb25seSBiZSB1c2VkIHRvIGRlZmluZSAxOjEgdHJhbnNsYXRpb24gd2luZG93cywgbm90IHBp biBtZW1vcnkuDQo+IA0KPiBUaGFua3MsDQo+IEplYW4NCg==
WARNING: multiple messages have this Message-ID (diff)
From: "Tian, Kevin" <kevin.tian@intel.com> To: Jean-Philippe Brucker <jean-philippe.brucker@arm.com>, valmiki <valmikibow@gmail.com>, Alex Williamson <alex.williamson@redhat.com> Cc: "iommu@lists.linux-foundation.org" <iommu@lists.linux-foundation.org>, "kvm@vger.kernel.org" <kvm@vger.kernel.org>, "linux-pci@vger.kernel.org" <linux-pci@vger.kernel.org>, "Lan, Tianyu" <tianyu.lan@intel.com>, "Pan, Jacob jun" <jacob.jun.pan@intel.com> Subject: RE: Support SVM without PASID Date: Fri, 11 Aug 2017 06:29:43 +0000 [thread overview] Message-ID: <AADFC41AFE54684AB9EE6CBC0274A5D190D6ED70@SHSMSX101.ccr.corp.intel.com> (raw) In-Reply-To: <b973c557-1b4a-18d2-a05e-28680a49daf9@arm.com> > From: Jean-Philippe Brucker [mailto:jean-philippe.brucker@arm.com] > Sent: Friday, August 4, 2017 5:43 PM > > Hi Kevin, > > On 04/08/17 02:49, Tian, Kevin wrote: > >> From: Jean-Philippe Brucker > >> Sent: Tuesday, August 1, 2017 4:26 PM > >> > >> It depends what type you use when registering the IOMMU with > >> VFIO_SET_IOMMU: > >> > >> * If the type is VFIO_TYPE1v2_IOMMU, then > >> VFIO_IOMMU_MAP/UNMAP_DMA > >> affects the stage-1 non-PASID context (already the case in mainline). > >> In addition, with my patch the BIND ioctl will affect stage-1 PASID > >> contexts, and bind process page directories to the device (host SVM). > >> > >> * If the type is VFIO_TYPE1_NESTING_IOMMU, then > >> VFIO_IOMMU_MAP/UNMAP_DMA > >> will affect stage-2 mappings (already in mainline). > >> With my SMMU patch series, the BIND ioctl is not supported in this mode. > >> But in the future, BIND would allow to manage stage-1 as well: > >> - bind a process page directory (host SVM with added stage-2), or > > > > I thought host SVM will only go through VFIO_TYPE1v2_IOMMU, > > since you said stage-2 in ARM SMMU is only for GPA->HPA usage > > in previous explanation. then what does "host SVM with added > > stage-2" mean here? > > Ah, that's just a crazy idea I had. I'm not sure it is useful or worth > implementing, but it is one of the possibility offered by nested translation. > > Consider the situation where a userspace driver (no virtualization) is > built in a client-server fashion: the server controls a device and spawns > new processes (clients), each sharing a context with the device using its > own PASID. If the server wants to hide parts of the client address space > from the device (e.g. .text), then it could control stage-2 via MAP/UNMAP > to restrict the address space. stage-1 is linked to CPU page table (VA->PA) for SVM, while physical memory is managed by kernel. I didn't come up a good reason why server application needs or has knowledge to hide some resource which is not managed by itself... > > It would use different semantics of MAP/UNMAP though, as the ioctl would > only be used to define 1:1 translation windows, not pin memory. > > Thanks, > Jean
next prev parent reply other threads:[~2017-08-11 6:29 UTC|newest] Thread overview: 48+ messages / expand[flat|nested] mbox.gz Atom feed top 2017-07-08 17:03 Support SVM without PASID valmiki 2017-07-08 17:03 ` valmiki 2017-07-08 20:02 ` Alex Williamson 2017-07-08 20:02 ` Alex Williamson 2017-07-09 3:15 ` valmiki 2017-07-09 9:29 ` Liu, Yi L 2017-07-10 0:14 ` Bob Liu 2017-07-10 0:14 ` Bob Liu 2017-07-10 19:31 ` Jerome Glisse 2017-07-12 16:23 ` valmiki 2017-07-12 16:23 ` valmiki 2017-07-11 10:56 ` Jean-Philippe Brucker 2017-07-11 10:56 ` Jean-Philippe Brucker 2017-07-12 16:27 ` valmiki 2017-07-12 16:27 ` valmiki 2017-07-12 16:48 ` Jean-Philippe Brucker 2017-07-22 2:05 ` valmiki 2017-08-01 8:26 ` Jean-Philippe Brucker 2017-08-01 8:26 ` Jean-Philippe Brucker 2017-08-01 17:38 ` valmiki 2017-08-01 17:38 ` valmiki 2017-08-01 18:40 ` Jean-Philippe Brucker 2017-08-05 5:14 ` valmiki 2017-08-07 10:31 ` Jean-Philippe Brucker 2017-08-07 12:18 ` Bob Liu 2017-08-07 12:18 ` Bob Liu 2017-08-07 12:52 ` Jean-Philippe Brucker 2017-08-08 0:51 ` Bob Liu 2017-08-08 0:51 ` Bob Liu 2017-08-09 15:01 ` Jean-Philippe Brucker 2017-08-11 6:41 ` Tian, Kevin 2017-08-11 9:25 ` Jean-Philippe Brucker 2017-08-11 9:25 ` Jean-Philippe Brucker 2017-08-11 9:36 ` Bob Liu 2017-08-12 12:10 ` valmiki 2017-08-14 7:49 ` Tian, Kevin 2017-08-28 13:10 ` Bharat Kumar Gogada 2017-08-28 13:10 ` Bharat Kumar Gogada 2017-08-29 1:32 ` Tian, Kevin 2017-08-04 1:49 ` Tian, Kevin 2017-08-04 1:49 ` Tian, Kevin 2017-08-04 9:42 ` Jean-Philippe Brucker 2017-08-11 6:29 ` Tian, Kevin [this message] 2017-08-11 6:29 ` Tian, Kevin 2017-08-11 16:25 ` Raj, Ashok 2017-08-14 8:00 ` Tian, Kevin 2017-08-14 8:00 ` Tian, Kevin 2017-08-14 9:07 ` Jean-Philippe Brucker
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=AADFC41AFE54684AB9EE6CBC0274A5D190D6ED70@SHSMSX101.ccr.corp.intel.com \ --to=kevin.tian@intel.com \ --cc=alex.williamson@redhat.com \ --cc=iommu@lists.linux-foundation.org \ --cc=jacob.jun.pan@intel.com \ --cc=jean-philippe.brucker@arm.com \ --cc=kvm@vger.kernel.org \ --cc=linux-pci@vger.kernel.org \ --cc=tianyu.lan@intel.com \ --cc=valmikibow@gmail.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.