From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: Re: [PATCH 4/4] drm/i915: Support for pread/pwrite from/to non shmem backed objects Date: Thu, 02 Jul 2015 11:42:44 +0100 Message-ID: <559515A4.4040205@linux.intel.com> References: <1435742747-3782-1-git-send-email-ankitprasad.r.sharma@intel.com> <1435742747-3782-5-git-send-email-ankitprasad.r.sharma@intel.com> 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 D886B6E06A for ; Thu, 2 Jul 2015 03:42:53 -0700 (PDT) In-Reply-To: <1435742747-3782-5-git-send-email-ankitprasad.r.sharma@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: ankitprasad.r.sharma@intel.com, intel-gfx@lists.freedesktop.org Cc: akash.goel@intel.com, shashidhar.hiremath@intel.com List-Id: intel-gfx@lists.freedesktop.org Ck9uIDA3LzAxLzIwMTUgMTA6MjUgQU0sIGFua2l0cHJhc2FkLnIuc2hhcm1hQGludGVsLmNvbSB3 cm90ZToKPiBGcm9tOiBBbmtpdHByYXNhZCBTaGFybWEgPGFua2l0cHJhc2FkLnIuc2hhcm1hQGlu dGVsLmNvbT4KPgo+IFRoaXMgcGF0Y2ggYWRkcyBzdXBwb3J0IGZvciBleHRlbmRpbmcgdGhlIHBy ZWFkL3B3cml0ZSBmdW5jdGlvbmFsaXR5Cj4gZm9yIG9iamVjdHMgbm90IGJhY2tlZCBieSBzaG1l bS4gVGhlIGFjY2VzcyB3aWxsIGJlIG1hZGUgdGhyb3VnaAo+IGd0dCBpbnRlcmZhY2UuCj4gVGhp cyB3aWxsIGNvdmVyIHByaW1lIG9iamVjdHMgYXMgd2VsbCBhcyBzdG9sZW4gbWVtb3J5IGJhY2tl ZCBvYmplY3RzCj4gYnV0IGZvciB1c2VycHRyIG9iamVjdHMgaXQgaXMgc3RpbGwgZm9yYmlkZGVu Lgo+Cj4gdjI6IGRyb3AgbG9ja3MgYXJvdW5kIHNsb3dfdXNlcl9hY2Nlc3MsIHByZWZhdWx0IHRo ZSBwYWdlcyBiZWZvcmUKPiBhY2Nlc3MgKENocmlzKQo+Cj4gdjM6IFJlYmFzZWQgdG8gdGhlIGxh dGVzdCBkcm0taW50ZWwtbmlnaHRseSAoQW5raXQpCj4KPiB0ZXN0Y2FzZTogaWd0L2dlbV9zdG9s ZW4KID4KPiBTaWduZWQtb2ZmLWJ5OiBBbmtpdHByYXNhZCBTaGFybWEgPGFua2l0cHJhc2FkLnIu c2hhcm1hQGludGVsLmNvbT4KPiAtLS0KPiAgIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2Vt LmMgfCAxMzcgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLQo+ICAgMSBm aWxlIGNoYW5nZWQsIDEyMCBpbnNlcnRpb25zKCspLCAxNyBkZWxldGlvbnMoLSkKPgo+IGRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jIGIvZHJpdmVycy9ncHUvZHJt L2k5MTUvaTkxNV9nZW0uYwo+IGluZGV4IDRhY2YzMzEuLjRiZTZlYjQgMTAwNjQ0Cj4gLS0tIGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfZ2VtLmMKPiBAQCAtNjI5LDYgKzYyOSwxMDIgQEAgc2htZW1fcHJlYWRfc2xvdyhz dHJ1Y3QgcGFnZSAqcGFnZSwgaW50IHNobWVtX3BhZ2Vfb2Zmc2V0LCBpbnQgcGFnZV9sZW5ndGgs Cj4gICAJcmV0dXJuIHJldCA/IC0gRUZBVUxUIDogMDsKPiAgIH0KPgo+ICtzdGF0aWMgaW5saW5l IGludAo+ICtzbG93X3VzZXJfYWNjZXNzKHN0cnVjdCBpb19tYXBwaW5nICptYXBwaW5nLAo+ICsJ CSBsb2ZmX3QgcGFnZV9iYXNlLCBpbnQgcGFnZV9vZmZzZXQsCj4gKwkJIGNoYXIgX191c2VyICp1 c2VyX2RhdGEsCj4gKwkJIGludCBsZW5ndGgsIGJvb2wgd3JpdGUpCj4gK3sKPiArCXZvaWQgX19p b21lbSAqdmFkZHJfaW5hdG9taWM7Cj4gKwl2b2lkICp2YWRkcjsKPiArCXVuc2lnbmVkIGxvbmcg dW53cml0dGVuOwo+ICsKPiArCXZhZGRyX2luYXRvbWljID0gaW9fbWFwcGluZ19tYXBfd2MobWFw cGluZywgcGFnZV9iYXNlKTsKPiArCS8qIFdlIGNhbiB1c2UgdGhlIGNwdSBtZW0gY29weSBmdW5j dGlvbiBiZWNhdXNlIHRoaXMgaXMgWDg2LiAqLwo+ICsJdmFkZHIgPSAodm9pZCBfX2ZvcmNlICop dmFkZHJfaW5hdG9taWMgKyBwYWdlX29mZnNldDsKPiArCWlmICh3cml0ZSkKPiArCQl1bndyaXR0 ZW4gPSBfX2NvcHlfZnJvbV91c2VyKHZhZGRyLCB1c2VyX2RhdGEsIGxlbmd0aCk7Cj4gKwllbHNl Cj4gKwkJdW53cml0dGVuID0gX19jb3B5X3RvX3VzZXIodXNlcl9kYXRhLCB2YWRkciwgbGVuZ3Ro KTsKPiArCj4gKwlpb19tYXBwaW5nX3VubWFwKHZhZGRyX2luYXRvbWljKTsKPiArCXJldHVybiB1 bndyaXR0ZW47Cj4gK30KCkkgYW0gbm90IHN1cGVyIGZhbWlsaWFyIHdpdGggbG93IGxldmVsIG1h cHBpbmcgYnVzaW5lc3MuIEJ1dCBpdCBsb29rcyAKY29ycmVjdCB0byBtZS4gSnVzdCBvbmUgcXVl c3Rpb24gd291bGQgYmUgaWYgdGhlcmUgYXJlIGFueSBkb3duc2lkZXMgdG8gCldDIG1hcHBpbmc/ IElmIGluIHRoZSByZWFkIGNhc2UgaXQgd291bGQgYmUgYW55IGFkdmFudGFnZSBub3QgdG8gYXNr IGZvciBXQz8KCj4gK3N0YXRpYyBpbnQKPiAraTkxNV9nZW1fZ3R0X3ByZWFkX3B3cml0ZShzdHJ1 Y3QgZHJtX2RldmljZSAqZGV2LAo+ICsJCQkgIHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpv YmosIHVpbnQ2NF90IHNpemUsCj4gKwkJCSAgdWludDY0X3QgZGF0YV9vZmZzZXQsIHVpbnQ2NF90 IGRhdGFfcHRyLCBib29sIHdyaXRlKQo+ICt7Cj4gKwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAq ZGV2X3ByaXYgPSBkZXYtPmRldl9wcml2YXRlOwo+ICsJY2hhciBfX3VzZXIgKnVzZXJfZGF0YTsK PiArCXNzaXplX3QgcmVtYWluOwo+ICsJbG9mZl90IG9mZnNldCwgcGFnZV9iYXNlOwo+ICsJaW50 IHBhZ2Vfb2Zmc2V0LCBwYWdlX2xlbmd0aCwgcmV0ID0gMDsKPiArCj4gKwlyZXQgPSBpOTE1X2dl bV9vYmpfZ2d0dF9waW4ob2JqLCAwLCBQSU5fTUFQUEFCTEUpOwo+ICsJaWYgKHJldCkKPiArCQln b3RvIG91dDsKPiArCj4gKwlyZXQgPSBpOTE1X2dlbV9vYmplY3Rfc2V0X3RvX2d0dF9kb21haW4o b2JqLCB3cml0ZSk7Cj4gKwlpZiAocmV0KQo+ICsJCWdvdG8gb3V0X3VucGluOwo+ICsKPiArCXJl dCA9IGk5MTVfZ2VtX29iamVjdF9wdXRfZmVuY2Uob2JqKTsKPiArCWlmIChyZXQpCj4gKwkJZ290 byBvdXRfdW5waW47Cj4gKwo+ICsJdXNlcl9kYXRhID0gdG9fdXNlcl9wdHIoZGF0YV9wdHIpOwo+ ICsJcmVtYWluID0gc2l6ZTsKClN0cmljdGx5IHNwZWFraW5nIHVpbnQ2NF90IGNhbiBvdmVyZmxv dyBzc2l6ZV90LCBjb21waWxlciBkb2VzIG5vdCBjYXJlIAppbiB0aGlzIGNhc2U/Cgo+ICsKPiAr CW9mZnNldCA9IGk5MTVfZ2VtX29ial9nZ3R0X29mZnNldChvYmopICsgZGF0YV9vZmZzZXQ7Cj4g Kwo+ICsJaWYgKHdyaXRlKQo+ICsJCWludGVsX2ZiX29ial9pbnZhbGlkYXRlKG9iaiwgT1JJR0lO X0dUVCk7Cj4gKwo+ICsJbXV0ZXhfdW5sb2NrKCZkZXYtPnN0cnVjdF9tdXRleCk7Cj4gKwlpZiAo IXdyaXRlICYmIGxpa2VseSghaTkxNS5wcmVmYXVsdF9kaXNhYmxlKSkKPiArCQlyZXQgPSBmYXVs dF9pbl9tdWx0aXBhZ2VzX3dyaXRlYWJsZSh1c2VyX2RhdGEsIHJlbWFpbik7CgpBIGJpdCBjb25m dXNpbmcgcmVhZC93cml0ZSBpbnZlcnNpb24uIDopIEJ1dCBjb3JyZWN0LiBKdXN0IHdvbmRlcmlu ZyBpZiAKaXQgd291bGQgbWFrZSBzZW5zZSB0byBpbnZlcnQgdGhlIGJvb2xlYW4gYXQgbGVhc3Qg aW4gc2xvd191c2VyX2FjY2Vzcy4gCk9yIGluIGZhY3QganVzdCBjYWxsIGl0IHB3cml0ZSBpbnN0 ZWFkIG9mIHdyaXRlIHRvIHJlZmxlY3QgcHdyaXRlID09IAp0cnVlIGlzIF9yZWFkaW5nXyBmcm9t IHVzZXIgbWVtb3J5LgoKPiArCXdoaWxlIChyZW1haW4gPiAwKSB7Cj4gKwkJLyogT3BlcmF0aW9u IGluIHRoaXMgcGFnZQo+ICsJCSAqCj4gKwkJICogcGFnZV9iYXNlID0gcGFnZSBvZmZzZXQgd2l0 aGluIGFwZXJ0dXJlCj4gKwkJICogcGFnZV9vZmZzZXQgPSBvZmZzZXQgd2l0aGluIHBhZ2UKPiAr CQkgKiBwYWdlX2xlbmd0aCA9IGJ5dGVzIHRvIGNvcHkgZm9yIHRoaXMgcGFnZQo+ICsJCSAqLwo+ ICsJCXBhZ2VfYmFzZSA9IG9mZnNldCAmIFBBR0VfTUFTSzsKPiArCQlwYWdlX29mZnNldCA9IG9m ZnNldF9pbl9wYWdlKG9mZnNldCk7Cj4gKwkJcGFnZV9sZW5ndGggPSByZW1haW47Cj4gKwkJaWYg KChwYWdlX29mZnNldCArIHJlbWFpbikgPiBQQUdFX1NJWkUpCj4gKwkJCXBhZ2VfbGVuZ3RoID0g UEFHRV9TSVpFIC0gcGFnZV9vZmZzZXQ7CgpJdCB3b3VsZCBzYXZlIHNvbWUgYXJpdGhtZXRpY3Mg YW5kIGJyYW5jaGluZyB0byBwdWxsIG91dCB0aGUgZmlyc3QgCnBvdGVudGlhbGx5IHVuYWxpZ25l ZCBjb3B5IG91dCBvZiB0aGUgbG9vcCBhbmQgdGhlbiBwYWdlX29mZnNldCB3b3VsZCBiZSAKemVy byBmb3IgMm5kIHBhZ2Ugb253YXJkcy4KCj4gKwkJLyogVGhpcyBpcyBhIHNsb3cgcmVhZC93cml0 ZSBhcyBpdCB0cmllcyB0byByZWFkIGZyb20KPiArCQkgKiBhbmQgd3JpdGUgdG8gdXNlciBtZW1v cnkgd2hpY2ggbWF5IHJlc3VsdCBpbnRvIHBhZ2UKPiArCQkgKiBmYXVsdHMKPiArCQkgKi8KPiAr CQlyZXQgPSBzbG93X3VzZXJfYWNjZXNzKGRldl9wcml2LT5ndHQubWFwcGFibGUsIHBhZ2VfYmFz ZSwKPiArCQkJCSAgICAgICBwYWdlX29mZnNldCwgdXNlcl9kYXRhLAo+ICsJCQkJICAgICAgIHBh Z2VfbGVuZ3RoLCB3cml0ZSk7Cj4gKwo+ICsJCWlmIChyZXQpIHsKPiArCQkJcmV0ID0gLUVJTlZB TDsKPiArCQkJYnJlYWs7Cj4gKwkJfQo+ICsKPiArCQlyZW1haW4gLT0gcGFnZV9sZW5ndGg7Cj4g KwkJdXNlcl9kYXRhICs9IHBhZ2VfbGVuZ3RoOwo+ICsJCW9mZnNldCArPSBwYWdlX2xlbmd0aDsK PiArCX0KPiArCj4gKwltdXRleF9sb2NrKCZkZXYtPnN0cnVjdF9tdXRleCk7CgpDYWxsZXIgaGFk IGl0IGludGVycnVwdGlibGUuCgo+ICsKPiArb3V0X3VucGluOgo+ICsJaTkxNV9nZW1fb2JqZWN0 X2dndHRfdW5waW4ob2JqKTsKPiArb3V0Ogo+ICsJcmV0dXJuIHJldDsKPiArfQo+ICsKPiAgIHN0 YXRpYyBpbnQKPiAgIGk5MTVfZ2VtX3NobWVtX3ByZWFkKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYs Cj4gICAJCSAgICAgc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaiwKPiBAQCAtNzUyLDE3 ICs4NDgsMTkgQEAgaTkxNV9nZW1fcHJlYWRfaW9jdGwoc3RydWN0IGRybV9kZXZpY2UgKmRldiwg dm9pZCAqZGF0YSwKPiAgIAkJZ290byBvdXQ7Cj4gICAJfQo+Cj4gLQkvKiBwcmltZSBvYmplY3Rz IGhhdmUgbm8gYmFja2luZyBmaWxwIHRvIEdFTSBwcmVhZC9wd3JpdGUKPiAtCSAqIHBhZ2VzIGZy b20uCj4gLQkgKi8KPiAtCWlmICghb2JqLT5iYXNlLmZpbHApIHsKPiAtCQlyZXQgPSAtRUlOVkFM Owo+IC0JCWdvdG8gb3V0Owo+IC0JfQo+IC0KPiAgIAl0cmFjZV9pOTE1X2dlbV9vYmplY3RfcHJl YWQob2JqLCBhcmdzLT5vZmZzZXQsIGFyZ3MtPnNpemUpOwo+Cj4gLQlyZXQgPSBpOTE1X2dlbV9z aG1lbV9wcmVhZChkZXYsIG9iaiwgYXJncywgZmlsZSk7Cj4gKwkvKiBwcmVhZCBmb3Igbm9uIHNo bWVtIGJhY2tlZCBvYmplY3RzICovCj4gKwlpZiAoIW9iai0+YmFzZS5maWxwKSB7Cj4gKwkJaWYg KG9iai0+dGlsaW5nX21vZGUgPT0gSTkxNV9USUxJTkdfTk9ORSkKPiArCQkJcmV0ID0gaTkxNV9n ZW1fZ3R0X3ByZWFkX3B3cml0ZShkZXYsIG9iaiwgYXJncy0+c2l6ZSwKPiArCQkJCQkJCWFyZ3Mt Pm9mZnNldCwKPiArCQkJCQkJCWFyZ3MtPmRhdGFfcHRyLAo+ICsJCQkJCQkJZmFsc2UpOwo+ICsJ CWVsc2UKPiArCQkJcmV0ID0gLUVJTlZBTDsKPiArCX0gZWxzZQo+ICsJCXJldCA9IGk5MTVfZ2Vt X3NobWVtX3ByZWFkKGRldiwgb2JqLCBhcmdzLCBmaWxlKTsKClNhbWUgY29kaW5nIHN0eWxlIGRp c2FncmVlbWVudCBvbiB3aGV0aGVyIG9yIG5vdCBib3RoIGJsb2NrcyBzaG91bGQgaGF2ZSAKYnJh Y2VzLgoKUmVnYXJkcywKClR2cnRrbwpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVl ZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZv L2ludGVsLWdmeAo=