From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dave Gordon Subject: Re: [PATCH 5/6] drm/i915: Support for pread/pwrite from/to non shmem backed objects Date: Wed, 9 Dec 2015 19:39:56 +0000 Message-ID: <5668838C.6060101@intel.com> References: <1449665182-10054-1-git-send-email-ankitprasad.r.sharma@intel.com> <1449665182-10054-6-git-send-email-ankitprasad.r.sharma@intel.com> <56685395.8040806@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by gabe.freedesktop.org (Postfix) with ESMTP id 7A93E6E294 for ; Wed, 9 Dec 2015 11:39:58 -0800 (PST) In-Reply-To: <56685395.8040806@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 , 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 T24gMDkvMTIvMTUgMTY6MTUsIFR2cnRrbyBVcnN1bGluIHdyb3RlOgo+Cj4gSGksCj4KPiBPbiAw OS8xMi8xNSAxMjo0NiwgYW5raXRwcmFzYWQuci5zaGFybWFAaW50ZWwuY29tIHdyb3RlOgo+PiBG cm9tOiBBbmtpdHByYXNhZCBTaGFybWEgPGFua2l0cHJhc2FkLnIuc2hhcm1hQGludGVsLmNvbT4K Pj4KPj4gVGhpcyBwYXRjaCBhZGRzIHN1cHBvcnQgZm9yIGV4dGVuZGluZyB0aGUgcHJlYWQvcHdy aXRlIGZ1bmN0aW9uYWxpdHkKPj4gZm9yIG9iamVjdHMgbm90IGJhY2tlZCBieSBzaG1lbS4gVGhl IGFjY2VzcyB3aWxsIGJlIG1hZGUgdGhyb3VnaAo+PiBndHQgaW50ZXJmYWNlLiBUaGlzIHdpbGwg Y292ZXIgb2JqZWN0cyBiYWNrZWQgYnkgc3RvbGVuIG1lbW9yeSBhcyB3ZWxsCj4+IGFzIG90aGVy IG5vbi1zaG1lbSBiYWNrZWQgb2JqZWN0cy4KPj4KPj4gdjI6IERyb3AgbG9ja3MgYXJvdW5kIHNs b3dfdXNlcl9hY2Nlc3MsIHByZWZhdWx0IHRoZSBwYWdlcyBiZWZvcmUKPj4gYWNjZXNzIChDaHJp cykKPj4KPj4gdjM6IFJlYmFzZWQgdG8gdGhlIGxhdGVzdCBkcm0taW50ZWwtbmlnaHRseSAoQW5r aXQpCj4+Cj4+IHY0OiBNb3ZlZCBwYWdlIGJhc2UgJiBvZmZzZXQgY2FsY3VsYXRpb25zIG91dHNp ZGUgdGhlIGNvcHkgbG9vcCwKPj4gY29ycmVjdGVkIGRhdGEgdHlwZXMgZm9yIHNpemUgYW5kIG9m ZnNldCB2YXJpYWJsZXMsIGNvcnJlY3RlZCBpZi1lbHNlCj4+IGJyYWNlcyBmb3JtYXQgKFR2cnRr by9rZXJuZWxkb2NzKQo+Pgo+PiB2NTogRW5hYmxlZCBwcmVhZC9wd3JpdGUgZm9yIGFsbCBub24t c2htZW0gYmFja2VkIG9iamVjdHMgaW5jbHVkaW5nCj4+IHdpdGhvdXQgdGlsaW5nIHJlc3RyaWN0 aW9ucyAoQW5raXQpCj4+Cj4+IHY2OiBVc2luZyBwd3JpdGVfZmFzdCBmb3Igbm9uLXNobWVtIGJh Y2tlZCBvYmplY3RzIGFzIHdlbGwgKENocmlzKQo+Pgo+PiB2NzogVXBkYXRlZCBjb21taXQgbWVz c2FnZSwgUmVuYW1lZCBpOTE1X2dlbV9ndHRfcmVhZCB0bwo+PiBpOTE1X2dlbV9ndHRfY29weSwK Pj4gYWRkZWQgcHdyaXRlIHNsb3cgcGF0aCBmb3Igbm9uLXNobWVtIGJhY2tlZCBvYmplY3RzIChD aHJpcy9UdnJ0a28pCj4+Cj4+IHY4OiBVcGRhdGVkIHY3IGNvbW1pdCBtZXNzYWdlLCBtdXRleCB1 bmxvY2sgYXJvdW5kIHB3cml0ZSBzbG93IHBhdGggZm9yCj4+IG5vbi1zaG1lbSBiYWNrZWQgb2Jq ZWN0cyAoVHZydGtvKQo+Pgo+PiBUZXN0Y2FzZTogaWd0L2dlbV9zdG9sZW4KPj4KPj4gU2lnbmVk LW9mZi1ieTogQW5raXRwcmFzYWQgU2hhcm1hIDxhbmtpdHByYXNhZC5yLnNoYXJtYUBpbnRlbC5j b20+Cj4+IC0tLQo+PiAgIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMgfCAxNTEKPj4g KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0tLQo+PiAgIDEgZmlsZSBjaGFu Z2VkLCAxMjcgaW5zZXJ0aW9ucygrKSwgMjQgZGVsZXRpb25zKC0pCj4+Cj4+IGRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jCj4+IGIvZHJpdmVycy9ncHUvZHJtL2k5 MTUvaTkxNV9nZW0uYwo+PiBpbmRleCBlZDk3ZGU2Li42OGVkNjdhIDEwMDY0NAo+PiAtLS0gYS9k cml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jCj4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9p OTE1L2k5MTVfZ2VtLmMKPj4gQEAgLTYxNCw2ICs2MTQsOTkgQEAgc2htZW1fcHJlYWRfc2xvdyhz dHJ1Y3QgcGFnZSAqcGFnZSwgaW50Cj4+IHNobWVtX3BhZ2Vfb2Zmc2V0LCBpbnQgcGFnZV9sZW5n dGgsCj4+ICAgICAgIHJldHVybiByZXQgPyAtIEVGQVVMVCA6IDA7Cj4+ICAgfQo+Pgo+PiArc3Rh dGljIGlubGluZSB1aW50NjRfdAo+PiArc2xvd191c2VyX2FjY2VzcyhzdHJ1Y3QgaW9fbWFwcGlu ZyAqbWFwcGluZywKPj4gKyAgICAgICAgIHVpbnQ2NF90IHBhZ2VfYmFzZSwgaW50IHBhZ2Vfb2Zm c2V0LAo+PiArICAgICAgICAgY2hhciBfX3VzZXIgKnVzZXJfZGF0YSwKPj4gKyAgICAgICAgIGlu dCBsZW5ndGgsIGJvb2wgcHdyaXRlKQo+PiArewo+PiArICAgIHZvaWQgX19pb21lbSAqdmFkZHJf aW5hdG9taWM7Cj4+ICsgICAgdm9pZCAqdmFkZHI7Cj4+ICsgICAgdWludDY0X3QgdW53cml0dGVu Owo+PiArCj4+ICsgICAgdmFkZHJfaW5hdG9taWMgPSBpb19tYXBwaW5nX21hcF93YyhtYXBwaW5n LCBwYWdlX2Jhc2UpOwo+PiArICAgIC8qIFdlIGNhbiB1c2UgdGhlIGNwdSBtZW0gY29weSBmdW5j dGlvbiBiZWNhdXNlIHRoaXMgaXMgWDg2LiAqLwo+PiArICAgIHZhZGRyID0gKHZvaWQgX19mb3Jj ZSAqKXZhZGRyX2luYXRvbWljICsgcGFnZV9vZmZzZXQ7Cj4+ICsgICAgaWYgKHB3cml0ZSkKPj4g KyAgICAgICAgdW53cml0dGVuID0gX19jb3B5X2Zyb21fdXNlcih2YWRkciwgdXNlcl9kYXRhLCBs ZW5ndGgpOwo+PiArICAgIGVsc2UKPj4gKyAgICAgICAgdW53cml0dGVuID0gX19jb3B5X3RvX3Vz ZXIodXNlcl9kYXRhLCB2YWRkciwgbGVuZ3RoKTsKPj4gKwo+PiArICAgIGlvX21hcHBpbmdfdW5t YXAodmFkZHJfaW5hdG9taWMpOwo+PiArICAgIHJldHVybiB1bndyaXR0ZW47Cj4+ICt9Cj4+ICsK Pj4gK3N0YXRpYyBpbnQKPj4gK2k5MTVfZ2VtX2d0dF9jb3B5KHN0cnVjdCBkcm1fZGV2aWNlICpk ZXYsCj4+ICsgICAgICAgICAgIHN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmosIHVpbnQ2 NF90IHNpemUsCj4+ICsgICAgICAgICAgIHVpbnQ2NF90IGRhdGFfb2Zmc2V0LCB1aW50NjRfdCBk YXRhX3B0cikKPj4gK3sKPj4gKyAgICBzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYg PSBkZXYtPmRldl9wcml2YXRlOwo+PiArICAgIGNoYXIgX191c2VyICp1c2VyX2RhdGE7Cj4+ICsg ICAgdWludDY0X3QgcmVtYWluOwo+PiArICAgIHVpbnQ2NF90IG9mZnNldCwgcGFnZV9iYXNlOwo+ PiArICAgIGludCBwYWdlX29mZnNldCwgcGFnZV9sZW5ndGgsIHJldCA9IDA7Cj4+ICsKPj4gKyAg ICByZXQgPSBpOTE1X2dlbV9vYmpfZ2d0dF9waW4ob2JqLCAwLCBQSU5fTUFQUEFCTEUpOwo+PiAr ICAgIGlmIChyZXQpCj4+ICsgICAgICAgIGdvdG8gb3V0Owo+PiArCj4+ICsgICAgcmV0ID0gaTkx NV9nZW1fb2JqZWN0X3NldF90b19ndHRfZG9tYWluKG9iaiwgZmFsc2UpOwo+PiArICAgIGlmIChy ZXQpCj4+ICsgICAgICAgIGdvdG8gb3V0X3VucGluOwo+PiArCj4+ICsgICAgcmV0ID0gaTkxNV9n ZW1fb2JqZWN0X3B1dF9mZW5jZShvYmopOwo+PiArICAgIGlmIChyZXQpCj4+ICsgICAgICAgIGdv dG8gb3V0X3VucGluOwo+PiArCj4+ICsgICAgdXNlcl9kYXRhID0gdG9fdXNlcl9wdHIoZGF0YV9w dHIpOwo+PiArICAgIHJlbWFpbiA9IHNpemU7Cj4+ICsgICAgb2Zmc2V0ID0gaTkxNV9nZW1fb2Jq X2dndHRfb2Zmc2V0KG9iaikgKyBkYXRhX29mZnNldDsKPj4gKwo+PiArICAgIG11dGV4X3VubG9j aygmZGV2LT5zdHJ1Y3RfbXV0ZXgpOwo+PiArICAgIGlmIChsaWtlbHkoIWk5MTUucHJlZmF1bHRf ZGlzYWJsZSkpCj4+ICsgICAgICAgIHJldCA9IGZhdWx0X2luX211bHRpcGFnZXNfd3JpdGVhYmxl KHVzZXJfZGF0YSwgcmVtYWluKTsKPj4gKwo+PiArICAgIC8qCj4+ICsgICAgICogcGFnZV9vZmZz ZXQgPSBvZmZzZXQgd2l0aGluIHBhZ2UKPj4gKyAgICAgKiBwYWdlX2Jhc2UgPSBwYWdlIG9mZnNl dCB3aXRoaW4gYXBlcnR1cmUKPj4gKyAgICAgKi8KPj4gKyAgICBwYWdlX29mZnNldCA9IG9mZnNl dF9pbl9wYWdlKG9mZnNldCk7Cj4+ICsgICAgcGFnZV9iYXNlID0gb2Zmc2V0ICYgUEFHRV9NQVNL Owo+PiArCj4+ICsgICAgd2hpbGUgKHJlbWFpbiA+IDApIHsKPj4gKyAgICAgICAgLyogcGFnZV9s ZW5ndGggPSBieXRlcyB0byBjb3B5IGZvciB0aGlzIHBhZ2UgKi8KPj4gKyAgICAgICAgcGFnZV9s ZW5ndGggPSByZW1haW47Cj4+ICsgICAgICAgIGlmICgocGFnZV9vZmZzZXQgKyByZW1haW4pID4g UEFHRV9TSVpFKQo+PiArICAgICAgICAgICAgcGFnZV9sZW5ndGggPSBQQUdFX1NJWkUgLSBwYWdl X29mZnNldDsKPj4gKwo+PiArICAgICAgICAvKiBUaGlzIGlzIGEgc2xvdyByZWFkL3dyaXRlIGFz IGl0IHRyaWVzIHRvIHJlYWQgZnJvbQo+PiArICAgICAgICAgKiBhbmQgd3JpdGUgdG8gdXNlciBt ZW1vcnkgd2hpY2ggbWF5IHJlc3VsdCBpbnRvIHBhZ2UKPj4gKyAgICAgICAgICogZmF1bHRzCj4+ ICsgICAgICAgICAqLwo+PiArICAgICAgICByZXQgPSBzbG93X3VzZXJfYWNjZXNzKGRldl9wcml2 LT5ndHQubWFwcGFibGUsIHBhZ2VfYmFzZSwKPj4gKyAgICAgICAgICAgICAgICAgICAgICAgcGFn ZV9vZmZzZXQsIHVzZXJfZGF0YSwKPj4gKyAgICAgICAgICAgICAgICAgICAgICAgcGFnZV9sZW5n dGgsIGZhbHNlKTsKPj4gKwo+PiArICAgICAgICBpZiAocmV0KSB7Cj4+ICsgICAgICAgICAgICBy ZXQgPSAtRUZBVUxUOwo+PiArICAgICAgICAgICAgYnJlYWs7Cj4+ICsgICAgICAgIH0KPj4gKwo+ PiArICAgICAgICByZW1haW4gLT0gcGFnZV9sZW5ndGg7Cj4+ICsgICAgICAgIHVzZXJfZGF0YSAr PSBwYWdlX2xlbmd0aDsKPj4gKyAgICAgICAgcGFnZV9iYXNlICs9IHBhZ2VfbGVuZ3RoOwo+PiAr ICAgICAgICBwYWdlX29mZnNldCA9IDA7Cj4+ICsgICAgfQo+PiArCj4+ICsgICAgbXV0ZXhfbG9j aygmZGV2LT5zdHJ1Y3RfbXV0ZXgpOwo+PiArCj4+ICtvdXRfdW5waW46Cj4+ICsgICAgaTkxNV9n ZW1fb2JqZWN0X2dndHRfdW5waW4ob2JqKTsKPj4gK291dDoKPj4gKyAgICByZXR1cm4gcmV0Owo+ PiArfQo+PiArCj4+ICAgc3RhdGljIGludAo+PiAgIGk5MTVfZ2VtX3NobWVtX3ByZWFkKHN0cnVj dCBkcm1fZGV2aWNlICpkZXYsCj4+ICAgICAgICAgICAgICAgIHN0cnVjdCBkcm1faTkxNV9nZW1f b2JqZWN0ICpvYmosCj4+IEBAIC03MzcsMTcgKzgzMCwxNCBAQCBpOTE1X2dlbV9wcmVhZF9pb2N0 bChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAo+PiB2b2lkICpkYXRhLAo+PiAgICAgICAgICAgZ290 byBvdXQ7Cj4+ICAgICAgIH0KPj4KPj4gLSAgICAvKiBwcmltZSBvYmplY3RzIGhhdmUgbm8gYmFj a2luZyBmaWxwIHRvIEdFTSBwcmVhZC9wd3JpdGUKPj4gLSAgICAgKiBwYWdlcyBmcm9tLgo+PiAt ICAgICAqLwo+PiAtICAgIGlmICghb2JqLT5iYXNlLmZpbHApIHsKPj4gLSAgICAgICAgcmV0ID0g LUVJTlZBTDsKPj4gLSAgICAgICAgZ290byBvdXQ7Cj4+IC0gICAgfQo+PiAtCj4+ICAgICAgIHRy YWNlX2k5MTVfZ2VtX29iamVjdF9wcmVhZChvYmosIGFyZ3MtPm9mZnNldCwgYXJncy0+c2l6ZSk7 Cj4+Cj4+IC0gICAgcmV0ID0gaTkxNV9nZW1fc2htZW1fcHJlYWQoZGV2LCBvYmosIGFyZ3MsIGZp bGUpOwo+PiArICAgIC8qIHByZWFkIGZvciBub24gc2htZW0gYmFja2VkIG9iamVjdHMgKi8KPj4g KyAgICBpZiAoIW9iai0+YmFzZS5maWxwICYmIG9iai0+dGlsaW5nX21vZGUgPT0gSTkxNV9USUxJ TkdfTk9ORSkKPj4gKyAgICAgICAgcmV0ID0gaTkxNV9nZW1fZ3R0X2NvcHkoZGV2LCBvYmosIGFy Z3MtPnNpemUsCj4+ICsgICAgICAgICAgICAgICAgICAgIGFyZ3MtPm9mZnNldCwgYXJncy0+ZGF0 YV9wdHIpOwo+PiArICAgIGVsc2UKPj4gKyAgICAgICAgcmV0ID0gaTkxNV9nZW1fc2htZW1fcHJl YWQoZGV2LCBvYmosIGFyZ3MsIGZpbGUpOwo+Cj4gSG0sIGl0IHdpbGwgZW5kIHVwIGNhbGxpbmcg aTkxNV9nZW1fc2htZW1fcHJlYWQgZm9yIG5vbi1zaG1lbSBiYWNrZWQKPiBvYmplY3RzIGlmIHRp bGluZyBpcyBzZXQuIFNvdW5kcyB3cm9uZyB0byBtZSB1bmxlc3MgSSBhbSBtaXNzaW5nIHNvbWV0 aGluZz8KCldoaWNoIEdFTSBvYmplY3RzIGhhdmUgb2JqLT5iYXNlLmZpbHAgc2V0PyBJcyBpdCBP TkxZIHJlZ3VsYXIgZ3R0LXR5cGUgCm9iamVjdHM/IFdoYXQgYWJvdXQgKHBoeXMsIHN0b2xlbiwg dXNlcnB0ciwgZG1hYnVmLCAuLi4/KSBXaGljaCBvZiB0aGVzZSAKaXMgdGhlIGFsdGVybmF0ZSBw YXRoIGdvaW5nIHRvIHdvcmsgd2l0aD8KCi5EYXZlLgpfX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fXwpJbnRlbC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBs aXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFu L2xpc3RpbmZvL2ludGVsLWdmeAo=