From mboxrd@z Thu Jan 1 00:00:00 1970 From: Alex Williamson Subject: Re: [PATCH] On unmap, flush IOMMU TLB and return correct size Date: Wed, 25 Sep 2013 15:46:00 -0600 Message-ID: <1380145560.5197.94.camel@ul30vt.home> References: <1379818740.2547.51.camel@shinybook.infradead.org> <20130925155459.GA20372@8bytes.org> <1380125113.28494.14.camel@i7.infradead.org> <1380130588.3030.342.camel@ul30vt.home> <1380135148.28494.26.camel@i7.infradead.org> <1380138243.5197.20.camel@ul30vt.home> <1380139886.28494.31.camel@i7.infradead.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <1380139886.28494.31.camel-W2I5cNIroUsVm/YvaOjsyQ@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: iommu-bounces-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org Errors-To: iommu-bounces-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org To: David Woodhouse Cc: "Singh, Varinder" , "Sundaram, Rajesh" , "Kimmel, Jeff" , "iommu-cunTk1MwBs9QetFLy7KEm3xJsTq8ys+cHZ5vskTnxNA@public.gmane.org" , "Shankar, Hari" , "Spiller, John" List-Id: iommu@lists.linux-foundation.org T24gV2VkLCAyMDEzLTA5LTI1IGF0IDIxOjExICswMTAwLCBEYXZpZCBXb29kaG91c2Ugd3JvdGU6 Cj4gT24gV2VkLCAyMDEzLTA5LTI1IGF0IDEzOjQ0IC0wNjAwLCBBbGV4IFdpbGxpYW1zb24gd3Jv dGU6Cj4gPiBPbiBXZWQsIDIwMTMtMDktMjUgYXQgMTk6NTIgKzAxMDAsIERhdmlkIFdvb2Rob3Vz ZSB3cm90ZToKPiA+ID4gT24gV2VkLCAyMDEzLTA5LTI1IGF0IDExOjM2IC0wNjAwLCBBbGV4IFdp bGxpYW1zb24gd3JvdGU6Cj4gPiA+ID4gT24gV2VkLCAyMDEzLTA5LTI1IGF0IDE3OjA1ICswMTAw LCBEYXZpZCBXb29kaG91c2Ugd3JvdGU6Cj4gPiA+ID4gPiBXaHkgd291bGQgaXQgZXZlciBjYXJl PyBJZiBpdCAqaGFwcGVucyogdG8gbWFwIHNvbWV0aGluZyB0aGF0IGNhbiB1c2UKPiA+ID4gPiA+ IGxhcmdlIHBhZ2VzLCB5YXkhLiBJZiBpdCBzdWJzZXF1ZW50bHkgYnJlYWtzIGFwYXJ0IHRob3Nl IGxhcmdlIHBhZ2VzIGJ5Cj4gPiA+ID4gPiB1bm1hcHBpbmcgNEtpQiBpbiB0aGUgbWlkZGxlLCBs ZXQgdGhlIElPTU1VIGRyaXZlciBicmVhayB0aGF0IGFwYXJ0Lgo+ID4gPiA+IAo+ID4gPiA+IENh biB0aGlzIGJlIGRvbmUgYXRvbWljYWxseT8gIEkgdGhvdWdodCBwYXJ0IG9mIHRoZSByZWFzb24g Zm9yIHRoaXMKPiA+ID4gPiBpbnRlcmZhY2Ugd2FzIHRoYXQgaW9tbXUgZHJpdmVycyB0eXBpY2Fs bHkgY291bGRuJ3QgcmVwbGFjZSBhIGh1Z2UgcGFnZQo+ID4gPiA+IHdpdGggbXVsdGlwbGUgc21h bGxlciBwYWdlcyBpbiB0aGUgcHJlc2VuY2Ugb2YgRE1BLgo+ID4gPiAKPiA+ID4gRm9yIHRoZSBJ bnRlbCBJT01NVSBpdCBjYW4uIFlvdSBjYW4gYXRvbWljYWxseSBjaGFuZ2UgZnJvbSBhIGxhcmdl IHBhZ2UKPiA+ID4gZW50cnksIHRvIGEgcG9pbnRlciB0byBhIGZ1bGwgc2V0IG9mIHNtYWxsZXIg cGFnZSB0YWJsZXMuIERvIHRoZSBJT1RMQgo+ID4gPiBmbHVzaCwgYW5kIGF0IG5vIHRpbWUgaXMg dGhlcmUgYW4gaW50ZXJydXB0aW9uIGluIHNlcnZpY2UuCj4gPiAKPiA+IENvb2wKPiA+IAo+ID4g PiBOb3Qgc3VyZSBpZiB0aGlzIGlzIHRydWUgZm9yICphbGwqIElPTU1VIGhhcmR3YXJlOyBJJ2Qg YmUgcGVyZmVjdGx5Cj4gPiA+IGhhcHB5IHRvIGFjY2VwdCBhIHZhcmlhbnQgb2YgSsO2cmcncyBw cm9wb3NhbCB0aGF0IHdlIHNob3VsZCBvbmx5IGV2ZXIKPiA+ID4gdW5tYXAgZXhhY3RseSB0aGUg c2FtZSByYW5nZSB0aGF0IHdlIG1hcHBlZC4gRXhjZXB0IHdlIHNob3VsZCBhbGxvdyB0aGUKPiA+ ID4gdW5tYXBwaW5nIG9mIGFkamFjZW50IHJlZ2lvbnMgdG9nZXRoZXI7IGp1c3Qgbm90IGEgcGFy dGlhbCB1bm1hcCBvZgo+ID4gPiBzb21ldGhpbmcgdGhhdCB3YXMgbWFwcGVkIGluIG9uZSBnby4K PiA+IAo+ID4gV2VsbCwgZXhjZXB0IGlmIHdlJ3ZlIGp1c3QgdHJ1c3RlZCB0aGUgSU9NTVUgZHJp dmVyIHRvIGFkZCBhIGRldmljZQo+ID4gYmVoaW5kIGEgbm9uLVNQIGNhcGFibGUgSU9NTVUgdG8g b3VyIGRvbWFpbiBhbmQgY29udmVydCB0aGUgcGFnZSB0YWJsZXMsCj4gPiB0aGF0IHBhcnRpYWwg dW5tYXAgaXMgbm8gbG9uZ2VyIHBhcnRpYWwgYW5kIG5vdyB3ZSBnZXQgZGlmZmVyZW50Cj4gPiBi ZWhhdmlvciB0aGFuIGJlZm9yZSBzbyB3ZSBjYW4ndCBkZXBlbmQgb24gdGhhdCBhZGphY2VudCB1 bm1hcHBpbmcuCj4gCj4gUXVlPwo+IAo+IErDtnJnJ3MgcHJvcG9zYWwgd2FzIHRoYXQgaWYgeW91 IGFkZCBhIG1hcHBpbmcgYXQgYSBnaXZlbiBhZGRyZXNzK3NpemUsCj4geW91IHNob3VsZCBhbHdh eXMgcmVtb3ZlICpleGFjdGx5KiB0aGF0IGFkZHJlc3Mrc2l6ZS4gV2hpY2ggd2lsbCBhbHdheXMK PiB3b3JrIGV4YWN0bHkgdGhlIHNhbWUsIHJlZ2FyZGxlc3Mgb2Ygc3VwZXJwYWdlcy4KPiAKPiBN eSBzbGlnaHQgY2hhbmdlIHRvIHRoYXQgd2FzIHRoYXQgaWYgeW91IGFsc28gYWRkZWQgYW4gKmFk amFjZW50Kgo+IG1hcHBpbmcgYXQgYWRkcmVzczIrc2l6ZTIsIHlvdSBzaG91bGQgYmUgYWJsZSB0 byB1bm1hcCBib3RoIGF0IHRoZSBzYW1lCj4gdGltZS4gV2hpY2ggd2lsbCAqYWxzbyogYWx3YXlz IHdvcmsgdGhlIHNhbWUgcmVnYXJkbGVzcyBvZiBzdXBlcnBhZ2VzLgo+IAo+IEV2ZW4gaWYgeW91 ciB0d28gbWFwcGluZ3Mgd2VyZSBhbHNvICpwaHlzaWNhbGx5KiBjb250aWd1b3VzLCBhbmQgKmNv dWxkKgo+IGhhdmUgdXNlZCBzdXBlcnBhZ2VzLCB0aGV5IHByb2JhYmx5IHdvbid0IGFueXdheSBi ZWNhdXNlIHlvdSBtYXBwZWQgdGhlbQo+IGluIHR3byBwYXJ0cy4KCk9rLCBzb3VuZHMgcmVhc29u YWJsZS4gIEkgc29tZWhvdyByZWFkIGl0IHRvIHN0aWxsIGluY2x1ZGUgc29tZSBhc3BlY3QKb2Yg dGhlICJmaWxsIGluIHRoZSBzaXplIiBBUEkgd2UgaGF2ZSBub3cuCgo+ID4gPiA+ICBXaGF0IGhh cHBlbnMgaWYgbXkgSU9NTVUgZG9tYWluIG1ha2VzIHVzZSBvZiBzdXBlciBwYWdlcyBhbmQKPiA+ ID4gPiB0aGVuIEkgYWRkIGEgbmV3IGRldmljZSBiZWhpbmQgYSBuZXcgSU9NTVUgd2l0aG91dCBo YXJkd2FyZSBzdXBlciBwYWdlCj4gPiA+ID4gc3VwcG9ydD8gCj4gPiA+IAo+ID4gPiBDdXJyZW50 bHksIHlvdSBlbmQgdXAgd2l0aCB0aGUgZG9tYWluIGhhcHBpbHkgaW5jbHVkaW5nIHN1cGVycGFn ZXMsIGFuZAo+ID4gPiB0aGUgbGVzcyBjYXBhYmxlIElPTU1VIHRoYXQgeW91IGFkZGVkIGxhdGVy IHdvbid0IGNvcGUuCj4gPiAKPiA+IFRoaXMgaXMgdGhlIHRyb3VibGUgd2l0aCB0cnVzdGluZyB0 aGUgaW9tbXUgZHJpdmVyLiA7KQo+IAo+IFNvcnJ5LCBJIHNob3VsZCBoYXZlIG1hZGUgaXQgY2xl YXJlciB0aGF0IHRoaXMgaXMgYSAqYnVnKi4gSXQncyBub3QgYnkKPiBkZXNpZ24uIFRoZSBJT01N VSBkcml2ZXIgb3VnaHQgdG8gZ2V0IHRoaXMgcmlnaHQsIGFuZCB3aWxsIGRvLgo+IAo+ID4gPiAg V2hhdCB3ZSBwcm9iYWJseQo+ID4gPiAqb3VnaHQqIHRvIGRvIGlzIHdhbGsgdGhlIHBhZ2UgdGFi bGVzIGFuZCBjb252ZXJ0IGFueSBwcmUtZXhpc3RpbmcKPiA+ID4gc3VwZXJwYWdlcyB0byBzbWFs bCBwYWdlcywgYXQgdGhlIHRpbWUgd2UgYWRkIHRoZSBub24tU1AtY2FwYWJsZSBJT01NVS4KPiA+ IAo+ID4gQW5kIHRoZW4gd2UgbmVlZCB0byBmaWd1cmUgb3V0IGhvdyB0byBoYW5kbGUgdGhhdCBp biB0aGUgcHJvcG9zZWQKPiA+IGludGVyZmFjZSBjaGFuZ2VzIGFib3ZlIHNpbmNlIGl0IGNoYW5n ZXMgdGhlIHVubWFwIGJlaGF2aW9yIHRvIHRoZSBuYWl2ZQo+ID4gdXNlci4gCj4gCj4gSXNuJ3Qg dGhhdCB3aGF0IHlvdSdkICpleHBlY3QqPyBTdXJlbHkgeW91IGRvbid0ICpleHBlY3QqIHRoZSBi cmVha2FnZQo+IHlvdSBjdXJyZW50bHkgZ2V0PwoKRm9yIHZmaW8gSSBjdXJyZW50bHkgbWFrZSB0 aGUgc2FtZSBzdGF0ZW1lbnQgdGhhdCB5b3UncmUgcHVzaGluZyBmb3IgdGhlCklPTU1VIEFQSTsg SSBvbmx5IGd1YXJhbnRlZSB1bm1hcHBpbmcgYXQgdGhlIHNhbWUgZ3JhbnVsYXJpdHkgYXMgdGhl Cm9yaWdpbmFsIG1hcHBpbmcuICBTbyB0aGF0IHNlZW1zIGZpbmUgdG8gbWUuCgo+ID4gIFRoZXJl J3MgYWxzbyB0aGUgcXVlc3Rpb24gb2Ygd2hldGhlciB0aGUgSU9NTVUgZHJpdmVyIHNob3VsZAo+ ID4gcmUtZXZhbHVhdGUgc3VwZXIgcGFnZXMgd2hlbiB0aGUgbGVzcyBjYXBhYmxlIElPTU1VIGlz IHJlbW92ZWQgZnJvbSB0aGUKPiA+IGRvbWFpbi4KPiAKPiBJIHdvdWxkbid0IGJvdGhlciB0byBn byBsb29raW5nIGZvciBvcHBvcnR1bml0aWVzIHRvIHVzZSBzdXBlciBwYWdlcyBpZgo+IHdlIHJl bW92ZSB0aGUgbGFzdCBub24tU1AtY2FwYWJsZSBJT01NVSBmcm9tIHRoZSBkb21haW4uCgpJIHBy ZWRpY3QgYnVncyBnZXR0aW5nIGZpbGVkIGlmIGEgZ3Vlc3Qgc2VlcyBhIHBlcmZvcm1hbmNlIGhp dCBhZnRlcgphZGRpbmcgYSBkZXZpY2UgdGhhdCBpcyBub3QgcmVzdG9yZWQgd2hlbiB0aGUgZGV2 aWNlIGlzIHJlbW92ZWQuICBJZgpvbmx5IHdlIGNvdWxkIGFzc3VtZSBhIHNpbWlsYXIgZmVhdHVy ZSBzZXQgYW1vbmcgSU9NTVVzIGluIGEgc3lzdGVtLgoKPiA+ID4gRldJVyB3ZSBjdXJyZW50bHkg c2NyZXcgdXAgdGhlIGhhbmRsaW5nIG9mIGNhY2hlLWNvaGVyZW50IHZzLgo+ID4gPiBub24tY29o ZXJlbnQgcGFnZSB0YWJsZXMgdG9vLiBUaGF0IG9uZSB3YW50cyBhIHdiaW52ZCBzb21ld2hlcmUg d2hlbiB3ZQo+ID4gPiBhZGQgYSBub24tY29oZXJlbnQgSU9NTVUgdG8gdGhlIGRvbWFpbi4KPiA+ IAo+ID4gWW91J3JlIG5vdCBzZWxsaW5nIHRoZSAidHJ1c3QgdGhlIElPTU1VIGRyaXZlciIgc3Rv cnkgdmVyeSB3ZWxsIGhlcmUuCj4gPiBDYW4gd2UgYXNzdW1lIHRoYXQgdGhlIElPTU1VX0NBQ0hF IGZsYWcgKFNOUCkgaXMgaWdub3JlZCBhcHByb3ByaWF0ZWx5Cj4gPiBieSBub24tY29oZXJlbnQg SU9NTVVzPyAgSXMgdGhlcmUgYW55IGRvd25zaWRlIHRvIGlnbm9yaW5nIGl0IGFuZCBhbHdheXMK PiA+IHNldHRpbmcgU05QIGluIHRoZSBJT01NVSBwYWdlIHRhYmxlcz8gIEFNRCBJT01NVSBpZ25v cmVzIGl0LCBidXQgaXQncwo+ID4gYWxzbyBhbHdheXMgY2FjaGUgY29oZXJlbnQuICBUaGFua3Ms Cj4gCj4gU05QIGlzIGEgc2VwYXJhdGUgaXNzdWUuIEknbSBzcGVha2luZyBvZiBjYWNoZSBjb2hl cmVuY3kgb2YgdGhlIGhhcmR3YXJlCj4gcGFnZSB0YWJsZSB3YWxrIOKAlCB0aGUgZmVhdHVyZSBi aXQgdGhhdCBhbGwgdGhlIGhvcnJpZCBjbGZsdXNoIGNhbGxzIGFyZQo+IHByZWRpY2F0ZWQgb24u Cj4gCj4gQWdhaW4sIHRoaXMgaXMganVzdCBhIGJ1Zy4gV2UgKnNob3VsZCogYmUgZ2V0dGluZyB0 aGlzIHJpZ2h0LCBidXQgZG9uJ3QKPiB5ZXQuCgpBbmQgZm9yIERNQV9QVEVfU05QPyAgaW50ZWxf aW9tbXVfbWFwKCkgd29uJ3QgbGV0IHVzIHNldCB0aGlzIGJpdCBpZiB0aGUKZG9tYWluIGNvbnRh aW5zIGEgaGFyZHdhcmUgdW5pdCB0aGF0IGRvZXNuJ3Qgc3VwcG9ydCBlY2FwLlNDLCBidXQgaXQK YWxzbyBkb2Vzbid0IHVwZGF0ZSBleGlzdGluZyBtYXBwaW5ncy4gIEJhcnJpbmcgaGFyZHdhcmUg YnVncywgaXQgc2VlbXMKbXVjaCBlYXNpZXIgdG8gdW5jb25kaXRpb25hbGx5IHNldCBETUFfUFRF X1NOUCBidXQgc3RpbGwgYWR2ZXJ0aXNlCklPTU1VX0NBUF9DQUNIRV9DT0hFUkVOQ1kgYmFzZWQg b24gdGhlIGNvbXBvc2l0aW9uIG9mIHRoZSBkb21haW4uCk90aGVyd2lzZSB3ZSBoYXZlIHRvIHJl amVjdCBhZGRpbmcgZGV2aWNlcyB0byBhIGRvbWFpbiB0aGF0IGNoYW5nZSB0aGUKY29oZXJlbmN5 IG9uY2UgRE1BIG1hcHBpbmdzIGFyZSBpbiBwbGF5IG9yIG5ldmVyIHNldCBJT01NVV9DQUNIRSBh bmQKYWR2ZXJ0aXNlIHRvIEtWTSB0aGF0IHRoZSBkb21haW4gaXMgYWx3YXlzIG5vbi1jb2hlcmVu dC4gIFRoYW5rcywKCkFsZXgKCgoKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fCmlvbW11IG1haWxpbmcgbGlzdAppb21tdUBsaXN0cy5saW51eC1mb3VuZGF0 aW9uLm9yZwpodHRwczovL2xpc3RzLmxpbnV4Zm91bmRhdGlvbi5vcmcvbWFpbG1hbi9saXN0aW5m by9pb21tdQ==