From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ankitprasad Sharma Subject: Re: [PATCH 08/10] drm/i915: Support for pread/pwrite from/to non shmem backed objects Date: Fri, 19 Feb 2016 11:24:11 +0530 Message-ID: <1455861251.2500.17.camel@ankitprasad-desktop> References: <1454578211-24823-1-git-send-email-ankitprasad.r.sharma@intel.com> <1454578211-24823-9-git-send-email-ankitprasad.r.sharma@intel.com> <56BC731A.1060904@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by gabe.freedesktop.org (Postfix) with ESMTP id 22E586ED9F for ; Fri, 19 Feb 2016 06:17:16 +0000 (UTC) In-Reply-To: <56BC731A.1060904@linux.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Tvrtko Ursulin Cc: intel-gfx@lists.freedesktop.org, akash.goel@intel.com, shashidhar.hiremath@intel.com List-Id: intel-gfx@lists.freedesktop.org SGksCk9uIFRodSwgMjAxNi0wMi0xMSBhdCAxMTo0MCArMDAwMCwgVHZydGtvIFVyc3VsaW4gd3Jv dGU6Cgo+ID4gKwo+ID4gKwltdXRleF91bmxvY2soJmRldi0+c3RydWN0X211dGV4KTsKPiA+ICsJ aWYgKGxpa2VseSghaTkxNS5wcmVmYXVsdF9kaXNhYmxlKSkgewo+ID4gKwkJcmV0ID0gZmF1bHRf aW5fbXVsdGlwYWdlc193cml0ZWFibGUodXNlcl9kYXRhLCByZW1haW4pOwo+ID4gKwkJaWYgKHJl dCkgewo+ID4gKwkJCW11dGV4X2xvY2soJmRldi0+c3RydWN0X211dGV4KTsKPiA+ICsJCQlnb3Rv IG91dF91bnBpbjsKPiA+ICsJCX0KPiA+ICsJfQo+ID4gKwo+ID4gKwl3aGlsZSAocmVtYWluID4g MCkgewo+ID4gKwkJLyogT3BlcmF0aW9uIGluIHRoaXMgcGFnZQo+ID4gKwkJICoKPiA+ICsJCSAq IHBhZ2VfYmFzZSA9IHBhZ2Ugb2Zmc2V0IHdpdGhpbiBhcGVydHVyZQo+ID4gKwkJICogcGFnZV9v ZmZzZXQgPSBvZmZzZXQgd2l0aGluIHBhZ2UKPiA+ICsJCSAqIHBhZ2VfbGVuZ3RoID0gYnl0ZXMg dG8gY29weSBmb3IgdGhpcyBwYWdlCj4gPiArCQkgKi8KPiA+ICsJCXUzMiBwYWdlX2Jhc2UgPSBu b2RlLnN0YXJ0Owo+ID4gKwkJdW5zaWduZWQgcGFnZV9vZmZzZXQgPSBvZmZzZXRfaW5fcGFnZShv ZmZzZXQpOwo+ID4gKwkJdW5zaWduZWQgcGFnZV9sZW5ndGggPSBQQUdFX1NJWkUgLSBwYWdlX29m ZnNldDsKPiA+ICsJCXBhZ2VfbGVuZ3RoID0gcmVtYWluIDwgcGFnZV9sZW5ndGggPyByZW1haW4g OiBwYWdlX2xlbmd0aDsKPiA+ICsJCWlmIChub2RlLmFsbG9jYXRlZCkgewo+ID4gKwkJCXdtYigp Owo+ID4gKwkJCWRldl9wcml2LT5ndHQuYmFzZS5pbnNlcnRfcGFnZSgmZGV2X3ByaXYtPmd0dC5i YXNlLAo+ID4gKwkJCQkJCSAgICAgICBpOTE1X2dlbV9vYmplY3RfZ2V0X2RtYV9hZGRyZXNzKG9i aiwgb2Zmc2V0ID4+IFBBR0VfU0hJRlQpLAo+ID4gKwkJCQkJCSAgICAgICBub2RlLnN0YXJ0LAo+ ID4gKwkJCQkJCSAgICAgICBJOTE1X0NBQ0hFX05PTkUsIDApOwo+ID4gKwkJCXdtYigpOwo+ID4g KwkJfSBlbHNlIHsKPiA+ICsJCQlwYWdlX2Jhc2UgKz0gb2Zmc2V0ICYgUEFHRV9NQVNLOwo+ID4g KwkJfQo+ID4gKwkJLyogVGhpcyBpcyBhIHNsb3cgcmVhZC93cml0ZSBhcyBpdCB0cmllcyB0byBy ZWFkIGZyb20KPiA+ICsJCSAqIGFuZCB3cml0ZSB0byB1c2VyIG1lbW9yeSB3aGljaCBtYXkgcmVz dWx0IGludG8gcGFnZQo+ID4gKwkJICogZmF1bHRzLCBhbmQgc28gd2UgY2Fubm90IHBlcmZvcm0g dGhpcyB1bmRlciBzdHJ1Y3RfbXV0ZXguCj4gPiArCQkgKi8KPiA+ICsJCWlmIChzbG93X3VzZXJf YWNjZXNzKGRldl9wcml2LT5ndHQubWFwcGFibGUsIHBhZ2VfYmFzZSwKPiA+ICsJCQkJICAgICBw YWdlX29mZnNldCwgdXNlcl9kYXRhLAo+ID4gKwkJCQkgICAgIHBhZ2VfbGVuZ3RoLCBmYWxzZSkp IHsKPiA+ICsJCQlyZXQgPSAtRUZBVUxUOwo+ID4gKwkJCWJyZWFrOwo+ID4gKwkJfQo+IAo+IFJl YWQgZG9lcyBub3Qgd2FudCB0byB0cnkgdGhlIGZhc3QgYWNjZXNzIGZpcnN0LCBlcXVpdmFsZW50 IHRvIHB3cml0ZSA/ClVzaW5nIGZhc3QgYWNjZXNzIG1lYW5zIHdlIHdpbGwgYmUgdW5hYmxlIHRv IGhhbmRsZSBmYXVsdHMsIHdoaWNoIGFyZQptb3JlIGZyZXF1ZW50IGluIGEgcHJlYWQgY2FzZS4K PiAKPiA+ICsKPiA+ICsJCXJlbWFpbiAtPSBwYWdlX2xlbmd0aDsKPiA+ICsJCXVzZXJfZGF0YSAr PSBwYWdlX2xlbmd0aDsKPiA+ICsJCW9mZnNldCArPSBwYWdlX2xlbmd0aDsKPiA+ICsJfQo+ID4g Kwo+ID4KPiA+IEBAIC04NzAsMjQgKzEwMTIsMzYgQEAgaTkxNV9nZW1fZ3R0X3B3cml0ZV9mYXN0 KHN0cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1LAo+ID4gICAJCXVuc2lnbmVkIHBhZ2VfbGVu Z3RoID0gUEFHRV9TSVpFIC0gcGFnZV9vZmZzZXQ7Cj4gPiAgIAkJcGFnZV9sZW5ndGggPSByZW1h aW4gPCBwYWdlX2xlbmd0aCA/IHJlbWFpbiA6IHBhZ2VfbGVuZ3RoOwo+ID4gICAJCWlmIChub2Rl LmFsbG9jYXRlZCkgewo+ID4gLQkJCXdtYigpOwo+ID4gKwkJCXdtYigpOyAvKiBmbHVzaCB0aGUg d3JpdGUgYmVmb3JlIHdlIG1vZGlmeSB0aGUgR0dUVCAqLwo+ID4gICAJCQlpOTE1LT5ndHQuYmFz ZS5pbnNlcnRfcGFnZSgmaTkxNS0+Z3R0LmJhc2UsCj4gPiAgIAkJCQkJCSAgIGk5MTVfZ2VtX29i amVjdF9nZXRfZG1hX2FkZHJlc3Mob2JqLCBvZmZzZXQgPj4gUEFHRV9TSElGVCksCj4gPiAgIAkJ CQkJCSAgIG5vZGUuc3RhcnQsCj4gPiAgIAkJCQkJCSAgIEk5MTVfQ0FDSEVfTk9ORSwKPiA+ICAg CQkJCQkJICAgMCk7Cj4gPiAtCQkJd21iKCk7Cj4gPiArCQkJd21iKCk7IC8qIGZsdXNoIG1vZGlm aWNhdGlvbnMgdG8gdGhlIEdHVFQgKGluc2VydF9wYWdlKSAqLwo+ID4gICAJCX0gZWxzZSB7Cj4g PiAgIAkJCXBhZ2VfYmFzZSArPSBvZmZzZXQgJiBQQUdFX01BU0s7Cj4gPiAgIAkJfQo+ID4gICAJ CS8qIElmIHdlIGdldCBhIGZhdWx0IHdoaWxlIGNvcHlpbmcgZGF0YSwgdGhlbiAocHJlc3VtYWJs eSkgb3VyCj4gPiAgIAkJICogc291cmNlIHBhZ2UgaXNuJ3QgYXZhaWxhYmxlLiAgUmV0dXJuIHRo ZSBlcnJvciBhbmQgd2UnbGwKPiA+ICAgCQkgKiByZXRyeSBpbiB0aGUgc2xvdyBwYXRoLgo+ID4g KwkJICogSWYgdGhlIG9iamVjdCBpcyBub24tc2htZW0gYmFja2VkLCB3ZSByZXRyeSBhZ2FpbiB3 aXRoIHRoZQo+ID4gKwkJICogcGF0aCB0aGF0IGhhbmRsZXMgcGFnZSBmYXVsdC4KPiA+ICAgCQkg Ki8KPiA+ICAgCQlpZiAoZmFzdF91c2VyX3dyaXRlKGk5MTUtPmd0dC5tYXBwYWJsZSwgcGFnZV9i YXNlLAo+ID4gICAJCQkJICAgIHBhZ2Vfb2Zmc2V0LCB1c2VyX2RhdGEsIHBhZ2VfbGVuZ3RoKSkg ewo+ID4gLQkJCXJldCA9IC1FRkFVTFQ7Cj4gPiAtCQkJZ290byBvdXRfZmx1c2g7Cj4gPiArCQkJ aGl0X3Nsb3dfcGF0aCA9IHRydWU7Cj4gPiArCQkJbXV0ZXhfdW5sb2NrKCZkZXYtPnN0cnVjdF9t dXRleCk7Cj4gPiArCQkJaWYgKHNsb3dfdXNlcl9hY2Nlc3MoaTkxNS0+Z3R0Lm1hcHBhYmxlLAo+ ID4gKwkJCQkJICAgICBwYWdlX2Jhc2UsCj4gPiArCQkJCQkgICAgIHBhZ2Vfb2Zmc2V0LCB1c2Vy X2RhdGEsCj4gPiArCQkJCQkgICAgIHBhZ2VfbGVuZ3RoLCB0cnVlKSkgewo+ID4gKwkJCQlyZXQg PSAtRUZBVUxUOwo+ID4gKwkJCQltdXRleF9sb2NrKCZkZXYtPnN0cnVjdF9tdXRleCk7Cj4gPiAr CQkJCWdvdG8gb3V0X2ZsdXNoOwo+ID4gKwkJCX0KPiAKPiBJIHRoaW5rIHRoZSBmdW5jdGlvbiBu b3cgYmUgY2FsbGVkIGk5MTVfZ2VtX2d0dF9wd3JpdGUuCj4gCj4gV291bGQgaXQgYWxzbyBuZWVk IHRoZSBzYW1lIHByZS1mYXVsdCBhcyBpbiBpOTE1X2dlbV9ndHRfcHJlYWQgPwpJIGRvIG5vdCB0 aGluayBwcmUtZmF1bHQgaXMgbmVlZGVkIGhlcmUsIGFzIGluIHByZWFkIHdlIGFyZSBkZWFsaW5n IHdpdGgKYSByZWFkIGZyb20gdGhlIG9iaiBhbmQgdG8gdGhlIHVzZXIgYnVmZmVyICh3aGljaCBo YXMgbW9yZSBjaGFuY2VzIG9mCmZhdWx0aW5nKS4KV2hpbGUgaW4gdGhlIHB3cml0ZSBjYXNlLCB3 ZSBhcmUgb3B0aW1pc3RpYyB0aGF0IHRoZSB1c2VyIHdvdWxkIGhhdmUKYWxyZWFkeSBtYXBwZWQv YWNjZXNzZWQgdGhlIGJ1ZmZlciBiZWZvcmUgdXNpbmcgaXQgdG8gd3JpdGUgdGhlIGJ1ZmZlcgpj b250ZW50cyBpbnRvIHRoZSBvYmplY3QuCj4gCj4gPiArCj4gPiArCQkJbXV0ZXhfbG9jaygmZGV2 LT5zdHJ1Y3RfbXV0ZXgpOwo+ID4gICAJCX0KPiA+Cj4gPiAgIAkJcmVtYWluIC09IHBhZ2VfbGVu Z3RoOwo+ID4gQEAgLTg5Niw2ICsxMDUwLDkgQEAgaTkxNV9nZW1fZ3R0X3B3cml0ZV9mYXN0KHN0 cnVjdCBkcm1faTkxNV9wcml2YXRlICppOTE1LAo+ID4gICAJfQo+ID4KPiA+ICAgb3V0X2ZsdXNo Ogo+ID4gKwlpZiAoaGl0X3Nsb3dfcGF0aCkKPiA+ICsJCVdBUk5fT04oaTkxNV9nZW1fb2JqZWN0 X3NldF90b19ndHRfZG9tYWluKG9iaiwgdHJ1ZSkpOwo+IAo+IEkgc3VwcG9zZSB0aGlzIGlzIGZv ciB0aGUgc2FtZSByZWFzb24gYXMgaW4gcHJlYWQsIG1heWJlIGR1cGxpY2F0ZSB0aGUgCj4gY29t bWVudCBoZXJlPwo+IAo+ID4gKwo+ID4gICAJaW50ZWxfZmJfb2JqX2ZsdXNoKG9iaiwgZmFsc2Us IE9SSUdJTl9HVFQpOwo+ID4gICBvdXRfdW5waW46Cj4gPiAgIAlpZiAobm9kZS5hbGxvY2F0ZWQp IHsKPiA+IEBAIC0xMTUyLDE0ICsxMzA5LDYgQEAgaTkxNV9nZW1fcHdyaXRlX2lvY3RsKHN0cnVj dCBkcm1fZGV2aWNlICpkZXYsIHZvaWQgKmRhdGEsCj4gPiAgIAkJZ290byBvdXQ7Cj4gPiAgIAl9 Cj4gPgo+ID4gLQkvKiBwcmltZSBvYmplY3RzIGhhdmUgbm8gYmFja2luZyBmaWxwIHRvIEdFTSBw cmVhZC9wd3JpdGUKPiA+IC0JICogcGFnZXMgZnJvbS4KPiA+IC0JICovCj4gPiAtCWlmICghb2Jq LT5iYXNlLmZpbHApIHsKPiA+IC0JCXJldCA9IC1FSU5WQUw7Cj4gPiAtCQlnb3RvIG91dDsKPiA+ IC0JfQo+ID4gLQo+ID4gICAJdHJhY2VfaTkxNV9nZW1fb2JqZWN0X3B3cml0ZShvYmosIGFyZ3Mt Pm9mZnNldCwgYXJncy0+c2l6ZSk7Cj4gPgo+ID4gICAJcmV0ID0gLUVGQVVMVDsKPiA+IEBAIC0x MTY5LDIwICsxMzE4LDIwIEBAIGk5MTVfZ2VtX3B3cml0ZV9pb2N0bChzdHJ1Y3QgZHJtX2Rldmlj ZSAqZGV2LCB2b2lkICpkYXRhLAo+ID4gICAJICogcHJlYWQvcHdyaXRlIGN1cnJlbnRseSBhcmUg cmVhZGluZyBhbmQgd3JpdGluZyBmcm9tIHRoZSBDUFUKPiA+ICAgCSAqIHBlcnNwZWN0aXZlLCBy ZXF1aXJpbmcgbWFudWFsIGRldGlsaW5nIGJ5IHRoZSBjbGllbnQuCj4gPiAgIAkgKi8KPiA+IC0J aWYgKG9iai0+dGlsaW5nX21vZGUgPT0gSTkxNV9USUxJTkdfTk9ORSAmJgo+ID4gLQkgICAgb2Jq LT5iYXNlLndyaXRlX2RvbWFpbiAhPSBJOTE1X0dFTV9ET01BSU5fQ1BVICYmCj4gPiAtCSAgICBj cHVfd3JpdGVfbmVlZHNfY2xmbHVzaChvYmopKSB7Cj4gPiArCWlmICghb2JqLT5iYXNlLmZpbHAg fHwgY3B1X3dyaXRlX25lZWRzX2NsZmx1c2gob2JqKSkgewo+ID4gICAJCXJldCA9IGk5MTVfZ2Vt X2d0dF9wd3JpdGVfZmFzdChkZXZfcHJpdiwgb2JqLCBhcmdzLCBmaWxlKTsKPiA+ICAgCQkvKiBO b3RlIHRoYXQgdGhlIGd0dCBwYXRocyBtaWdodCBmYWlsIHdpdGggbm9uLXBhZ2UtYmFja2VkIHVz ZXIKPiA+ICAgCQkgKiBwb2ludGVycyAoZS5nLiBndHQgbWFwcGluZ3Mgd2hlbiBtb3ZpbmcgZGF0 YSBiZXR3ZWVuCj4gPiAgIAkJICogdGV4dHVyZXMpLiBGYWxsYmFjayB0byB0aGUgc2htZW0gcGF0 aCBpbiB0aGF0IGNhc2UuICovCj4gPiAgIAl9Cj4gPgo+ID4gLQlpZiAocmV0ID09IC1FRkFVTFQg fHwgcmV0ID09IC1FTk9TUEMpIHsKPiA+ICsJaWYgKHJldCA9PSAtRUZBVUxUKSB7Cj4gPiAgIAkJ aWYgKG9iai0+cGh5c19oYW5kbGUpCj4gPiAgIAkJCXJldCA9IGk5MTVfZ2VtX3BoeXNfcHdyaXRl KG9iaiwgYXJncywgZmlsZSk7Cj4gPiAtCQllbHNlCj4gPiArCQllbHNlIGlmIChvYmotPmJhc2Uu ZmlscCkKPiA+ICAgCQkJcmV0ID0gaTkxNV9nZW1fc2htZW1fcHdyaXRlKGRldiwgb2JqLCBhcmdz LCBmaWxlKTsKPiA+ICsJCWVsc2UKPiA+ICsJCQlyZXQgPSAtRU5PREVWOwo+ID4gICAJfQo+ID4K PiA+ICAgb3V0Ogo+ID4gQEAgLTM5NzksOSArNDEyOCw3IEBAIG91dDoKPiA+ICAgCSAqIG9iamVj dCBpcyBub3cgY29oZXJlbnQgYXQgaXRzIG5ldyBjYWNoZSBsZXZlbCAod2l0aCByZXNwZWN0Cj4g PiAgIAkgKiB0byB0aGUgYWNjZXNzIGRvbWFpbikuCj4gPiAgIAkgKi8KPiA+IC0JaWYgKG9iai0+ Y2FjaGVfZGlydHkgJiYKPiA+IC0JICAgIG9iai0+YmFzZS53cml0ZV9kb21haW4gIT0gSTkxNV9H RU1fRE9NQUlOX0NQVSAmJgo+ID4gLQkgICAgY3B1X3dyaXRlX25lZWRzX2NsZmx1c2gob2JqKSkg ewo+ID4gKwlpZiAob2JqLT5jYWNoZV9kaXJ0eSAmJiBjcHVfd3JpdGVfbmVlZHNfY2xmbHVzaChv YmopKSB7Cj4gPiAgIAkJaWYgKGk5MTVfZ2VtX2NsZmx1c2hfb2JqZWN0KG9iaiwgdHJ1ZSkpCj4g PiAgIAkJCWk5MTVfZ2VtX2NoaXBzZXRfZmx1c2gob2JqLT5iYXNlLmRldik7Cj4gPiAgIAl9Cj4g Pgo+IAo+IFJlZ2FyZHMsCj4gCj4gVHZydGtvCj4gClRoYW5rcywKQW5raXQKCl9fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5nIGxp c3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNr dG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=