From mboxrd@z Thu Jan 1 00:00:00 1970 From: Vince Hsu Subject: Re: [PATCH 3/6] mmu: map small pages into big pages(s) by IOMMU if possible Date: Mon, 20 Apr 2015 19:55:01 +0800 Message-ID: <5534E915.9010605@nvidia.com> References: <1429182379-31964-1-git-send-email-vinceh@nvidia.com> <1429182379-31964-4-git-send-email-vinceh@nvidia.com> <553128CA.40304@nvidia.com> <5534E83D.80304@nvidia.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <5534E83D.80304-DDmLM1+adcrQT0dZR+AlfA@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: nouveau-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "Nouveau" To: Alexandre Courbot , Terje Bergstrom Cc: "nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org" , Ben Skeggs List-Id: nouveau.vger.kernel.org CgpPbiAwNC8yMC8yMDE1IDA3OjUxIFBNLCBWaW5jZSBIc3Ugd3JvdGU6Cj4gT24gMDQvMjAvMjAx NSAwMzo0OSBQTSwgQWxleGFuZHJlIENvdXJib3Qgd3JvdGU6Cj4+IE9uIFNhdCwgQXByIDE4LCAy MDE1IGF0IDEyOjM3IEFNLCBUZXJqZSBCZXJnc3Ryb20gCj4+IDx0YmVyZ3N0cm9tQG52aWRpYS5j b20+IHdyb3RlOgo+Pj4gT24gMDQvMTcvMjAxNSAwMjoxMSBBTSwgQWxleGFuZHJlIENvdXJib3Qg d3JvdGU6Cj4+Pj4gVHJhY2tpbmcgdGhlIFBERSBhbmQgUFRFIG9mIGVhY2ggbWVtb3J5IGNodW5r IGNhbiBwcm9iYWJseSBiZSBhdm9pZGVkCj4+Pj4gaWYgeW91IGNoYW5nZSB5b3VyIHVubWFwcGlu ZyBzdHJhdGVneS4gQ3VycmVudGx5IHlvdSBhcmUgZ29pbmcgdGhyb3VnaAo+Pj4+IHRoZSBsaXN0 IG9mIG52a21fdm1fYnBfbGlzdCwgYnV0IHlvdSBrbm93IHlvdXIgUERFIGFuZCBQVEUgYXJlIGFs d2F5cwo+Pj4+IGdvaW5nIHRvIGJlIGFkamFjZW50LCBzaW5jZSBhIG52a21fdm1hIHJlcHJlc2Vu dHMgYSBjb250aWd1b3VzIGJsb2NrCj4+Pj4gaW4gdGhlIEdQVSBWQS4gU28gd2hlbiB1bm1hcHBp bmcsIHlvdSBjYW4gc2ltcGx5IGNoZWNrIGZvciBlYWNoIFBURQo+Pj4+IGVudHJ5IHdoZXRoZXIg dGhlIElPTU1VIGJpdCBpcyBzZXQsIGFuZCB1bm1hcCBmcm9tIHRoZSBJT01NVSBzcGFjZQo+Pj4+ IGFmdGVyIHVubWFwcGluZyBmcm9tIHRoZSBHUFUgVkEgc3BhY2UsIGluIGEgbG9vcCBzaW1pbGFy IHRvIHRoYXQgb2YKPj4+PiBudmttX3ZtX3VubWFwX2F0KCkuCj4+Pj4KPj4+PiBUaGVuIHdlIG9u bHkgbmVlZCBwcml2LiBZb3UgYXJlIGtlZXBpbmcgdGhlIG52a21fbW1fbm9kZSBvZiB0aGUgSU9N TVUKPj4+PiBzcGFjZSBpbnRvIGl0LCBhbmQgeW91IG5lZWQgaXQgdG8gZnJlZSB0aGUgSU9NTVUg VkEgc3BhY2UuIElmIG9ubHkgd2UKPj4+PiBjb3VsZCBmaW5kIGFub3RoZXIgd2F5IHRvIHN0b3Jl IGl0LCB3ZSBjb3VsZCBnZXQgcmlkIG9mIHRoZSB3aG9sZQo+Pj4+IHN0cnVjdHVyZSBhbmQgYXNz b2NpYXRlZCBsaXN0X2hlYWQgaW4gbnZrbV92bWEuLi4KPj4+Pgo+Pj4+IEkgbmVlZCB0byBnaXZl IGl0IHNvbWUgbW9yZSB0aG91Z2h0cywgYW5kIHdlIHdpbGwgcHJvYmFibHkgbmVlZCB0bwo+Pj4+ IGNoYW5nZSBhIGZldyB0aGluZ3MgaW4gYmFzZS5jIHRvIG1ha2UgdGhlIGhvb2tzIG1vcmUgZmxl eGlibGUsIHNvCj4+Pj4gcGxlYXNlIGdpdmUgbWUgc29tZSBtb3JlIHRpbWUgdG8gdGhpbmsgYWJv dXQgaXQuIDopIEkganVzdCB3YW50ZWQgdG8KPj4+PiBzaGFyZSBteSB0aG91Z2h0cyBzbyBmYXIg aW4gY2FzZSB0aGlzIHB1dHMgeW91IG9uIHRyYWNrLgo+Pj4gVGhlIHdheSB5b3UgZGVzY3JpYmVk IGl0IHdvdWxkIG1ha2UgR1BVIE1NVSBhbmQgSU9NTVUgbWFwcGluZ3MgMToxLiAKPj4+IFNvIHdo ZW4KPj4+IHdlIG1hcCBhIGJ1ZmZlciB0byBHUFUgTU1VLCB3ZSBhbHdheXMgbWFwIHBhZ2UgYnkg cGFnZSB0aGUgYnVmZmVyIAo+Pj4gYWxzbyB0bwo+Pj4gSU9NTVUuIFRoZXJlIGFyZSBkaXNhZHZh bnRhZ2VzIGhlcmUuCj4+Pgo+Pj4gSU9NTVUgYWRkcmVzc2VzIGFyZSBnbG9iYWwsIGFuZCB1c2Vz IGluIHRoZSBHUFUgY2FjaGVzLiBXaGVuIGEgCj4+PiBidWZmZXIgaXMKPj4+IG1hcHBlZCBtdWx0 aXBsZSB0aW1lcyB0byBkaWZmZXJlbnQgZ3JhcGhpY3MgY29udGV4dHMsIHdlIHdhbnQgdG8gCj4+ PiBhdm9pZCBjYWNoZQo+Pj4gYWxpYXNpbmcgYnkgbWFwcGluZyB0aGUgYnVmZmVyIG9ubHkgb25j ZSB0byBJT01NVS4gV2UgYWxzbyB3YW50IHRvIAo+Pj4gdW5tYXAgdGhlCj4+PiBidWZmZXIgZnJv bSBJT01NVSBvbmx5IG9uY2UgYWZ0ZXIgYWxsIHRoZSBpbnN0YW5jZXMgb2YgdGhlIGJ1ZmZlciAK Pj4+IGhhdmUgYmVlbgo+Pj4gdW5tYXBwZWQsIG9yIG9ubHkgd2hlbiB0aGUgYnVmZmVyIGlzIGFj dHVhbGx5IGZyZWVkIHRvIGNhY2hlIElPTU1VIAo+Pj4gbWFwcGluZ3MuCj4+Pgo+Pj4gRG9pbmcg SU9NTVUgbWFwcGluZyBmb3IgdGhlIHdob2xlIGJ1ZmZlciB3aXRoIGRtYV9tYXBfc2cgaXMgYWxz byAKPj4+IGZhc3RlciB0aGFuCj4+PiBtYXBwaW5nIHBhZ2UgYnkgcGFnZSwgYmVjYXVzZSB5b3Ug Y2FuIGRvIG9ubHkgb25lIFRMQiBpbnZhbGlkYXRlIGluIAo+Pj4gdGhlIGVuZAo+Pj4gb2YgdGhl IGxvb3AgaW5zdGVhZCBvZiBhZnRlciBldmVyeSBwYWdlIGlmIHlvdSB1c2UgZG1hX21hcF9zaW5n bGUuCj4+Pgo+Pj4gQWxsIG9mIHRoZXNlIHdvdWxkIHRhbGsgZm9yIGhhdmluZyBJT01NVSBhbmQg R01NVSBtYXBwaW5nIGxvb3BzIAo+Pj4gc2VwYXJhdGUuCj4+PiBUaGlzIHBhdGNoIHNldCBkb2Vz IG5vdCBpbXBsZW1lbnQgYm90aCB0aGUgYWR2YW50YWdlcyBhYm92ZSwgYnV0IHlvdXIKPj4+IHN1 Z2dlc3Rpb24gd291bGQgdGFrZSB1cyBmdXJ0aGVyIGF3YXkgZnJvbSB0aGF0IHRoYW4gVmluY2Un cyB2ZXJzaW9uLgo+PiBBaGEsIGxvb2tzIGxpa2UgYm90aCBWaW5jZSBhbmQgSSBvdmVybG9va2Vk IHRoaXMgcG9pbnQuIFNvIElJVUMgd2UKPj4gd291bGQgbmVlZCB0byBtYWtlIHN1cmUgYSBHUFUg YnVmZmVyIGlzIG9ubHkgZXZlciBtYXBwZWQgb25jZSBieSB0aGUKPj4gSU9NTVUuIFRoaXMgbWVh bnMgd2UgZWl0aGVyIG5lZWQgdG8gcHJlZW1wdGl2ZWx5IGVudGlsZXJ5IG1hcCBpdCBhdAo+PiBz b21lIHBvaW50IGFuZCBqdXN0IGtlZXAgYSByZWZlcmVuY2UgY291bnQsIG9yIGtlZXAgdHJhY2sg b2Ygd2hpY2gKPj4gMTI4ayByYW5nZXMgYXJlIGFscmVhZHkgbWFwcGVkIChhZ2Fpbiwgd2l0aCBh IHJlZmVyZW5jZSBjb3VudCB0byBrbm93Cj4+IHdoZW4gdG8gdW5tYXAgdGhlbSkuCj4+Cj4+IEZp cnN0IHNvbHV0aW9uIGlzIHRlbXB0aW5nIGJlY2F1c2UgaXQgaXMgc2ltcGxlciwgYnV0IHN1cmVs eSB0aGVyZSBpcwo+PiBzb21ldGhpbmcgd3Jvbmcgd2l0aCBpdD8KPiBXZSBjYW4gbWFpbnRhaW4g YSBsaXN0IGluIG1tdS9nazIwYS5jIGFuZCB1c2UgdGhlIGZpcnN0IHNtYWxsIHBhZ2UncyAKPiBh ZGRyZXNzIGFzIGEgc2VhcmNoIGluZGV4IGZvciB0aGUgY29ycmVzcG9uZGluZyAxMjhLIHBhZ2Uu Cj4KPiBlLmcuCj4KPiAtLS0gYS9kcm0vbm91dmVhdS9udmttL3N1YmRldi9tbXUvZ2syMGEuYwo+ ICsrKyBiL2RybS9ub3V2ZWF1L252a20vc3ViZGV2L21tdS9nazIwYS5jCj4gQEAgLTM4LDYgKzM4 LDggQEAgc3RydWN0IGdrMjBhX21tdV9wcml2IHsKPiAgc3RydWN0IGdrMjBhX21tdV9pb21tdV9t YXBwaW5nIHsKPiAgICAgICAgIHN0cnVjdCBudmttX21tX25vZGUgKm5vZGU7Cj4gICAgICAgICB1 NjQgaW92YTsKPiArICAgICAgIHU2NCBpbmRleDsKPiArICAgICAgIHN0cnVjdCBsaXN0X2hlYWQg aGVhZDsKPiAgfTsKPgo+ICBleHRlcm4gY29uc3QgdTggZ2YxMDBfcHRlX3N0b3JhZ2VfdHlwZV9t YXBbMjU2XTsKPiBAQCAtNzksNiArODEsMTQgQEAgZ2syMGFfdm1fbWFwX2lvbW11KHN0cnVjdCBu dmttX3ZtYSAqdm1hLCBzdHJ1Y3QgCj4gbnZrbV9ncHVvYmogKnBndCwKPgo+ICAgICAgICAgcGxh dCA9IG52X2RldmljZV90b19wbGF0Zm9ybShudl9kZXZpY2UoJm1tdS0+YmFzZSkpOwo+Cj4gKyAg ICAgICBsaXN0X2Zvcl9lYWNoX2VudHJ5KG1hcHBpbmcsIG1hcHBpbmdfbGlzdCwgaGVhZCkgewo+ ICsgICAgICAgICAgICAgICBpZiAobWFwcGluZy0+aW5kZXggPT0gKmxpc3QpIHsKPiArICAgICAg ICAgICAgICAgICAgICAgICBtYXBwaW5nLT5yZWZjbnQrKzsKPiArICAgICAgICAgICAgICAgICAg ICAgICAqcHJpdiA9IG1hcHBpbmc7CkJhZCBleGFtcGxlLiBXZSBoYXZlIHRvIHByb2dyYW0gdGhl IFBURSBmb3IgdGhlIG5ldyBHVkEgYmVmb3JlIHJldHVybi4KCj4gKyByZXR1cm47Cj4gKyAgICAg ICAgICAgICAgIH0KPiArICAgICAgIH0KPiArCj4gICAgICAgICAqcHJpdiA9IGt6YWxsb2Moc2l6 ZW9mKHN0cnVjdCBnazIwYV9tbXVfaW9tbXVfbWFwcGluZyksIAo+IEdGUF9LRVJORUwpOwo+ICAg ICAgICAgaWYgKCEqcHJpdikKPiAgICAgICAgICAgICAgICAgcmV0dXJuOwo+IEBAIC05NSw2ICsx MDUsOCBAQCBnazIwYV92bV9tYXBfaW9tbXUoc3RydWN0IG52a21fdm1hICp2bWEsIHN0cnVjdCAK PiBudmttX2dwdW9iaiAqcGd0LAo+ICAgICAgICAgaWYgKHJldCkKPiAgICAgICAgICAgICAgICAg cmV0dXJuOwo+Cj4gKyAgICAgICBwcml2LT5pbmRleCA9ICpsaXN0Owo+ICsKPiAgICAgICAgIGZv ciAoaSA9IDA7IGkgPCBucGFnZXM7IGkrKywgbGlzdCsrKSB7Cj4gICAgICAgICAgICAgICAgIHJl dCA9IGlvbW11X21hcChwbGF0LT5ncHUtPmlvbW11LmRvbWFpbiwKPiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIChub2RlLT5vZmZzZXQgKyBpKSA8PCBQQUdFX1NISUZULAo+IEBAIC0x MTcsNiArMTI5LDcgQEAgZ2syMGFfdm1fbWFwX2lvbW11KHN0cnVjdCBudmttX3ZtYSAqdm1hLCBz dHJ1Y3QgCj4gbnZrbV9ncHVvYmogKnBndCwKPiAgICAgICAgIHAgPSAqcHJpdjsKPiAgICAgICAg IHAtPm5vZGUgPSBub2RlOwo+ICAgICAgICAgcC0+aW92YSA9IG5vZGUtPm9mZnNldCA8PCBQQUdF X1NISUZUOwo+ICsgICAgICAgbGlzdF9hZGRfdGFpbCgmcHJpdi0+aGVhZCwgbWFwcGluZ19saXN0 KTsKPiAgfQo+Cj4KPiBUaGFua3MsCj4gVmluY2UKPgo+Cj4KCl9fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fCk5vdXZlYXUgbWFpbGluZyBsaXN0Ck5vdXZlYXVA bGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1h bi9saXN0aW5mby9ub3V2ZWF1Cg==