From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: Re: [PATCH v2 3/5] drm/i915: Add support for CPU mapping to DRM_IOCTL_I915_GEM_MMAP_GTT Date: Wed, 27 Jan 2016 16:01:26 +0000 Message-ID: <56A8E9D6.1070204@linux.intel.com> References: <1453820013-3908-4-git-send-email-tvrtko.ursulin@linux.intel.com> <1453908108-12869-1-git-send-email-tvrtko.ursulin@linux.intel.com> <20160127155102.GM11240@phenom.ffwll.local> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" 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 87D536E6C8 for ; Wed, 27 Jan 2016 08:01:28 -0800 (PST) In-Reply-To: <20160127155102.GM11240@phenom.ffwll.local> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Daniel Vetter Cc: Intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org Ck9uIDI3LzAxLzE2IDE1OjUxLCBEYW5pZWwgVmV0dGVyIHdyb3RlOgo+IE9uIFdlZCwgSmFuIDI3 LCAyMDE2IGF0IDAzOjIxOjQ4UE0gKzAwMDAsIFR2cnRrbyBVcnN1bGluIHdyb3RlOgo+PiBGcm9t OiBUdnJ0a28gVXJzdWxpbiA8dHZydGtvLnVyc3VsaW5AaW50ZWwuY29tPgo+Pgo+PiBUaGlzIGVu YWJsZXMgbWFwcGluZyB2aWEgQ1BVIHVzaW5nIHRoZSBwcm9wZXIgRFJNIG1tYXAgQVBJIGZvcgo+ PiBiZXR0ZXIgZGVidWcgKFZhbGdyaW5kKSBhbmQgaW1wbGVtZW50YXRpb24gc3ltbWV0cnkgaW4g dGhlCj4+IGRyaXZlci4KPj4KPj4gdjI6Cj4+ICAgKiBVc2Ugbm9ybWFsIG11dGV4LCBza2lwIGRv bWFpbiBtYW5hZ2VtZW50IGFuZCBwaW4gcGFnZXMuIChDaHJpcyBXaWxzb24pCj4+ICAgKiBObyBu ZWVkIHRvIGRyb3Agc3RydWN0IG11dGV4IG92ZXIgdm1hX2luc2VydF9wZm4uCj4KPiBJIHRoaW5r IHdlIHN0aWxsIG5lZWVkIHRoYXQgb24gZmlyc3QgZmF1bHQ6Cj4KPiAtIHVzZXJzcGFjIGNhbGxz IHNldF9kb21haW4oR1RUKQo+IC0ga2VybmVsIGRvZXMgbm90aGluZyBzaW5jZSB0aGVyZSdzIG5v IGJpbmRpbmcKPiAtIHVzZXJzcGFjZSBzdGFydHMgYWNjZXNzaW5nIGd0dCBtbWFwCj4gLSBrZXJu ZWwgZmF1bHRzLCBidXQgZG9lc24ndCB1cGRhdGUgZG9tYWluL2ZsdXNoIGNwdSBjYWNoZXMKPiAt PiBCT09NCgpCb29tIHdoYXQ/IDopIChzZXJpb3VzbHkgSSBkb24ndCBmb2xsb3cpCgpBbmQgYXMg YW4gYXNpZGUsIHlvdSB3b3VsZCBtZXJnZSB0aGlzIGluIGdlbmVyYWwgb3Igc2VlIHZhbHVlIGlu IGl0PwoKPiBOZWVkcyBtb3JlIHRlc3RjYXNlcyBJJ2Qgc2F5IDstKQoKT2ggaXQgaGFzIG5vIGRl ZGljYXRlZCBvbmVzLCBqdXN0IGdlbV9tbWFwX2d0dCBoYWNrZWQgdXAgdG8gYWx3YXlzIHBhc3Mg CnRoZSBuZXcgZmxhZyBpbiAoc28gcmVxdWVzdCBDUFUgbW1hcCB2aWEgdGhlIG1tYXBfZ3R0IGlv Y3RsKS4KClJlZ2FyZHMsCgpUdnJ0a28KCj4gLURhbmllbAo+Cj4+ICAgKiBUdXJuIG9mZiB3cml0 ZS1jb21iaW5lIHNldCB1cCBieSB0aGUgRFJNIGNvcmUuCj4+ICAgKiBDb21taXQgbWVzc2FnZS4K Pj4KPj4gU2lnbmVkLW9mZi1ieTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVs LmNvbT4KPj4gQ2M6IENocmlzIFdpbHNvbiA8Y2hyaXNAY2hyaXMtd2lsc29uLmNvLnVrPgo+PiAt LS0KPj4gICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jIHwgOTggKysrKysrKysrKysr KysrKysrKysrKysrKysrKysrKysrKysrKystLS0KPj4gICBpbmNsdWRlL3VhcGkvZHJtL2k5MTVf ZHJtLmggICAgIHwgIDMgKysKPj4gICAyIGZpbGVzIGNoYW5nZWQsIDk1IGluc2VydGlvbnMoKyks IDYgZGVsZXRpb25zKC0pCj4+Cj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2dlbS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYwo+PiBpbmRleCBhMWUy ODMyMDQ3ZTIuLmE2OTBjZWUzMWYyMCAxMDA2NDQKPj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9nZW0uYwo+PiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jCj4+ IEBAIC0xOTU0LDYgKzE5NTQsNjIgQEAgb3V0Ogo+PiAgIAlyZXR1cm4gaTkxNV9nZW1fcmV0X3Rv X3ZtX3JldChkZXZfcHJpdiwgcmV0KTsKPj4gICB9Cj4+Cj4+ICtzdGF0aWMgaW50Cj4+ICtpOTE1 X2dlbV9jcHVfZmF1bHQoc3RydWN0IHZtX2FyZWFfc3RydWN0ICp2bWEsIHN0cnVjdCB2bV9mYXVs dCAqdm1mKQo+PiArewo+PiArCXN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmogPSB0b19p bnRlbF9ibyh2bWEtPnZtX3ByaXZhdGVfZGF0YSk7Cj4+ICsJc3RydWN0IGRybV9kZXZpY2UgKmRl diA9IG9iai0+YmFzZS5kZXY7Cj4+ICsJc3RydWN0IGRybV9pOTE1X3ByaXZhdGUgKmRldl9wcml2 ID0gZGV2LT5kZXZfcHJpdmF0ZTsKPj4gKwlib29sIHdyaXRlID0gISEodm1mLT5mbGFncyAmIEZB VUxUX0ZMQUdfV1JJVEUpOwo+PiArCXBnb2ZmX3QgcGFnZV9vZmZzZXQ7Cj4+ICsJc3RydWN0IHBh Z2UgKnBhZ2U7Cj4+ICsJdW5zaWduZWQgbG9uZyBwZ3Byb3Q7Cj4+ICsJaW50IHJldDsKPj4gKwo+ PiArCS8qIFdlIGRvbid0IHVzZSB2bWYtPnBnb2ZmIHNpbmNlIHRoYXQgaGFzIHRoZSBmYWtlIG9m ZnNldCAqLwo+PiArCXBhZ2Vfb2Zmc2V0ID0gKCh1bnNpZ25lZCBsb25nKXZtZi0+dmlydHVhbF9h ZGRyZXNzIC0gdm1hLT52bV9zdGFydCkgPj4KPj4gKwkJCVBBR0VfU0hJRlQ7Cj4+ICsKPj4gKwl0 cmFjZV9pOTE1X2dlbV9vYmplY3RfZmF1bHQob2JqLCBwYWdlX29mZnNldCwgdHJ1ZSwgd3JpdGUp Owo+PiArCj4+ICsJaW50ZWxfcnVudGltZV9wbV9nZXQoZGV2X3ByaXYpOwo+PiArCj4+ICsJcmV0 ID0gbXV0ZXhfbG9ja19pbnRlcnJ1cHRpYmxlKCZkZXYtPnN0cnVjdF9tdXRleCk7Cj4+ICsJaWYg KHJldCkKPj4gKwkJZ290byBvdXQ7Cj4+ICsKPj4gKwlyZXQgPSBpOTE1X2dlbV9vYmplY3RfZ2V0 X3BhZ2VzKG9iaik7Cj4+ICsJaWYgKHJldCkKPj4gKwkJZ290byBvdXRfdW5sb2NrOwo+PiArCj4+ ICsJaTkxNV9nZW1fb2JqZWN0X3Bpbl9wYWdlcyhvYmopOwo+PiArCj4+ICsJcGFnZSA9IGk5MTVf Z2VtX29iamVjdF9nZXRfcGFnZShvYmosIHBhZ2Vfb2Zmc2V0KTsKPj4gKwlpZiAoIXBhZ2UpIHsK Pj4gKwkJcmV0ID0gLUVGQVVMVDsKPj4gKwkJZ290byBvdXRfdW5waW47Cj4+ICsJfQo+PiArCj4+ ICsJcmV0ID0gdm1faW5zZXJ0X3Bmbih2bWEsICh1bnNpZ25lZCBsb25nKXZtZi0+dmlydHVhbF9h ZGRyZXNzLAo+PiArCQkJICAgIHBhZ2VfdG9fcGZuKHBhZ2UpKTsKPj4gKwlpZiAocmV0ID09IDAp IHsKPj4gKwkJLyogRFJNIGNvcmUgc2V0cyB1cCBXQyBieSBkZWZhdWx0IGFuZCB3ZSB3YW50IFdC LiAqLwo+PiArCQlwZ3Byb3QgPSBwZ3Byb3RfdmFsKHZtX2dldF9wYWdlX3Byb3Qodm1hLT52bV9m bGFncykpOwo+PiArCQlwZ3Byb3QgJj0gfl9QQUdFX0NBQ0hFX01BU0s7Cj4+ICsJCXBncHJvdCB8 PSBjYWNoZW1vZGUycHJvdHZhbChfUEFHRV9DQUNIRV9NT0RFX1dCKTsKPj4gKwkJdm1hLT52bV9w YWdlX3Byb3QgPSBfX3BncHJvdChwZ3Byb3QpOwo+PiArCX0KPj4gKwo+PiArb3V0X3VucGluOgo+ PiArCWk5MTVfZ2VtX29iamVjdF91bnBpbl9wYWdlcyhvYmopOwo+PiArb3V0X3VubG9jazoKPj4g KwltdXRleF91bmxvY2soJmRldi0+c3RydWN0X211dGV4KTsKPj4gK291dDoKPj4gKwlpbnRlbF9y dW50aW1lX3BtX3B1dChkZXZfcHJpdik7Cj4+ICsKPj4gKwlyZXR1cm4gaTkxNV9nZW1fcmV0X3Rv X3ZtX3JldChkZXZfcHJpdiwgcmV0KTsKPj4gK30KPj4gKwo+PiAgIC8qKgo+PiAgICAqIGk5MTVf Z2VtX3JlbGVhc2VfbW1hcCAtIHJlbW92ZSBwaHlzaWNhbCBwYWdlIG1hcHBpbmdzCj4+ICAgICog QG9iajogb2JqIGluIHF1ZXN0aW9uCj4+IEBAIC0yMDc4LDExICsyMTM0LDE4IEBAIHN0YXRpYyB2 b2lkIGk5MTVfZ2VtX29iamVjdF9mcmVlX21tYXBfb2Zmc2V0KHN0cnVjdCBkcm1faTkxNV9nZW1f b2JqZWN0ICpvYmopCj4+ICAgCWRybV9nZW1fZnJlZV9tbWFwX29mZnNldCgmb2JqLT5iYXNlKTsK Pj4gICB9Cj4+Cj4+IC1pbnQKPj4gLWk5MTVfZ2VtX21tYXBfZ3R0KHN0cnVjdCBkcm1fZmlsZSAq ZmlsZSwKPj4gLQkJICBzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAo+PiAtCQkgIHVpbnQzMl90IGhh bmRsZSwKPj4gLQkJICB1aW50NjRfdCAqb2Zmc2V0KQo+PiArc3RhdGljIGNvbnN0IHN0cnVjdCB2 bV9vcGVyYXRpb25zX3N0cnVjdCBpOTE1X2dlbV9jcHVfdm1fb3BzID0gewo+PiArCS5mYXVsdCA9 IGk5MTVfZ2VtX2NwdV9mYXVsdCwKPj4gKwkub3BlbiA9IGRybV9nZW1fdm1fb3BlbiwKPj4gKwku Y2xvc2UgPSBkcm1fZ2VtX3ZtX2Nsb3NlLAo+PiArfTsKPj4gKwo+PiArc3RhdGljIGludAo+PiAr aTkxNV9nZW1fbW1hcChzdHJ1Y3QgZHJtX2ZpbGUgKmZpbGUsCj4+ICsJICAgICAgc3RydWN0IGRy bV9kZXZpY2UgKmRldiwKPj4gKwkgICAgICB1aW50MzJfdCBoYW5kbGUsCj4+ICsJICAgICAgdWlu dDMyX3QgZmxhZ3MsCj4+ICsJICAgICAgdWludDY0X3QgKm9mZnNldCkKPj4gICB7Cj4+ICAgCXN0 cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmo7Cj4+ICAgCWludCByZXQ7Cj4+IEBAIC0yMTAz LDEwICsyMTY2LDIzIEBAIGk5MTVfZ2VtX21tYXBfZ3R0KHN0cnVjdCBkcm1fZmlsZSAqZmlsZSwK Pj4gICAJCWdvdG8gb3V0Owo+PiAgIAl9Cj4+Cj4+ICsJaWYgKCFvYmotPmJhc2UuZmlscCAmJiAo ZmxhZ3MgJiBJOTE1X01NQVAyX0NQVSkpIHsKPj4gKwkJRFJNX0RFQlVHKCJBdHRlbXB0aW5nIHRv IG1tYXAgbm9uLXNobSBiYXNlZCBvYmplY3QgdmlhIENQVSFcbiIpOwo+PiArCQlyZXQgPSAtRUlO VkFMOwo+PiArCQlnb3RvIG91dDsKPj4gKwl9Cj4+ICsKPj4gICAJcmV0ID0gaTkxNV9nZW1fb2Jq ZWN0X2NyZWF0ZV9tbWFwX29mZnNldChvYmopOwo+PiAgIAlpZiAocmV0KQo+PiAgIAkJZ290byBv dXQ7Cj4+Cj4+ICsJaWYgKGZsYWdzICYgSTkxNV9NTUFQMl9DUFUpIHsKPj4gKwkJcmV0ID0gZHJt X3ZtYV9ub2RlX3NldF92bV9vcHMoJm9iai0+YmFzZS52bWFfbm9kZSwKPj4gKwkJCQkJICAgICAg Jmk5MTVfZ2VtX2NwdV92bV9vcHMpOwo+PiArCQlpZiAocmV0KQo+PiArCQkJZ290byBvdXQ7Cj4+ ICsJfQo+PiArCj4+ICAgCSpvZmZzZXQgPSBkcm1fdm1hX25vZGVfb2Zmc2V0X2FkZHIoJm9iai0+ YmFzZS52bWFfbm9kZSk7Cj4+Cj4+ICAgb3V0Ogo+PiBAQCAtMjExNiw2ICsyMTkyLDE1IEBAIHVu bG9jazoKPj4gICAJcmV0dXJuIHJldDsKPj4gICB9Cj4+Cj4+ICtpbnQKPj4gK2k5MTVfZ2VtX21t YXBfZ3R0KHN0cnVjdCBkcm1fZmlsZSAqZmlsZSwKPj4gKwkJICBzdHJ1Y3QgZHJtX2RldmljZSAq ZGV2LAo+PiArCQkgIHVpbnQzMl90IGhhbmRsZSwKPj4gKwkJICB1aW50NjRfdCAqb2Zmc2V0KQo+ PiArewo+PiArCXJldHVybiBpOTE1X2dlbV9tbWFwKGZpbGUsIGRldiwgaGFuZGxlLCAwLCBvZmZz ZXQpOwo+PiArfQo+PiArCj4+ICAgLyoqCj4+ICAgICogaTkxNV9nZW1fbW1hcF9ndHRfaW9jdGwg LSBwcmVwYXJlIGFuIG9iamVjdCBmb3IgR1RUIG1tYXAnaW5nCj4+ICAgICogQGRldjogRFJNIGRl dmljZQo+PiBAQCAtMjEzNyw3ICsyMjIyLDggQEAgaTkxNV9nZW1fbW1hcF9ndHRfaW9jdGwoc3Ry dWN0IGRybV9kZXZpY2UgKmRldiwgdm9pZCAqZGF0YSwKPj4gICB7Cj4+ICAgCXN0cnVjdCBkcm1f aTkxNV9nZW1fbW1hcF9ndHQgKmFyZ3MgPSBkYXRhOwo+Pgo+PiAtCXJldHVybiBpOTE1X2dlbV9t bWFwX2d0dChmaWxlLCBkZXYsIGFyZ3MtPmhhbmRsZSwgJmFyZ3MtPm9mZnNldCk7Cj4+ICsJcmV0 dXJuIGk5MTVfZ2VtX21tYXAoZmlsZSwgZGV2LCBhcmdzLT5oYW5kbGUsIGFyZ3MtPmZsYWdzLAo+ PiArCQkJICAgICAmYXJncy0+b2Zmc2V0KTsKPj4gICB9Cj4+Cj4+ICAgLyogSW1tZWRpYXRlbHkg ZGlzY2FyZCB0aGUgYmFja2luZyBzdG9yYWdlICovCj4+IGRpZmYgLS1naXQgYS9pbmNsdWRlL3Vh cGkvZHJtL2k5MTVfZHJtLmggYi9pbmNsdWRlL3VhcGkvZHJtL2k5MTVfZHJtLmgKPj4gaW5kZXgg NmExOTM3MTM5MWZhLi4zNTlhMzZkNjA0YmIgMTAwNjQ0Cj4+IC0tLSBhL2luY2x1ZGUvdWFwaS9k cm0vaTkxNV9kcm0uaAo+PiArKysgYi9pbmNsdWRlL3VhcGkvZHJtL2k5MTVfZHJtLmgKPj4gQEAg LTUyOCw2ICs1MjgsOSBAQCBzdHJ1Y3QgZHJtX2k5MTVfZ2VtX21tYXBfZ3R0IHsKPj4gICAJICog VGhpcyBpcyBhIGZpeGVkLXNpemUgdHlwZSBmb3IgMzIvNjQgY29tcGF0aWJpbGl0eS4KPj4gICAJ ICovCj4+ICAgCV9fdTY0IG9mZnNldDsKPj4gKwo+PiArI2RlZmluZSBJOTE1X01NQVAyX0NQVSAg IDB4MQo+PiArCV9fdTY0IGZsYWdzOwo+PiAgIH07Cj4+Cj4+ICAgc3RydWN0IGRybV9pOTE1X2dl bV9zZXRfZG9tYWluIHsKPj4gLS0KPj4gMS45LjEKPj4KPj4gX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX18KPj4gSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdAo+PiBJ bnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCj4+IGh0dHA6Ly9saXN0cy5mcmVlZGVza3Rv cC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngKPgpfX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdm eEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWls bWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=