From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ankitprasad Sharma Subject: Re: [PATCH 5/6] drm/i915: Support for pread/pwrite from/to non shmem backed objects Date: Wed, 28 Oct 2015 16:48:22 +0530 Message-ID: <1446031102.12247.14.camel@ankitprasad-desktop> References: <1444285469-8187-1-git-send-email-ankitprasad.r.sharma@intel.com> <1444285469-8187-6-git-send-email-ankitprasad.r.sharma@intel.com> <5616761B.106@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" 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 90E2089467 for ; Wed, 28 Oct 2015 04:38:08 -0700 (PDT) In-Reply-To: <5616761B.106@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 T24gVGh1LCAyMDE1LTEwLTA4IGF0IDE0OjU2ICswMTAwLCBUdnJ0a28gVXJzdWxpbiB3cm90ZToK PiBIaSwKPiAKPiBPbiAwOC8xMC8xNSAwNzoyNCwgYW5raXRwcmFzYWQuci5zaGFybWFAaW50ZWwu Y29tIHdyb3RlOgo+ID4gRnJvbTogQW5raXRwcmFzYWQgU2hhcm1hIDxhbmtpdHByYXNhZC5yLnNo YXJtYUBpbnRlbC5jb20+Cj4gPgo+ID4gVGhpcyBwYXRjaCBhZGRzIHN1cHBvcnQgZm9yIGV4dGVu ZGluZyB0aGUgcHJlYWQvcHdyaXRlIGZ1bmN0aW9uYWxpdHkKPiA+IGZvciBvYmplY3RzIG5vdCBi YWNrZWQgYnkgc2htZW0uIFRoZSBhY2Nlc3Mgd2lsbCBiZSBtYWRlIHRocm91Z2gKPiA+IGd0dCBp bnRlcmZhY2UuCj4gPiBUaGlzIHdpbGwgY292ZXIgcHJpbWUgb2JqZWN0cyBhcyB3ZWxsIGFzIHN0 b2xlbiBtZW1vcnkgYmFja2VkIG9iamVjdHMKPiA+IGJ1dCBmb3IgdXNlcnB0ciBvYmplY3RzIGl0 IGlzIHN0aWxsIGZvcmJpZGRlbi4KPiAKPiBXaGVyZSBpcyB0aGUgcGFydCB3aGljaCBmb3JiaWRz IGl0IGZvciB1c2VycHRyIG9iamVjdHM/CkluIHZlcnNpb24gNSwgdXBkYXRlZCB0aGUgcGF0Y2gg aGFuZGxlIHB3cml0ZS9wcmVhZCBmb3IgYWxsIG5vbi1zaG1lbQpiYWNrZWQgb2JqZWN0cywgaW5j bHVkaW5nIHVzZXJwdHIgb2JqZWN0cwoKV2lsbCB1cGRhdGUgdGhlIENvbW1pdCBtZXNzYWdlCj4g Cj4gPiB2MjogRHJvcCBsb2NrcyBhcm91bmQgc2xvd191c2VyX2FjY2VzcywgcHJlZmF1bHQgdGhl IHBhZ2VzIGJlZm9yZQo+ID4gYWNjZXNzIChDaHJpcykKPiA+Cj4gPiB2MzogUmViYXNlZCB0byB0 aGUgbGF0ZXN0IGRybS1pbnRlbC1uaWdodGx5IChBbmtpdCkKPiA+Cj4gPiB2NDogTW92ZWQgcGFn ZSBiYXNlICYgb2Zmc2V0IGNhbGN1bGF0aW9ucyBvdXRzaWRlIHRoZSBjb3B5IGxvb3AsCj4gPiBj b3JyZWN0ZWQgZGF0YSB0eXBlcyBmb3Igc2l6ZSBhbmQgb2Zmc2V0IHZhcmlhYmxlcywgY29ycmVj dGVkIGlmLWVsc2UKPiA+IGJyYWNlcyBmb3JtYXQgKFR2cnRrby9rZXJuZWxkb2NzKQo+ID4KPiA+ IHY1OiBFbmFibGVkIHByZWFkL3B3cml0ZSBmb3IgYWxsIG5vbi1zaG1lbSBiYWNrZWQgb2JqZWN0 cyBpbmNsdWRpbmcKPiA+IHdpdGhvdXQgdGlsaW5nIHJlc3RyaWN0aW9ucyAoQW5raXQpCj4gPgo+ ID4gdjY6IFVzaW5nIHB3cml0ZV9mYXN0IGZvciBub24tc2htZW0gYmFja2VkIG9iamVjdHMgYXMg d2VsbCAoQ2hyaXMpCj4gPgo+ID4gVGVzdGNhc2U6IGlndC9nZW1fc3RvbGVuCj4gPgo+ID4gU2ln bmVkLW9mZi1ieTogQW5raXRwcmFzYWQgU2hhcm1hIDxhbmtpdHByYXNhZC5yLnNoYXJtYUBpbnRl bC5jb20+Cj4gPiAtLS0KPiA+ICAgZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYyB8IDEy NSArKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tCj4gPiAgIDEgZmlsZSBj aGFuZ2VkLCAxMDQgaW5zZXJ0aW9ucygrKSwgMjEgZGVsZXRpb25zKC0pCj4gPgo+ID4gZGlmZiAt LWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMgYi9kcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X2dlbS5jCj4gPiBpbmRleCA5MWEyZTk3Li4yYzk0ZTIyIDEwMDY0NAo+ID4gLS0t IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYwo+ID4gKysrIGIvZHJpdmVycy9ncHUv ZHJtL2k5MTUvaTkxNV9nZW0uYwo+ID4gQEAgLTYxNCw2ICs2MTQsOTkgQEAgc2htZW1fcHJlYWRf c2xvdyhzdHJ1Y3QgcGFnZSAqcGFnZSwgaW50IHNobWVtX3BhZ2Vfb2Zmc2V0LCBpbnQgcGFnZV9s ZW5ndGgsCj4gPiAgIAlyZXR1cm4gcmV0ID8gLSBFRkFVTFQgOiAwOwo+ID4gICB9Cj4gPgo+ID4g K3N0YXRpYyBpbmxpbmUgdWludDY0X3QKPiA+ICtzbG93X3VzZXJfYWNjZXNzKHN0cnVjdCBpb19t YXBwaW5nICptYXBwaW5nLAo+ID4gKwkJIHVpbnQ2NF90IHBhZ2VfYmFzZSwgaW50IHBhZ2Vfb2Zm c2V0LAo+ID4gKwkJIGNoYXIgX191c2VyICp1c2VyX2RhdGEsCj4gPiArCQkgaW50IGxlbmd0aCwg Ym9vbCBwd3JpdGUpCj4gPiArewo+ID4gKwl2b2lkIF9faW9tZW0gKnZhZGRyX2luYXRvbWljOwo+ ID4gKwl2b2lkICp2YWRkcjsKPiA+ICsJdWludDY0X3QgdW53cml0dGVuOwo+ID4gKwo+ID4gKwl2 YWRkcl9pbmF0b21pYyA9IGlvX21hcHBpbmdfbWFwX3djKG1hcHBpbmcsIHBhZ2VfYmFzZSk7Cj4g PiArCS8qIFdlIGNhbiB1c2UgdGhlIGNwdSBtZW0gY29weSBmdW5jdGlvbiBiZWNhdXNlIHRoaXMg aXMgWDg2LiAqLwo+ID4gKwl2YWRkciA9ICh2b2lkIF9fZm9yY2UgKil2YWRkcl9pbmF0b21pYyAr IHBhZ2Vfb2Zmc2V0Owo+ID4gKwlpZiAocHdyaXRlKQo+ID4gKwkJdW53cml0dGVuID0gX19jb3B5 X2Zyb21fdXNlcih2YWRkciwgdXNlcl9kYXRhLCBsZW5ndGgpOwo+ID4gKwllbHNlCj4gPiArCQl1 bndyaXR0ZW4gPSBfX2NvcHlfdG9fdXNlcih1c2VyX2RhdGEsIHZhZGRyLCBsZW5ndGgpOwo+ID4g Kwo+ID4gKwlpb19tYXBwaW5nX3VubWFwKHZhZGRyX2luYXRvbWljKTsKPiA+ICsJcmV0dXJuIHVu d3JpdHRlbjsKPiA+ICt9Cj4gPiArCj4gPiArc3RhdGljIGludAo+ID4gK2k5MTVfZ2VtX2d0dF9w cmVhZChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAo+ID4gKwkJICAgc3RydWN0IGRybV9pOTE1X2dl bV9vYmplY3QgKm9iaiwgdWludDY0X3Qgc2l6ZSwKPiA+ICsJCSAgIHVpbnQ2NF90IGRhdGFfb2Zm c2V0LCB1aW50NjRfdCBkYXRhX3B0cikKPiA+ICt7Cj4gPiArCXN0cnVjdCBkcm1faTkxNV9wcml2 YXRlICpkZXZfcHJpdiA9IGRldi0+ZGV2X3ByaXZhdGU7Cj4gPiArCWNoYXIgX191c2VyICp1c2Vy X2RhdGE7Cj4gPiArCXVpbnQ2NF90IHJlbWFpbjsKPiA+ICsJdWludDY0X3Qgb2Zmc2V0LCBwYWdl X2Jhc2U7Cj4gPiArCWludCBwYWdlX29mZnNldCwgcGFnZV9sZW5ndGgsIHJldCA9IDA7Cj4gPiAr Cj4gPiArCXJldCA9IGk5MTVfZ2VtX29ial9nZ3R0X3BpbihvYmosIDAsIFBJTl9NQVBQQUJMRSk7 Cj4gPiArCWlmIChyZXQpCj4gPiArCQlnb3RvIG91dDsKPiA+ICsKPiA+ICsJcmV0ID0gaTkxNV9n ZW1fb2JqZWN0X3NldF90b19ndHRfZG9tYWluKG9iaiwgZmFsc2UpOwo+ID4gKwlpZiAocmV0KQo+ ID4gKwkJZ290byBvdXRfdW5waW47Cj4gPiArCj4gPiArCXJldCA9IGk5MTVfZ2VtX29iamVjdF9w dXRfZmVuY2Uob2JqKTsKPiA+ICsJaWYgKHJldCkKPiA+ICsJCWdvdG8gb3V0X3VucGluOwo+ID4g Kwo+ID4gKwl1c2VyX2RhdGEgPSB0b191c2VyX3B0cihkYXRhX3B0cik7Cj4gPiArCXJlbWFpbiA9 IHNpemU7Cj4gPiArCW9mZnNldCA9IGk5MTVfZ2VtX29ial9nZ3R0X29mZnNldChvYmopICsgZGF0 YV9vZmZzZXQ7Cj4gPiArCj4gPiArCW11dGV4X3VubG9jaygmZGV2LT5zdHJ1Y3RfbXV0ZXgpOwo+ ID4gKwlpZiAobGlrZWx5KCFpOTE1LnByZWZhdWx0X2Rpc2FibGUpKQo+ID4gKwkJcmV0ID0gZmF1 bHRfaW5fbXVsdGlwYWdlc193cml0ZWFibGUodXNlcl9kYXRhLCByZW1haW4pOwo+ID4gKwo+ID4g KwkvKgo+ID4gKwkgKiBwYWdlX29mZnNldCA9IG9mZnNldCB3aXRoaW4gcGFnZQo+ID4gKwkgKiBw YWdlX2Jhc2UgPSBwYWdlIG9mZnNldCB3aXRoaW4gYXBlcnR1cmUKPiA+ICsJICovCj4gPiArCXBh Z2Vfb2Zmc2V0ID0gb2Zmc2V0X2luX3BhZ2Uob2Zmc2V0KTsKPiA+ICsJcGFnZV9iYXNlID0gb2Zm c2V0ICYgUEFHRV9NQVNLOwo+ID4gKwo+ID4gKwl3aGlsZSAocmVtYWluID4gMCkgewo+ID4gKwkJ LyogcGFnZV9sZW5ndGggPSBieXRlcyB0byBjb3B5IGZvciB0aGlzIHBhZ2UgKi8KPiA+ICsJCXBh Z2VfbGVuZ3RoID0gcmVtYWluOwo+ID4gKwkJaWYgKChwYWdlX29mZnNldCArIHJlbWFpbikgPiBQ QUdFX1NJWkUpCj4gPiArCQkJcGFnZV9sZW5ndGggPSBQQUdFX1NJWkUgLSBwYWdlX29mZnNldDsK PiA+ICsKPiA+ICsJCS8qIFRoaXMgaXMgYSBzbG93IHJlYWQvd3JpdGUgYXMgaXQgdHJpZXMgdG8g cmVhZCBmcm9tCj4gPiArCQkgKiBhbmQgd3JpdGUgdG8gdXNlciBtZW1vcnkgd2hpY2ggbWF5IHJl c3VsdCBpbnRvIHBhZ2UKPiA+ICsJCSAqIGZhdWx0cwo+ID4gKwkJICovCj4gPiArCQlyZXQgPSBz bG93X3VzZXJfYWNjZXNzKGRldl9wcml2LT5ndHQubWFwcGFibGUsIHBhZ2VfYmFzZSwKPiA+ICsJ CQkJICAgICAgIHBhZ2Vfb2Zmc2V0LCB1c2VyX2RhdGEsCj4gPiArCQkJCSAgICAgICBwYWdlX2xl bmd0aCwgZmFsc2UpOwo+ID4gKwo+ID4gKwkJaWYgKHJldCkgewo+ID4gKwkJCXJldCA9IC1FRkFV TFQ7Cj4gPiArCQkJYnJlYWs7Cj4gPiArCQl9Cj4gPiArCj4gPiArCQlyZW1haW4gLT0gcGFnZV9s ZW5ndGg7Cj4gPiArCQl1c2VyX2RhdGEgKz0gcGFnZV9sZW5ndGg7Cj4gPiArCQlwYWdlX2Jhc2Ug Kz0gcGFnZV9sZW5ndGg7Cj4gPiArCQlwYWdlX29mZnNldCA9IDA7Cj4gPiArCX0KPiA+ICsKPiA+ ICsJbXV0ZXhfbG9jaygmZGV2LT5zdHJ1Y3RfbXV0ZXgpOwo+ID4gKwo+ID4gK291dF91bnBpbjoK PiA+ICsJaTkxNV9nZW1fb2JqZWN0X2dndHRfdW5waW4ob2JqKTsKPiA+ICtvdXQ6Cj4gPiArCXJl dHVybiByZXQ7Cj4gPiArfQo+ID4gKwo+ID4gICBzdGF0aWMgaW50Cj4gPiAgIGk5MTVfZ2VtX3No bWVtX3ByZWFkKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCj4gPiAgIAkJICAgICBzdHJ1Y3QgZHJt X2k5MTVfZ2VtX29iamVjdCAqb2JqLAo+ID4gQEAgLTczNywxNyArODMwLDE0IEBAIGk5MTVfZ2Vt X3ByZWFkX2lvY3RsKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHZvaWQgKmRhdGEsCj4gPiAgIAkJ Z290byBvdXQ7Cj4gPiAgIAl9Cj4gPgo+ID4gLQkvKiBwcmltZSBvYmplY3RzIGhhdmUgbm8gYmFj a2luZyBmaWxwIHRvIEdFTSBwcmVhZC9wd3JpdGUKPiA+IC0JICogcGFnZXMgZnJvbS4KPiA+IC0J ICovCj4gPiAtCWlmICghb2JqLT5iYXNlLmZpbHApIHsKPiA+IC0JCXJldCA9IC1FSU5WQUw7Cj4g PiAtCQlnb3RvIG91dDsKPiA+IC0JfQo+ID4gLQo+ID4gICAJdHJhY2VfaTkxNV9nZW1fb2JqZWN0 X3ByZWFkKG9iaiwgYXJncy0+b2Zmc2V0LCBhcmdzLT5zaXplKTsKPiA+Cj4gPiAtCXJldCA9IGk5 MTVfZ2VtX3NobWVtX3ByZWFkKGRldiwgb2JqLCBhcmdzLCBmaWxlKTsKPiA+ICsJLyogcHJlYWQg Zm9yIG5vbiBzaG1lbSBiYWNrZWQgb2JqZWN0cyAqLwo+ID4gKwlpZiAoIW9iai0+YmFzZS5maWxw ICYmIG9iai0+dGlsaW5nX21vZGUgPT0gSTkxNV9USUxJTkdfTk9ORSkKPiA+ICsJCXJldCA9IGk5 MTVfZ2VtX2d0dF9wcmVhZChkZXYsIG9iaiwgYXJncy0+c2l6ZSwKPiA+ICsJCQkJCSBhcmdzLT5v ZmZzZXQsIGFyZ3MtPmRhdGFfcHRyKTsKPiA+ICsJZWxzZQo+ID4gKwkJcmV0ID0gaTkxNV9nZW1f c2htZW1fcHJlYWQoZGV2LCBvYmosIGFyZ3MsIGZpbGUpOwo+ID4KPiA+ICAgb3V0Ogo+ID4gICAJ ZHJtX2dlbV9vYmplY3RfdW5yZWZlcmVuY2UoJm9iai0+YmFzZSk7Cj4gPiBAQCAtNzk1LDcgKzg4 NSw3IEBAIGk5MTVfZ2VtX2d0dF9wd3JpdGVfZmFzdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAo+ ID4gICAJY2hhciBfX3VzZXIgKnVzZXJfZGF0YTsKPiA+ICAgCWludCBwYWdlX29mZnNldCwgcGFn ZV9sZW5ndGgsIHJldDsKPiA+Cj4gPiAtCXJldCA9IGk5MTVfZ2VtX29ial9nZ3R0X3BpbihvYmos IDAsIFBJTl9NQVBQQUJMRSB8IFBJTl9OT05CTE9DSyk7Cj4gPiArCXJldCA9IGk5MTVfZ2VtX29i al9nZ3R0X3BpbihvYmosIDAsIFBJTl9NQVBQQUJMRSk7Cj4gCj4gV2h5IGlzIHRoaXMgbmVlZGVk PwpUaGlzIHdhcyBDaHJpcycgc3VnZ2VzdGlvbi4gVGhpcyBjaGFuZ2UgY2FuIGdvIGFzIGEgc2Vw YXJhdGUgcGF0Y2gsIGlmCm5lZWRlZC4gSSBkbyBub3QgdGhpbmsgcHdyaXRlL3ByZWFkIGhhcyBh bnkgZGVwZW5kZW5jeSBvbiB0aGlzLgpOZWVkIENocmlzIHRvIHJlc3BvbmQgb24gdGhpcy4KPiAK PiA+ICAgCWlmIChyZXQpCj4gPiAgIAkJZ290byBvdXQ7Cj4gPgo+ID4gQEAgLTEwOTAsMTQgKzEx ODAsNiBAQCBpOTE1X2dlbV9wd3JpdGVfaW9jdGwoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgdm9p ZCAqZGF0YSwKPiA+ICAgCQlnb3RvIG91dDsKPiA+ICAgCX0KPiA+Cj4gPiAtCS8qIHByaW1lIG9i amVjdHMgaGF2ZSBubyBiYWNraW5nIGZpbHAgdG8gR0VNIHByZWFkL3B3cml0ZQo+ID4gLQkgKiBw YWdlcyBmcm9tLgo+ID4gLQkgKi8KPiA+IC0JaWYgKCFvYmotPmJhc2UuZmlscCkgewo+ID4gLQkJ cmV0ID0gLUVJTlZBTDsKPiA+IC0JCWdvdG8gb3V0Owo+ID4gLQl9Cj4gPiAtCj4gPiAgIAl0cmFj ZV9pOTE1X2dlbV9vYmplY3RfcHdyaXRlKG9iaiwgYXJncy0+b2Zmc2V0LCBhcmdzLT5zaXplKTsK PiA+Cj4gPiAgIAlyZXQgPSAtRUZBVUxUOwo+ID4gQEAgLTExMDgsOCArMTE5MCw5IEBAIGk5MTVf Z2VtX3B3cml0ZV9pb2N0bChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCB2b2lkICpkYXRhLAo+ID4g ICAJICogcGVyc3BlY3RpdmUsIHJlcXVpcmluZyBtYW51YWwgZGV0aWxpbmcgYnkgdGhlIGNsaWVu dC4KPiA+ICAgCSAqLwo+ID4gICAJaWYgKG9iai0+dGlsaW5nX21vZGUgPT0gSTkxNV9USUxJTkdf Tk9ORSAmJgo+ID4gLQkgICAgb2JqLT5iYXNlLndyaXRlX2RvbWFpbiAhPSBJOTE1X0dFTV9ET01B SU5fQ1BVICYmCj4gPiAtCSAgICBjcHVfd3JpdGVfbmVlZHNfY2xmbHVzaChvYmopKSB7Cj4gPiAr CSAgICAoIW9iai0+YmFzZS5maWxwIHx8Cj4gPiArCSAgICAob2JqLT5iYXNlLndyaXRlX2RvbWFp biAhPSBJOTE1X0dFTV9ET01BSU5fQ1BVICYmCj4gPiArCSAgICBjcHVfd3JpdGVfbmVlZHNfY2xm bHVzaChvYmopKSkpIHsKPiA+ICAgCQlyZXQgPSBpOTE1X2dlbV9ndHRfcHdyaXRlX2Zhc3QoZGV2 LCBvYmosIGFyZ3MsIGZpbGUpOwo+IAo+IFNvIHRoZSBwd3JpdGUgcGF0aCB3aWxsIGZhaWwgaWYg YSBwYWdlIGZhdWx0IGhhcHBlbnMsIGFzIG9wcG9zZWQgdG8gdGhlIAo+IHByZWFkIHBhdGggd2hp Y2ggbWFrZXMgYW4gZWZmb3J0IHRvIGhhbmRsZSBpdC4gV2hhdCBpcyB0aGUgcmVhc29uIGZvciAK PiB0aGlzIGFzeW1tZXRyeSBpbiB0aGUgQVBJPyBPciBJIGFtIG1pc3Npbmcgc29tZXRoaW5nPwpJ IGhhZCBlYXJsaWVyIGltcGxlbWVudGVkIHRoZSBwd3JpdGUgYW5kIHByZWFkIG1haW50YWluaW5n IHRoZSBzeW1tZXRyeQppbiB0aGUgQVBJLiBBZnRlciBjb3VwbGUgb2YgcmV2aXNpb25zIHdlIGxh bmRlZCBvbiB0aGlzIGltcGxlbWVudGF0aW9uLgpOZWVkIENocmlzIHRvIHJlc3BvbmQgb24gdGhp cy4KCgpUaGFua3MsCkFua2l0CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVz a3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2lu dGVsLWdmeAo=