From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [PATCH 12/20] drm/i915/gtt: Introduce kmap|kunmap for dma page Date: Thu, 21 May 2015 18:19:19 +0300 Message-ID: <20150521151919.GK18908@intel.com> References: <1432219068-25391-1-git-send-email-mika.kuoppala@intel.com> <1432219068-25391-13-git-send-email-mika.kuoppala@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by gabe.freedesktop.org (Postfix) with ESMTP id C75366E36A for ; Thu, 21 May 2015 08:19:29 -0700 (PDT) Content-Disposition: inline In-Reply-To: <1432219068-25391-13-git-send-email-mika.kuoppala@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Mika Kuoppala Cc: intel-gfx@lists.freedesktop.org, miku@iki.fi List-Id: intel-gfx@lists.freedesktop.org T24gVGh1LCBNYXkgMjEsIDIwMTUgYXQgMDU6Mzc6NDBQTSArMDMwMCwgTWlrYSBLdW9wcGFsYSB3 cm90ZToKPiBBcyB0aGVyZSBpcyBmbHVzaGluZyBpbnZvbHZlZCB3aGVuIHdlIGhhdmUgZG9uZSB0 aGUgY3B1Cj4gd3JpdGUsIG1ha2UgZnVuY3Rpb25zIGZvciBtYXBwaW5nIGZvciBjcHUgc3BhY2Uu IE1ha2UgbWFjcm9zCj4gdG8gbWFwIGFueSB0eXBlIG9mIHBhZ2luZyBzdHJ1Y3R1cmUuCj4gCj4g U2lnbmVkLW9mZi1ieTogTWlrYSBLdW9wcGFsYSA8bWlrYS5rdW9wcGFsYUBpbnRlbC5jb20+Cj4g LS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5jIHwgNjcgKysrKysrKysr KysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLQo+ICAxIGZpbGUgY2hhbmdlZCwgMzUgaW5zZXJ0 aW9ucygrKSwgMzIgZGVsZXRpb25zKC0pCj4gCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZ2VtX2d0dC5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0 LmMKPiBpbmRleCBhM2VlNzEwLi4zZDk0YWQ4IDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZ2VtX2d0dC5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9n ZW1fZ3R0LmMKPiBAQCAtMzMwLDE2ICszMzAsMzIgQEAgc3RhdGljIHZvaWQgY2xlYW51cF9wYWdl X2RtYShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBzdHJ1Y3QgaTkxNV9wYWdlX2RtYSAqcCkKPiAg CW1lbXNldChwLCAwLCBzaXplb2YoKnApKTsKPiAgfQo+ICAKPiArc3RhdGljIHZvaWQgKmttYXBf cGFnZV9kbWEoc3RydWN0IGk5MTVfcGFnZV9kbWEgKnApCj4gK3sKPiArCXJldHVybiBrbWFwX2F0 b21pYyhwLT5wYWdlKTsKPiArfQo+ICsKPiArc3RhdGljIHZvaWQga3VubWFwX3BhZ2VfZG1hKHN0 cnVjdCBkcm1fZGV2aWNlICpkZXYsIHZvaWQgKnZhZGRyKQo+ICt7Cj4gKwlpZiAoIUhBU19MTEMo ZGV2KSkKPiArCQlkcm1fY2xmbHVzaF92aXJ0X3JhbmdlKHZhZGRyLCBQQUdFX1NJWkUpOwo+ICsK PiArCWt1bm1hcF9hdG9taWModmFkZHIpOwo+ICt9CgpBaCB0aGVyZSBpdCBpcy4gQnV0IG5vdyBp dCdzIGJlaW5nIHBlcmZvcm1lZCBvbiBWTFYgYXMgd2VsbCB3aGljaApkb2Vzbid0IG5lZWQgaXQu CgpBbHNvIGhhdmluZyBzb21ldGhpbmcgY2FsbGVkIGt1bm1hcF9wYWdlX2RtYSgpIHdoaWNoIGRv ZXMgYW4gZXhwbGljdApjbGZsdXNoIGZvciBhcHBhcmVudGx5IG5vIHJlYXNvbiBpcyByYXRoZXIg Y29uZnVzaW5nLiBTbyBJIHRoaW5rIHRoZQpuYW1lIHNob3VsZCBoYXZlIF9wcGd0dF8gaW4gaXQg dG8gbWFrZSBpdCBjbGVhciB0aGlzIG9ubHkgYXBwbGllcyB0bwpwcGd0dCwgb3RoZXJ3aXNlIHNv bWVvbmUgaXMgbGlrZWx5IHRvIHVzZSBpdCBmb3Igc29tZXRoaW5nIGVsc2Ugd2hpY2gKZG9lc24n dCBuZWVkIHRoZSBjbGZsdXNoLiBPciBhdCB0aGUgdmVyeSBsZWFzdCBpdCBuZWVkcyBhIGNvbW1l bnQgdG8KZXhwbGFpbiB0aGlzIHN0dWZmLgoKPiArCj4gKyNkZWZpbmUga21hcF9weChweCkga21h cF9wYWdlX2RtYSgmKHB4KS0+YmFzZSkKPiArI2RlZmluZSBrdW5tYXBfcHgocHBndHQsIHZhZGRy KSBrdW5tYXBfcGFnZV9kbWEoKHBwZ3R0KS0+YmFzZS5kZXYsICh2YWRkcikpOwo+ICsKPiAgc3Rh dGljIHZvaWQgZmlsbF9wYWdlX2RtYShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBzdHJ1Y3QgaTkx NV9wYWdlX2RtYSAqcCwKPiAgCQkJICBjb25zdCB1aW50NjRfdCB2YWwpCj4gIHsKPiAgCWludCBp Owo+IC0JdWludDY0X3QgKiBjb25zdCB2YWRkciA9IGttYXBfYXRvbWljKHAtPnBhZ2UpOwo+ICsJ dWludDY0X3QgKiBjb25zdCB2YWRkciA9IGttYXBfcGFnZV9kbWEocCk7Cj4gIAo+ICAJZm9yIChp ID0gMDsgaSA8IDUxMjsgaSsrKQo+ICAJCXZhZGRyW2ldID0gdmFsOwo+ICAKPiAtCWt1bm1hcF9h dG9taWModmFkZHIpOwo+ICsJa3VubWFwX3BhZ2VfZG1hKGRldiwgdmFkZHIpOwo+ICB9Cj4gIAo+ ICBzdGF0aWMgdm9pZCBmaWxsX3BhZ2VfZG1hXzMyKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHN0 cnVjdCBpOTE1X3BhZ2VfZG1hICpwLAo+IEBAIC00OTcsNyArNTEzLDYgQEAgc3RhdGljIHZvaWQg Z2VuOF9wcGd0dF9jbGVhcl9yYW5nZShzdHJ1Y3QgaTkxNV9hZGRyZXNzX3NwYWNlICp2bSwKPiAg CXdoaWxlIChudW1fZW50cmllcykgewo+ICAJCXN0cnVjdCBpOTE1X3BhZ2VfZGlyZWN0b3J5ICpw ZDsKPiAgCQlzdHJ1Y3QgaTkxNV9wYWdlX3RhYmxlICpwdDsKPiAtCQlzdHJ1Y3QgcGFnZSAqcGFn ZV90YWJsZTsKPiAgCj4gIAkJaWYgKFdBUk5fT04oIXBwZ3R0LT5wZHAucGFnZV9kaXJlY3Rvcnlb cGRwZV0pKQo+ICAJCQljb250aW51ZTsKPiBAQCAtNTEyLDIyICs1MjcsMTggQEAgc3RhdGljIHZv aWQgZ2VuOF9wcGd0dF9jbGVhcl9yYW5nZShzdHJ1Y3QgaTkxNV9hZGRyZXNzX3NwYWNlICp2bSwK PiAgCQlpZiAoV0FSTl9PTighcHQtPmJhc2UucGFnZSkpCj4gIAkJCWNvbnRpbnVlOwo+ICAKPiAt CQlwYWdlX3RhYmxlID0gcHQtPmJhc2UucGFnZTsKPiAtCj4gIAkJbGFzdF9wdGUgPSBwdGUgKyBu dW1fZW50cmllczsKPiAgCQlpZiAobGFzdF9wdGUgPiBHRU44X1BURVMpCj4gIAkJCWxhc3RfcHRl ID0gR0VOOF9QVEVTOwo+ICAKPiAtCQlwdF92YWRkciA9IGttYXBfYXRvbWljKHBhZ2VfdGFibGUp Owo+ICsJCXB0X3ZhZGRyID0ga21hcF9weChwdCk7Cj4gIAo+ICAJCWZvciAoaSA9IHB0ZTsgaSA8 IGxhc3RfcHRlOyBpKyspIHsKPiAgCQkJcHRfdmFkZHJbaV0gPSBzY3JhdGNoX3B0ZTsKPiAgCQkJ bnVtX2VudHJpZXMtLTsKPiAgCQl9Cj4gIAo+IC0JCWlmICghSEFTX0xMQyhwcGd0dC0+YmFzZS5k ZXYpKQo+IC0JCQlkcm1fY2xmbHVzaF92aXJ0X3JhbmdlKHB0X3ZhZGRyLCBQQUdFX1NJWkUpOwo+ IC0JCWt1bm1hcF9hdG9taWMocHRfdmFkZHIpOwo+ICsJCWt1bm1hcF9weChwcGd0dCwgcHQpOwo+ ICAKPiAgCQlwdGUgPSAwOwo+ICAJCWlmICgrK3BkZSA9PSBJOTE1X1BERVMpIHsKPiBAQCAtNTU5 LDE4ICs1NzAsMTQgQEAgc3RhdGljIHZvaWQgZ2VuOF9wcGd0dF9pbnNlcnRfZW50cmllcyhzdHJ1 Y3QgaTkxNV9hZGRyZXNzX3NwYWNlICp2bSwKPiAgCQlpZiAocHRfdmFkZHIgPT0gTlVMTCkgewo+ ICAJCQlzdHJ1Y3QgaTkxNV9wYWdlX2RpcmVjdG9yeSAqcGQgPSBwcGd0dC0+cGRwLnBhZ2VfZGly ZWN0b3J5W3BkcGVdOwo+ICAJCQlzdHJ1Y3QgaTkxNV9wYWdlX3RhYmxlICpwdCA9IHBkLT5wYWdl X3RhYmxlW3BkZV07Cj4gLQkJCXN0cnVjdCBwYWdlICpwYWdlX3RhYmxlID0gcHQtPmJhc2UucGFn ZTsKPiAtCj4gLQkJCXB0X3ZhZGRyID0ga21hcF9hdG9taWMocGFnZV90YWJsZSk7Cj4gKwkJCXB0 X3ZhZGRyID0ga21hcF9weChwdCk7Cj4gIAkJfQo+ICAKPiAgCQlwdF92YWRkcltwdGVdID0KPiAg CQkJZ2VuOF9wdGVfZW5jb2RlKHNnX3BhZ2VfaXRlcl9kbWFfYWRkcmVzcygmc2dfaXRlciksCj4g IAkJCQkJY2FjaGVfbGV2ZWwsIHRydWUpOwo+ICAJCWlmICgrK3B0ZSA9PSBHRU44X1BURVMpIHsK PiAtCQkJaWYgKCFIQVNfTExDKHBwZ3R0LT5iYXNlLmRldikpCj4gLQkJCQlkcm1fY2xmbHVzaF92 aXJ0X3JhbmdlKHB0X3ZhZGRyLCBQQUdFX1NJWkUpOwo+IC0JCQlrdW5tYXBfYXRvbWljKHB0X3Zh ZGRyKTsKPiArCQkJa3VubWFwX3B4KHBwZ3R0LCBwdF92YWRkcik7Cj4gIAkJCXB0X3ZhZGRyID0g TlVMTDsKPiAgCQkJaWYgKCsrcGRlID09IEk5MTVfUERFUykgewo+ICAJCQkJcGRwZSsrOwo+IEBA IC01NzksMTEgKzU4Niw5IEBAIHN0YXRpYyB2b2lkIGdlbjhfcHBndHRfaW5zZXJ0X2VudHJpZXMo c3RydWN0IGk5MTVfYWRkcmVzc19zcGFjZSAqdm0sCj4gIAkJCXB0ZSA9IDA7Cj4gIAkJfQo+ICAJ fQo+IC0JaWYgKHB0X3ZhZGRyKSB7Cj4gLQkJaWYgKCFIQVNfTExDKHBwZ3R0LT5iYXNlLmRldikp Cj4gLQkJCWRybV9jbGZsdXNoX3ZpcnRfcmFuZ2UocHRfdmFkZHIsIFBBR0VfU0laRSk7Cj4gLQkJ a3VubWFwX2F0b21pYyhwdF92YWRkcik7Cj4gLQl9Cj4gKwo+ICsJaWYgKHB0X3ZhZGRyKQo+ICsJ CWt1bm1hcF9weChwcGd0dCwgcHRfdmFkZHIpOwo+ICB9Cj4gIAo+ICBzdGF0aWMgdm9pZCBfX2dl bjhfZG9fbWFwX3B0KGdlbjhfcGRlX3QgKiBjb25zdCBwZGUsCj4gQEAgLTg2Miw3ICs4NjcsNyBA QCBzdGF0aWMgaW50IGdlbjhfYWxsb2NfdmFfcmFuZ2Uoc3RydWN0IGk5MTVfYWRkcmVzc19zcGFj ZSAqdm0sCj4gIAkvKiBBbGxvY2F0aW9ucyBoYXZlIGNvbXBsZXRlZCBzdWNjZXNzZnVsbHksIHNv IHNldCB0aGUgYml0bWFwcywgYW5kIGRvCj4gIAkgKiB0aGUgbWFwcGluZ3MuICovCj4gIAlnZW44 X2Zvcl9lYWNoX3BkcGUocGQsICZwcGd0dC0+cGRwLCBzdGFydCwgbGVuZ3RoLCB0ZW1wLCBwZHBl KSB7Cj4gLQkJZ2VuOF9wZGVfdCAqY29uc3QgcGFnZV9kaXJlY3RvcnkgPSBrbWFwX2F0b21pYyhw ZC0+YmFzZS5wYWdlKTsKPiArCQlnZW44X3BkZV90ICpjb25zdCBwYWdlX2RpcmVjdG9yeSA9IGtt YXBfcHgocGQpOwo+ICAJCXN0cnVjdCBpOTE1X3BhZ2VfdGFibGUgKnB0Owo+ICAJCXVpbnQ2NF90 IHBkX2xlbiA9IGdlbjhfY2xhbXBfcGQoc3RhcnQsIGxlbmd0aCk7Cj4gIAkJdWludDY0X3QgcGRf c3RhcnQgPSBzdGFydDsKPiBAQCAtODkyLDEwICs4OTcsNyBAQCBzdGF0aWMgaW50IGdlbjhfYWxs b2NfdmFfcmFuZ2Uoc3RydWN0IGk5MTVfYWRkcmVzc19zcGFjZSAqdm0sCj4gIAkJCSAqIHBvaW50 IHdlJ3JlIHN0aWxsIHJlbHlpbmcgb24gaW5zZXJ0X2VudHJpZXMoKSAqLwo+ICAJCX0KPiAgCj4g LQkJaWYgKCFIQVNfTExDKHZtLT5kZXYpKQo+IC0JCQlkcm1fY2xmbHVzaF92aXJ0X3JhbmdlKHBh Z2VfZGlyZWN0b3J5LCBQQUdFX1NJWkUpOwo+IC0KPiAtCQlrdW5tYXBfYXRvbWljKHBhZ2VfZGly ZWN0b3J5KTsKPiArCQlrdW5tYXBfcHgocHBndHQsIHBhZ2VfZGlyZWN0b3J5KTsKPiAgCj4gIAkJ c2V0X2JpdChwZHBlLCBwcGd0dC0+cGRwLnVzZWRfcGRwZXMpOwo+ICAJfQo+IEBAIC05NzcsNyAr OTc5LDggQEAgc3RhdGljIHZvaWQgZ2VuNl9kdW1wX3BwZ3R0KHN0cnVjdCBpOTE1X2h3X3BwZ3R0 ICpwcGd0dCwgc3RydWN0IHNlcV9maWxlICptKQo+ICAJCQkJICAgZXhwZWN0ZWQpOwo+ICAJCXNl cV9wcmludGYobSwgIlx0UERFOiAleFxuIiwgcGRfZW50cnkpOwo+ICAKPiAtCQlwdF92YWRkciA9 IGttYXBfYXRvbWljKHBwZ3R0LT5wZC5wYWdlX3RhYmxlW3BkZV0tPmJhc2UucGFnZSk7Cj4gKwkJ cHRfdmFkZHIgPSBrbWFwX3B4KHBwZ3R0LT5wZC5wYWdlX3RhYmxlW3BkZV0pOwo+ICsKPiAgCQlm b3IgKHB0ZSA9IDA7IHB0ZSA8IEdFTjZfUFRFUzsgcHRlKz00KSB7Cj4gIAkJCXVuc2lnbmVkIGxv bmcgdmEgPQo+ICAJCQkJKHBkZSAqIFBBR0VfU0laRSAqIEdFTjZfUFRFUykgKwo+IEBAIC05OTks NyArMTAwMiw3IEBAIHN0YXRpYyB2b2lkIGdlbjZfZHVtcF9wcGd0dChzdHJ1Y3QgaTkxNV9od19w cGd0dCAqcHBndHQsIHN0cnVjdCBzZXFfZmlsZSAqbSkKPiAgCQkJfQo+ICAJCQlzZXFfcHV0cyht LCAiXG4iKTsKPiAgCQl9Cj4gLQkJa3VubWFwX2F0b21pYyhwdF92YWRkcik7Cj4gKwkJa3VubWFw X3B4KHBwZ3R0LCBwdF92YWRkcik7Cj4gIAl9Cj4gIH0KPiAgCj4gQEAgLTEyMDIsMTIgKzEyMDUs MTIgQEAgc3RhdGljIHZvaWQgZ2VuNl9wcGd0dF9jbGVhcl9yYW5nZShzdHJ1Y3QgaTkxNV9hZGRy ZXNzX3NwYWNlICp2bSwKPiAgCQlpZiAobGFzdF9wdGUgPiBHRU42X1BURVMpCj4gIAkJCWxhc3Rf cHRlID0gR0VONl9QVEVTOwo+ICAKPiAtCQlwdF92YWRkciA9IGttYXBfYXRvbWljKHBwZ3R0LT5w ZC5wYWdlX3RhYmxlW2FjdF9wdF0tPmJhc2UucGFnZSk7Cj4gKwkJcHRfdmFkZHIgPSBrbWFwX3B4 KHBwZ3R0LT5wZC5wYWdlX3RhYmxlW2FjdF9wdF0pOwo+ICAKPiAgCQlmb3IgKGkgPSBmaXJzdF9w dGU7IGkgPCBsYXN0X3B0ZTsgaSsrKQo+ICAJCQlwdF92YWRkcltpXSA9IHNjcmF0Y2hfcHRlOwo+ ICAKPiAtCQlrdW5tYXBfYXRvbWljKHB0X3ZhZGRyKTsKPiArCQlrdW5tYXBfcHgocHBndHQsIHB0 X3ZhZGRyKTsKPiAgCj4gIAkJbnVtX2VudHJpZXMgLT0gbGFzdF9wdGUgLSBmaXJzdF9wdGU7Cj4g IAkJZmlyc3RfcHRlID0gMDsKPiBAQCAtMTIzMSwyMSArMTIzNCwyMSBAQCBzdGF0aWMgdm9pZCBn ZW42X3BwZ3R0X2luc2VydF9lbnRyaWVzKHN0cnVjdCBpOTE1X2FkZHJlc3Nfc3BhY2UgKnZtLAo+ ICAJcHRfdmFkZHIgPSBOVUxMOwo+ICAJZm9yX2VhY2hfc2dfcGFnZShwYWdlcy0+c2dsLCAmc2df aXRlciwgcGFnZXMtPm5lbnRzLCAwKSB7Cj4gIAkJaWYgKHB0X3ZhZGRyID09IE5VTEwpCj4gLQkJ CXB0X3ZhZGRyID0ga21hcF9hdG9taWMocHBndHQtPnBkLnBhZ2VfdGFibGVbYWN0X3B0XS0+YmFz ZS5wYWdlKTsKPiArCQkJcHRfdmFkZHIgPSBrbWFwX3B4KHBwZ3R0LT5wZC5wYWdlX3RhYmxlW2Fj dF9wdF0pOwo+ICAKPiAgCQlwdF92YWRkclthY3RfcHRlXSA9Cj4gIAkJCXZtLT5wdGVfZW5jb2Rl KHNnX3BhZ2VfaXRlcl9kbWFfYWRkcmVzcygmc2dfaXRlciksCj4gIAkJCQkgICAgICAgY2FjaGVf bGV2ZWwsIHRydWUsIGZsYWdzKTsKPiAgCj4gIAkJaWYgKCsrYWN0X3B0ZSA9PSBHRU42X1BURVMp IHsKPiAtCQkJa3VubWFwX2F0b21pYyhwdF92YWRkcik7Cj4gKwkJCWt1bm1hcF9weChwcGd0dCwg cHRfdmFkZHIpOwo+ICAJCQlwdF92YWRkciA9IE5VTEw7Cj4gIAkJCWFjdF9wdCsrOwo+ICAJCQlh Y3RfcHRlID0gMDsKPiAgCQl9Cj4gIAl9Cj4gIAlpZiAocHRfdmFkZHIpCj4gLQkJa3VubWFwX2F0 b21pYyhwdF92YWRkcik7Cj4gKwkJa3VubWFwX3B4KHBwZ3R0LCBwdF92YWRkcik7Cj4gIH0KPiAg Cj4gIHN0YXRpYyB2b2lkIGdlbjZfaW5pdGlhbGl6ZV9wdChzdHJ1Y3QgaTkxNV9hZGRyZXNzX3Nw YWNlICp2bSwKPiAtLSAKPiAxLjkuMQo+IAo+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fCj4gSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdAo+IEludGVsLWdmeEBs aXN0cy5mcmVlZGVza3RvcC5vcmcKPiBodHRwOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxt YW4vbGlzdGluZm8vaW50ZWwtZ2Z4CgotLSAKVmlsbGUgU3lyasOkbMOkCkludGVsIE9UQwpfX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFp bGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZy ZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=