From mboxrd@z Thu Jan 1 00:00:00 1970 From: Michel Thierry Subject: Re: [PATCH 12/21] drm/i915/gtt: Introduce kmap|kunmap for dma page Date: Wed, 24 Jun 2015 16:06:53 +0100 Message-ID: <558AC78D.1020204@intel.com> References: <556EDD29.7010805@intel.com> <1434045059-22741-1-git-send-email-mika.kuoppala@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by gabe.freedesktop.org (Postfix) with ESMTP id 1ACB572055 for ; Wed, 24 Jun 2015 08:07:17 -0700 (PDT) In-Reply-To: <1434045059-22741-1-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 , intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gNi8xMS8yMDE1IDY6NTAgUE0sIE1pa2EgS3VvcHBhbGEgd3JvdGU6Cj4gQXMgdGhlcmUgaXMg Zmx1c2hpbmcgaW52b2x2ZWQgd2hlbiB3ZSBoYXZlIGRvbmUgdGhlIGNwdQo+IHdyaXRlLCBtYWtl IGZ1bmN0aW9ucyBmb3IgbWFwcGluZyBmb3IgY3B1IHNwYWNlLiBNYWtlIG1hY3Jvcwo+IHRvIG1h cCBhbnkgdHlwZSBvZiBwYWdpbmcgc3RydWN0dXJlLgo+Cj4gdjI6IE1ha2UgaXQgY2xlYXIgdGhh IGZsdXNoaW5nIGt1bm1hcCBpcyBvbmx5IGZvciBwcGd0dCAoVmlsbGUpCj4gdjM6IEZsdXNoaW5n IGZpeGVkIChWaWxsZSwgTWljaGVsKS4gUmVtb3ZlZCBzdXBlcmZsdW91cyBzZW1pY29sb24KPgo+ IENjOiBWaWxsZSBTeXJqw6Rsw6QgPHZpbGxlLnN5cmphbGFAbGludXguaW50ZWwuY29tPgoKUmV2 aWV3ZWQtYnk6IE1pY2hlbCBUaGllcnJ5IDxtaWNoZWwudGhpZXJyeUBpbnRlbC5jb20+Cgo+IFNp Z25lZC1vZmYtYnk6IE1pa2EgS3VvcHBhbGEgPG1pa2Eua3VvcHBhbGFAaW50ZWwuY29tPgo+IC0t LQo+ICAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmMgfCA3NyArKysrKysrKysr KysrKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tCj4gICAxIGZpbGUgY2hhbmdlZCwgNDAgaW5zZXJ0 aW9ucygrKSwgMzcgZGVsZXRpb25zKC0pCj4KPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9nZW1fZ3R0LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQu Ywo+IGluZGV4IDYwNzk2YjcuLjNhYzg2NzEgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9nZW1fZ3R0LmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dl bV9ndHQuYwo+IEBAIC0zMzAsMTUgKzMzMCwxNiBAQCBzdGF0aWMgdm9pZCBjbGVhbnVwX3BhZ2Vf ZG1hKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHN0cnVjdCBpOTE1X3BhZ2VfZG1hICpwKQo+ICAg CW1lbXNldChwLCAwLCBzaXplb2YoKnApKTsKPiAgIH0KPgo+IC1zdGF0aWMgdm9pZCBmaWxsX3Bh Z2VfZG1hKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHN0cnVjdCBpOTE1X3BhZ2VfZG1hICpwLAo+ IC0JCQkgIGNvbnN0IHVpbnQ2NF90IHZhbCkKPiArc3RhdGljIHZvaWQgKmttYXBfcGFnZV9kbWEo c3RydWN0IGk5MTVfcGFnZV9kbWEgKnApCj4gICB7Cj4gLQlpbnQgaTsKPiAtCXVpbnQ2NF90ICog Y29uc3QgdmFkZHIgPSBrbWFwX2F0b21pYyhwLT5wYWdlKTsKPiAtCj4gLQlmb3IgKGkgPSAwOyBp IDwgNTEyOyBpKyspCj4gLQkJdmFkZHJbaV0gPSB2YWw7Cj4gKwlyZXR1cm4ga21hcF9hdG9taWMo cC0+cGFnZSk7Cj4gK30KPgo+ICsvKiBXZSB1c2UgdGhlIGZsdXNoaW5nIHVubWFwIG9ubHkgd2l0 aCBwcGd0dCBzdHJ1Y3R1cmVzOgo+ICsgKiBwYWdlIGRpcmVjdG9yaWVzLCBwYWdlIHRhYmxlcyBh bmQgc2NyYXRjaCBwYWdlcy4KPiArICovCj4gK3N0YXRpYyB2b2lkIGt1bm1hcF9wYWdlX2RtYShz dHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB2b2lkICp2YWRkcikKPiArewo+ICAgCS8qIFRoZXJlIGFy ZSBvbmx5IGZldyBleGNlcHRpb25zIGZvciBnZW4gPj02LiBjaHYgYW5kIGJ4dC4KPiAgIAkgKiBB bmQgd2UgYXJlIG5vdCBzdXJlIGFib3V0IHRoZSBsYXR0ZXIgc28gcGxheSBzYWZlIGZvciBub3cu Cj4gICAJICovCj4gQEAgLTM0OCw2ICszNDksMjEgQEAgc3RhdGljIHZvaWQgZmlsbF9wYWdlX2Rt YShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBzdHJ1Y3QgaTkxNV9wYWdlX2RtYSAqcCwKPiAgIAlr dW5tYXBfYXRvbWljKHZhZGRyKTsKPiAgIH0KPgo+ICsjZGVmaW5lIGttYXBfcHgocHgpIGttYXBf cGFnZV9kbWEoJihweCktPmJhc2UpCj4gKyNkZWZpbmUga3VubWFwX3B4KHBwZ3R0LCB2YWRkcikg a3VubWFwX3BhZ2VfZG1hKChwcGd0dCktPmJhc2UuZGV2LCAodmFkZHIpKQo+ICsKPiArc3RhdGlj IHZvaWQgZmlsbF9wYWdlX2RtYShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBzdHJ1Y3QgaTkxNV9w YWdlX2RtYSAqcCwKPiArCQkJICBjb25zdCB1aW50NjRfdCB2YWwpCj4gK3sKPiArCWludCBpOwo+ ICsJdWludDY0X3QgKiBjb25zdCB2YWRkciA9IGttYXBfcGFnZV9kbWEocCk7Cj4gKwo+ICsJZm9y IChpID0gMDsgaSA8IDUxMjsgaSsrKQo+ICsJCXZhZGRyW2ldID0gdmFsOwo+ICsKPiArCWt1bm1h cF9wYWdlX2RtYShkZXYsIHZhZGRyKTsKPiArfQo+ICsKPiAgIHN0YXRpYyB2b2lkIGZpbGxfcGFn ZV9kbWFfMzIoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgc3RydWN0IGk5MTVfcGFnZV9kbWEgKnAs Cj4gICAJCQkgICAgIGNvbnN0IHVpbnQzMl90IHZhbDMyKQo+ICAgewo+IEBAIC01MDMsNyArNTE5 LDYgQEAgc3RhdGljIHZvaWQgZ2VuOF9wcGd0dF9jbGVhcl9yYW5nZShzdHJ1Y3QgaTkxNV9hZGRy ZXNzX3NwYWNlICp2bSwKPiAgIAl3aGlsZSAobnVtX2VudHJpZXMpIHsKPiAgIAkJc3RydWN0IGk5 MTVfcGFnZV9kaXJlY3RvcnkgKnBkOwo+ICAgCQlzdHJ1Y3QgaTkxNV9wYWdlX3RhYmxlICpwdDsK PiAtCQlzdHJ1Y3QgcGFnZSAqcGFnZV90YWJsZTsKPgo+ICAgCQlpZiAoV0FSTl9PTighcHBndHQt PnBkcC5wYWdlX2RpcmVjdG9yeVtwZHBlXSkpCj4gICAJCQljb250aW51ZTsKPiBAQCAtNTE4LDIy ICs1MzMsMTggQEAgc3RhdGljIHZvaWQgZ2VuOF9wcGd0dF9jbGVhcl9yYW5nZShzdHJ1Y3QgaTkx NV9hZGRyZXNzX3NwYWNlICp2bSwKPiAgIAkJaWYgKFdBUk5fT04oIXB0LT5iYXNlLnBhZ2UpKQo+ ICAgCQkJY29udGludWU7Cj4KPiAtCQlwYWdlX3RhYmxlID0gcHQtPmJhc2UucGFnZTsKPiAtCj4g ICAJCWxhc3RfcHRlID0gcHRlICsgbnVtX2VudHJpZXM7Cj4gICAJCWlmIChsYXN0X3B0ZSA+IEdF TjhfUFRFUykKPiAgIAkJCWxhc3RfcHRlID0gR0VOOF9QVEVTOwo+Cj4gLQkJcHRfdmFkZHIgPSBr bWFwX2F0b21pYyhwYWdlX3RhYmxlKTsKPiArCQlwdF92YWRkciA9IGttYXBfcHgocHQpOwo+Cj4g ICAJCWZvciAoaSA9IHB0ZTsgaSA8IGxhc3RfcHRlOyBpKyspIHsKPiAgIAkJCXB0X3ZhZGRyW2ld ID0gc2NyYXRjaF9wdGU7Cj4gICAJCQludW1fZW50cmllcy0tOwo+ICAgCQl9Cj4KPiAtCQlpZiAo IUhBU19MTEMocHBndHQtPmJhc2UuZGV2KSkKPiAtCQkJZHJtX2NsZmx1c2hfdmlydF9yYW5nZShw dF92YWRkciwgUEFHRV9TSVpFKTsKPiAtCQlrdW5tYXBfYXRvbWljKHB0X3ZhZGRyKTsKPiArCQlr dW5tYXBfcHgocHBndHQsIHB0KTsKPgo+ICAgCQlwdGUgPSAwOwo+ICAgCQlpZiAoKytwZGUgPT0g STkxNV9QREVTKSB7Cj4gQEAgLTU2NSwxOCArNTc2LDE0IEBAIHN0YXRpYyB2b2lkIGdlbjhfcHBn dHRfaW5zZXJ0X2VudHJpZXMoc3RydWN0IGk5MTVfYWRkcmVzc19zcGFjZSAqdm0sCj4gICAJCWlm IChwdF92YWRkciA9PSBOVUxMKSB7Cj4gICAJCQlzdHJ1Y3QgaTkxNV9wYWdlX2RpcmVjdG9yeSAq cGQgPSBwcGd0dC0+cGRwLnBhZ2VfZGlyZWN0b3J5W3BkcGVdOwo+ICAgCQkJc3RydWN0IGk5MTVf cGFnZV90YWJsZSAqcHQgPSBwZC0+cGFnZV90YWJsZVtwZGVdOwo+IC0JCQlzdHJ1Y3QgcGFnZSAq cGFnZV90YWJsZSA9IHB0LT5iYXNlLnBhZ2U7Cj4gLQo+IC0JCQlwdF92YWRkciA9IGttYXBfYXRv bWljKHBhZ2VfdGFibGUpOwo+ICsJCQlwdF92YWRkciA9IGttYXBfcHgocHQpOwo+ICAgCQl9Cj4K PiAgIAkJcHRfdmFkZHJbcHRlXSA9Cj4gICAJCQlnZW44X3B0ZV9lbmNvZGUoc2dfcGFnZV9pdGVy X2RtYV9hZGRyZXNzKCZzZ19pdGVyKSwKPiAgIAkJCQkJY2FjaGVfbGV2ZWwsIHRydWUpOwo+ICAg CQlpZiAoKytwdGUgPT0gR0VOOF9QVEVTKSB7Cj4gLQkJCWlmICghSEFTX0xMQyhwcGd0dC0+YmFz ZS5kZXYpKQo+IC0JCQkJZHJtX2NsZmx1c2hfdmlydF9yYW5nZShwdF92YWRkciwgUEFHRV9TSVpF KTsKPiAtCQkJa3VubWFwX2F0b21pYyhwdF92YWRkcik7Cj4gKwkJCWt1bm1hcF9weChwcGd0dCwg cHRfdmFkZHIpOwo+ICAgCQkJcHRfdmFkZHIgPSBOVUxMOwo+ICAgCQkJaWYgKCsrcGRlID09IEk5 MTVfUERFUykgewo+ICAgCQkJCXBkcGUrKzsKPiBAQCAtNTg1LDExICs1OTIsOSBAQCBzdGF0aWMg dm9pZCBnZW44X3BwZ3R0X2luc2VydF9lbnRyaWVzKHN0cnVjdCBpOTE1X2FkZHJlc3Nfc3BhY2Ug KnZtLAo+ICAgCQkJcHRlID0gMDsKPiAgIAkJfQo+ICAgCX0KPiAtCWlmIChwdF92YWRkcikgewo+ IC0JCWlmICghSEFTX0xMQyhwcGd0dC0+YmFzZS5kZXYpKQo+IC0JCQlkcm1fY2xmbHVzaF92aXJ0 X3JhbmdlKHB0X3ZhZGRyLCBQQUdFX1NJWkUpOwo+IC0JCWt1bm1hcF9hdG9taWMocHRfdmFkZHIp Owo+IC0JfQo+ICsKPiArCWlmIChwdF92YWRkcikKPiArCQlrdW5tYXBfcHgocHBndHQsIHB0X3Zh ZGRyKTsKPiAgIH0KPgo+ICAgc3RhdGljIHZvaWQgX19nZW44X2RvX21hcF9wdChnZW44X3BkZV90 ICogY29uc3QgcGRlLAo+IEBAIC04NjksNyArODc0LDcgQEAgc3RhdGljIGludCBnZW44X2FsbG9j X3ZhX3JhbmdlKHN0cnVjdCBpOTE1X2FkZHJlc3Nfc3BhY2UgKnZtLAo+ICAgCS8qIEFsbG9jYXRp b25zIGhhdmUgY29tcGxldGVkIHN1Y2Nlc3NmdWxseSwgc28gc2V0IHRoZSBiaXRtYXBzLCBhbmQg ZG8KPiAgIAkgKiB0aGUgbWFwcGluZ3MuICovCj4gICAJZ2VuOF9mb3JfZWFjaF9wZHBlKHBkLCAm cHBndHQtPnBkcCwgc3RhcnQsIGxlbmd0aCwgdGVtcCwgcGRwZSkgewo+IC0JCWdlbjhfcGRlX3Qg KmNvbnN0IHBhZ2VfZGlyZWN0b3J5ID0ga21hcF9hdG9taWMocGQtPmJhc2UucGFnZSk7Cj4gKwkJ Z2VuOF9wZGVfdCAqY29uc3QgcGFnZV9kaXJlY3RvcnkgPSBrbWFwX3B4KHBkKTsKPiAgIAkJc3Ry dWN0IGk5MTVfcGFnZV90YWJsZSAqcHQ7Cj4gICAJCXVpbnQ2NF90IHBkX2xlbiA9IGdlbjhfY2xh bXBfcGQoc3RhcnQsIGxlbmd0aCk7Cj4gICAJCXVpbnQ2NF90IHBkX3N0YXJ0ID0gc3RhcnQ7Cj4g QEAgLTg5OSwxMCArOTA0LDcgQEAgc3RhdGljIGludCBnZW44X2FsbG9jX3ZhX3JhbmdlKHN0cnVj dCBpOTE1X2FkZHJlc3Nfc3BhY2UgKnZtLAo+ICAgCQkJICogcG9pbnQgd2UncmUgc3RpbGwgcmVs eWluZyBvbiBpbnNlcnRfZW50cmllcygpICovCj4gICAJCX0KPgo+IC0JCWlmICghSEFTX0xMQyh2 bS0+ZGV2KSkKPiAtCQkJZHJtX2NsZmx1c2hfdmlydF9yYW5nZShwYWdlX2RpcmVjdG9yeSwgUEFH RV9TSVpFKTsKPiAtCj4gLQkJa3VubWFwX2F0b21pYyhwYWdlX2RpcmVjdG9yeSk7Cj4gKwkJa3Vu bWFwX3B4KHBwZ3R0LCBwYWdlX2RpcmVjdG9yeSk7Cj4KPiAgIAkJc2V0X2JpdChwZHBlLCBwcGd0 dC0+cGRwLnVzZWRfcGRwZXMpOwo+ICAgCX0KPiBAQCAtOTkxLDcgKzk5Myw4IEBAIHN0YXRpYyB2 b2lkIGdlbjZfZHVtcF9wcGd0dChzdHJ1Y3QgaTkxNV9od19wcGd0dCAqcHBndHQsIHN0cnVjdCBz ZXFfZmlsZSAqbSkKPiAgIAkJCQkgICBleHBlY3RlZCk7Cj4gICAJCXNlcV9wcmludGYobSwgIlx0 UERFOiAleFxuIiwgcGRfZW50cnkpOwo+Cj4gLQkJcHRfdmFkZHIgPSBrbWFwX2F0b21pYyhwcGd0 dC0+cGQucGFnZV90YWJsZVtwZGVdLT5iYXNlLnBhZ2UpOwo+ICsJCXB0X3ZhZGRyID0ga21hcF9w eChwcGd0dC0+cGQucGFnZV90YWJsZVtwZGVdKTsKPiArCj4gICAJCWZvciAocHRlID0gMDsgcHRl IDwgR0VONl9QVEVTOyBwdGUrPTQpIHsKPiAgIAkJCXVuc2lnbmVkIGxvbmcgdmEgPQo+ICAgCQkJ CShwZGUgKiBQQUdFX1NJWkUgKiBHRU42X1BURVMpICsKPiBAQCAtMTAxMyw3ICsxMDE2LDcgQEAg c3RhdGljIHZvaWQgZ2VuNl9kdW1wX3BwZ3R0KHN0cnVjdCBpOTE1X2h3X3BwZ3R0ICpwcGd0dCwg c3RydWN0IHNlcV9maWxlICptKQo+ICAgCQkJfQo+ICAgCQkJc2VxX3B1dHMobSwgIlxuIik7Cj4g ICAJCX0KPiAtCQlrdW5tYXBfYXRvbWljKHB0X3ZhZGRyKTsKPiArCQlrdW5tYXBfcHgocHBndHQs IHB0X3ZhZGRyKTsKPiAgIAl9Cj4gICB9Cj4KPiBAQCAtMTIxNiwxMiArMTIxOSwxMiBAQCBzdGF0 aWMgdm9pZCBnZW42X3BwZ3R0X2NsZWFyX3JhbmdlKHN0cnVjdCBpOTE1X2FkZHJlc3Nfc3BhY2Ug KnZtLAo+ICAgCQlpZiAobGFzdF9wdGUgPiBHRU42X1BURVMpCj4gICAJCQlsYXN0X3B0ZSA9IEdF TjZfUFRFUzsKPgo+IC0JCXB0X3ZhZGRyID0ga21hcF9hdG9taWMocHBndHQtPnBkLnBhZ2VfdGFi bGVbYWN0X3B0XS0+YmFzZS5wYWdlKTsKPiArCQlwdF92YWRkciA9IGttYXBfcHgocHBndHQtPnBk LnBhZ2VfdGFibGVbYWN0X3B0XSk7Cj4KPiAgIAkJZm9yIChpID0gZmlyc3RfcHRlOyBpIDwgbGFz dF9wdGU7IGkrKykKPiAgIAkJCXB0X3ZhZGRyW2ldID0gc2NyYXRjaF9wdGU7Cj4KPiAtCQlrdW5t YXBfYXRvbWljKHB0X3ZhZGRyKTsKPiArCQlrdW5tYXBfcHgocHBndHQsIHB0X3ZhZGRyKTsKPgo+ ICAgCQludW1fZW50cmllcyAtPSBsYXN0X3B0ZSAtIGZpcnN0X3B0ZTsKPiAgIAkJZmlyc3RfcHRl ID0gMDsKPiBAQCAtMTI0NSwyMSArMTI0OCwyMSBAQCBzdGF0aWMgdm9pZCBnZW42X3BwZ3R0X2lu c2VydF9lbnRyaWVzKHN0cnVjdCBpOTE1X2FkZHJlc3Nfc3BhY2UgKnZtLAo+ICAgCXB0X3ZhZGRy ID0gTlVMTDsKPiAgIAlmb3JfZWFjaF9zZ19wYWdlKHBhZ2VzLT5zZ2wsICZzZ19pdGVyLCBwYWdl cy0+bmVudHMsIDApIHsKPiAgIAkJaWYgKHB0X3ZhZGRyID09IE5VTEwpCj4gLQkJCXB0X3ZhZGRy ID0ga21hcF9hdG9taWMocHBndHQtPnBkLnBhZ2VfdGFibGVbYWN0X3B0XS0+YmFzZS5wYWdlKTsK PiArCQkJcHRfdmFkZHIgPSBrbWFwX3B4KHBwZ3R0LT5wZC5wYWdlX3RhYmxlW2FjdF9wdF0pOwo+ Cj4gICAJCXB0X3ZhZGRyW2FjdF9wdGVdID0KPiAgIAkJCXZtLT5wdGVfZW5jb2RlKHNnX3BhZ2Vf aXRlcl9kbWFfYWRkcmVzcygmc2dfaXRlciksCj4gICAJCQkJICAgICAgIGNhY2hlX2xldmVsLCB0 cnVlLCBmbGFncyk7Cj4KPiAgIAkJaWYgKCsrYWN0X3B0ZSA9PSBHRU42X1BURVMpIHsKPiAtCQkJ a3VubWFwX2F0b21pYyhwdF92YWRkcik7Cj4gKwkJCWt1bm1hcF9weChwcGd0dCwgcHRfdmFkZHIp Owo+ICAgCQkJcHRfdmFkZHIgPSBOVUxMOwo+ICAgCQkJYWN0X3B0Kys7Cj4gICAJCQlhY3RfcHRl ID0gMDsKPiAgIAkJfQo+ICAgCX0KPiAgIAlpZiAocHRfdmFkZHIpCj4gLQkJa3VubWFwX2F0b21p YyhwdF92YWRkcik7Cj4gKwkJa3VubWFwX3B4KHBwZ3R0LCBwdF92YWRkcik7Cj4gICB9Cj4KPiAg IHN0YXRpYyB2b2lkIGdlbjZfaW5pdGlhbGl6ZV9wdChzdHJ1Y3QgaTkxNV9hZGRyZXNzX3NwYWNl ICp2bSwKPgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJ bnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0 cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=