From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: Re: [PATCH 01/11] drm/i915: Add support for mapping an object page by page Date: Thu, 14 Jan 2016 10:32:11 +0000 Message-ID: <5697792B.7030503@linux.intel.com> References: <1452752207-30382-1-git-send-email-ankitprasad.r.sharma@intel.com> <1452752207-30382-2-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 mga09.intel.com (mga09.intel.com [134.134.136.24]) by gabe.freedesktop.org (Postfix) with ESMTP id B92B36E841 for ; Thu, 14 Jan 2016 02:32:13 -0800 (PST) In-Reply-To: <1452752207-30382-2-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 Ck9uIDE0LzAxLzE2IDA2OjE2LCBhbmtpdHByYXNhZC5yLnNoYXJtYUBpbnRlbC5jb20gd3JvdGU6 Cj4gRnJvbTogQ2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+Cj4KPiBJbnRy b2R1Y2VkIGEgbmV3IHZtIHNwZWNmaWMgY2FsbGJhY2sgaW5zZXJ0X3BhZ2UoKSB0byBwcm9ncmFt IGEgc2luZ2xlIHB0ZSBpbgo+IGdndHQgb3IgcHBndHQuIFRoaXMgYWxsb3dzIHVzIHRvIG1hcCBh IHNpbmdsZSBwYWdlIGluIHRvIHRoZSBtYXBwYWJsZSBhcGVydHVyZQo+IHNwYWNlLiBUaGlzIGNh biBiZSBpdGVyYXRlZCBvdmVyIHRvIGFjY2VzcyB0aGUgd2hvbGUgb2JqZWN0IGJ5IHVzaW5nIHNw YWNlIGFzCj4gbWVhZ3JlIGFzIHBhZ2Ugc2l6ZS4KPgo+IFNpZ25lZC1vZmYtYnk6IENocmlzIFdp bHNvbiA8Y2hyaXNAY2hyaXMtd2lsc29uLmNvLnVrPgo+IFNpZ25lZC1vZmYtYnk6IEFua2l0cHJh c2FkIFNoYXJtYSA8YW5raXRwcmFzYWQuci5zaGFybWFAaW50ZWwuY29tPgo+IC0tLQo+ICAgZHJp dmVycy9jaGFyL2FncC9pbnRlbC1ndHQuYyAgICAgICAgfCAgOSArKysrKysrCj4gICBkcml2ZXJz L2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuYyB8IDQ5ICsrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysKPiAgIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5oIHwg IDUgKysrKwo+ICAgaW5jbHVkZS9kcm0vaW50ZWwtZ3R0LmggICAgICAgICAgICAgfCAgMyArKysK PiAgIDQgZmlsZXMgY2hhbmdlZCwgNjYgaW5zZXJ0aW9ucygrKQo+Cj4gZGlmZiAtLWdpdCBhL2Ry aXZlcnMvY2hhci9hZ3AvaW50ZWwtZ3R0LmMgYi9kcml2ZXJzL2NoYXIvYWdwL2ludGVsLWd0dC5j Cj4gaW5kZXggMTM0MWE5NC4uN2M2ODU3NiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2NoYXIvYWdw L2ludGVsLWd0dC5jCj4gKysrIGIvZHJpdmVycy9jaGFyL2FncC9pbnRlbC1ndHQuYwo+IEBAIC04 MzgsNiArODM4LDE1IEBAIHN0YXRpYyBib29sIGk4MzBfY2hlY2tfZmxhZ3ModW5zaWduZWQgaW50 IGZsYWdzKQo+ICAgCXJldHVybiBmYWxzZTsKPiAgIH0KPgo+ICt2b2lkIGludGVsX2d0dF9pbnNl cnRfcGFnZShkbWFfYWRkcl90IGFkZHIsCj4gKwkJCSAgIHVuc2lnbmVkIGludCBwZywKPiArCQkJ ICAgdW5zaWduZWQgaW50IGZsYWdzKQo+ICt7Cj4gKwlpbnRlbF9wcml2YXRlLmRyaXZlci0+d3Jp dGVfZW50cnkoYWRkciwgcGcsIGZsYWdzKTsKPiArCXdtYigpOwo+ICt9Cj4gK0VYUE9SVF9TWU1C T0woaW50ZWxfZ3R0X2luc2VydF9wYWdlKTsKPiArCj4gICB2b2lkIGludGVsX2d0dF9pbnNlcnRf c2dfZW50cmllcyhzdHJ1Y3Qgc2dfdGFibGUgKnN0LAo+ICAgCQkJCSB1bnNpZ25lZCBpbnQgcGdf c3RhcnQsCj4gICAJCQkJIHVuc2lnbmVkIGludCBmbGFncykKPiBkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X2dlbV9ndHQuYwo+IGluZGV4IDU2ZjRmMmUuLjQ4YmQ2YTQgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X2dlbV9ndHQuYwo+IEBAIC0yMzM5LDYgKzIzMzksMjMgQEAgc3RhdGljIHZvaWQgZ2Vu OF9zZXRfcHRlKHZvaWQgX19pb21lbSAqYWRkciwgZ2VuOF9wdGVfdCBwdGUpCj4gICAjZW5kaWYK PiAgIH0KPgo+ICtzdGF0aWMgdm9pZCBnZW44X2dndHRfaW5zZXJ0X3BhZ2Uoc3RydWN0IGk5MTVf YWRkcmVzc19zcGFjZSAqdm0sCj4gKwkJCQkgIGRtYV9hZGRyX3QgYWRkciwKPiArCQkJCSAgdWlu dDY0X3Qgb2Zmc2V0LAo+ICsJCQkJICBlbnVtIGk5MTVfY2FjaGVfbGV2ZWwgbGV2ZWwsCj4gKwkJ CQkgIHUzMiB1bnVzZWQpCj4gK3sKPiArCXN0cnVjdCBkcm1faTkxNV9wcml2YXRlICpkZXZfcHJp diA9IHRvX2k5MTUodm0tPmRldik7Cj4gKwlnZW44X3B0ZV90IF9faW9tZW0gKnB0ZSA9Cj4gKwkJ KGdlbjhfcHRlX3QgX19pb21lbSAqKWRldl9wcml2LT5ndHQuZ3NtICsKPiArCQkob2Zmc2V0ID4+ IFBBR0VfU0hJRlQpOwo+ICsKPiArCWdlbjhfc2V0X3B0ZShwdGUsIGdlbjhfcHRlX2VuY29kZShh ZGRyLCBsZXZlbCwgdHJ1ZSkpOwo+ICsJd21iKCk7Cj4gKwo+ICsJSTkxNV9XUklURShHRlhfRkxT SF9DTlRMX0dFTjYsIEdGWF9GTFNIX0NOVExfRU4pOwo+ICt9Cj4gKwo+ICAgc3RhdGljIHZvaWQg Z2VuOF9nZ3R0X2luc2VydF9lbnRyaWVzKHN0cnVjdCBpOTE1X2FkZHJlc3Nfc3BhY2UgKnZtLAo+ ICAgCQkJCSAgICAgc3RydWN0IHNnX3RhYmxlICpzdCwKPiAgIAkJCQkgICAgIHVpbnQ2NF90IHN0 YXJ0LAo+IEBAIC0yNDEwLDYgKzI0MjcsMjMgQEAgc3RhdGljIHZvaWQgZ2VuOF9nZ3R0X2luc2Vy dF9lbnRyaWVzX19CS0woc3RydWN0IGk5MTVfYWRkcmVzc19zcGFjZSAqdm0sCj4gICAJc3RvcF9t YWNoaW5lKGdlbjhfZ2d0dF9pbnNlcnRfZW50cmllc19fY2IsICZhcmcsIE5VTEwpOwo+ICAgfQo+ Cj4gK3N0YXRpYyB2b2lkIGdlbjZfZ2d0dF9pbnNlcnRfcGFnZShzdHJ1Y3QgaTkxNV9hZGRyZXNz X3NwYWNlICp2bSwKPiArCQkJCSAgZG1hX2FkZHJfdCBhZGRyLAo+ICsJCQkJICB1aW50NjRfdCBv ZmZzZXQsCj4gKwkJCQkgIGVudW0gaTkxNV9jYWNoZV9sZXZlbCBsZXZlbCwKPiArCQkJCSAgdTMy IGZsYWdzKQo+ICt7Cj4gKwlzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYgPSB0b19p OTE1KHZtLT5kZXYpOwo+ICsJZ2VuNl9wdGVfdCBfX2lvbWVtICpwdGUgPQo+ICsJCShnZW42X3B0 ZV90IF9faW9tZW0gKilkZXZfcHJpdi0+Z3R0LmdzbSArCj4gKwkJKG9mZnNldCA+PiBQQUdFX1NI SUZUKTsKPiArCj4gKwlpb3dyaXRlMzIodm0tPnB0ZV9lbmNvZGUoYWRkciwgbGV2ZWwsIHRydWUs IGZsYWdzKSwgcHRlKTsKPiArCXdtYigpOwo+ICsKPiArCUk5MTVfV1JJVEUoR0ZYX0ZMU0hfQ05U TF9HRU42LCBHRlhfRkxTSF9DTlRMX0VOKTsKPiArfQo+ICsKPiAgIC8qCj4gICAgKiBCaW5kcyBh biBvYmplY3QgaW50byB0aGUgZ2xvYmFsIGd0dCB3aXRoIHRoZSBzcGVjaWZpZWQgY2FjaGUgbGV2 ZWwuIFRoZSBvYmplY3QKPiAgICAqIHdpbGwgYmUgYWNjZXNzaWJsZSB0byB0aGUgR1BVIHZpYSBj b21tYW5kcyB3aG9zZSBvcGVyYW5kcyByZWZlcmVuY2Ugb2Zmc2V0cwo+IEBAIC0yNTIxLDYgKzI1 NTUsMTggQEAgc3RhdGljIHZvaWQgZ2VuNl9nZ3R0X2NsZWFyX3JhbmdlKHN0cnVjdCBpOTE1X2Fk ZHJlc3Nfc3BhY2UgKnZtLAo+ICAgCWFzc2VydF9ycG1fYXRvbWljX2VuZChkZXZfcHJpdiwgcnBt X2F0b21pY19zZXEpOwo+ICAgfQo+Cj4gK3N0YXRpYyB2b2lkIGk5MTVfZ2d0dF9pbnNlcnRfcGFn ZShzdHJ1Y3QgaTkxNV9hZGRyZXNzX3NwYWNlICp2bSwKPiArCQkJCSAgZG1hX2FkZHJfdCBhZGRy LAo+ICsJCQkJICB1aW50NjRfdCBvZmZzZXQsCj4gKwkJCQkgIGVudW0gaTkxNV9jYWNoZV9sZXZl bCBjYWNoZV9sZXZlbCwKPiArCQkJCSAgdTMyIHVudXNlZCkKPiArewo+ICsJdW5zaWduZWQgaW50 IGZsYWdzID0gKGNhY2hlX2xldmVsID09IEk5MTVfQ0FDSEVfTk9ORSkgPwo+ICsJCUFHUF9VU0VS X01FTU9SWSA6IEFHUF9VU0VSX0NBQ0hFRF9NRU1PUlk7Cj4gKwo+ICsJaW50ZWxfZ3R0X2luc2Vy dF9wYWdlKGFkZHIsIG9mZnNldCA+PiBQQUdFX1NISUZULCBmbGFncyk7Cj4gK30KPiArCj4gICBz dGF0aWMgdm9pZCBpOTE1X2dndHRfaW5zZXJ0X2VudHJpZXMoc3RydWN0IGk5MTVfYWRkcmVzc19z cGFjZSAqdm0sCj4gICAJCQkJICAgICBzdHJ1Y3Qgc2dfdGFibGUgKnBhZ2VzLAo+ICAgCQkJCSAg ICAgdWludDY0X3Qgc3RhcnQsCj4gQEAgLTMwNTAsNiArMzA5Niw3IEBAIHN0YXRpYyBpbnQgZ2Vu OF9nbWNoX3Byb2JlKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCj4gICAJcmV0ID0gZ2d0dF9wcm9i ZV9jb21tb24oZGV2LCBndHRfc2l6ZSk7Cj4KPiAgIAlkZXZfcHJpdi0+Z3R0LmJhc2UuY2xlYXJf cmFuZ2UgPSBnZW44X2dndHRfY2xlYXJfcmFuZ2U7Cj4gKwlkZXZfcHJpdi0+Z3R0LmJhc2UuaW5z ZXJ0X3BhZ2UgPSBnZW44X2dndHRfaW5zZXJ0X3BhZ2U7Cj4gICAJZGV2X3ByaXYtPmd0dC5iYXNl Lmluc2VydF9lbnRyaWVzID0gZ2VuOF9nZ3R0X2luc2VydF9lbnRyaWVzOwo+ICAgCWRldl9wcml2 LT5ndHQuYmFzZS5iaW5kX3ZtYSA9IGdndHRfYmluZF92bWE7Cj4gICAJZGV2X3ByaXYtPmd0dC5i YXNlLnVuYmluZF92bWEgPSBnZ3R0X3VuYmluZF92bWE7Cj4gQEAgLTMwOTUsNiArMzE0Miw3IEBA IHN0YXRpYyBpbnQgZ2VuNl9nbWNoX3Byb2JlKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCj4gICAJ cmV0ID0gZ2d0dF9wcm9iZV9jb21tb24oZGV2LCBndHRfc2l6ZSk7Cj4KPiAgIAlkZXZfcHJpdi0+ Z3R0LmJhc2UuY2xlYXJfcmFuZ2UgPSBnZW42X2dndHRfY2xlYXJfcmFuZ2U7Cj4gKwlkZXZfcHJp di0+Z3R0LmJhc2UuaW5zZXJ0X3BhZ2UgPSBnZW42X2dndHRfaW5zZXJ0X3BhZ2U7Cj4gICAJZGV2 X3ByaXYtPmd0dC5iYXNlLmluc2VydF9lbnRyaWVzID0gZ2VuNl9nZ3R0X2luc2VydF9lbnRyaWVz Owo+ICAgCWRldl9wcml2LT5ndHQuYmFzZS5iaW5kX3ZtYSA9IGdndHRfYmluZF92bWE7Cj4gICAJ ZGV2X3ByaXYtPmd0dC5iYXNlLnVuYmluZF92bWEgPSBnZ3R0X3VuYmluZF92bWE7Cj4gQEAgLTMx MjksNiArMzE3Nyw3IEBAIHN0YXRpYyBpbnQgaTkxNV9nbWNoX3Byb2JlKHN0cnVjdCBkcm1fZGV2 aWNlICpkZXYsCj4gICAJaW50ZWxfZ3R0X2dldChndHRfdG90YWwsIHN0b2xlbiwgbWFwcGFibGVf YmFzZSwgbWFwcGFibGVfZW5kKTsKPgo+ICAgCWRldl9wcml2LT5ndHQuZG9faWRsZV9tYXBzID0g bmVlZHNfaWRsZV9tYXBzKGRldl9wcml2LT5kZXYpOwo+ICsJZGV2X3ByaXYtPmd0dC5iYXNlLmlu c2VydF9wYWdlID0gaTkxNV9nZ3R0X2luc2VydF9wYWdlOwo+ICAgCWRldl9wcml2LT5ndHQuYmFz ZS5pbnNlcnRfZW50cmllcyA9IGk5MTVfZ2d0dF9pbnNlcnRfZW50cmllczsKPiAgIAlkZXZfcHJp di0+Z3R0LmJhc2UuY2xlYXJfcmFuZ2UgPSBpOTE1X2dndHRfY2xlYXJfcmFuZ2U7Cj4gICAJZGV2 X3ByaXYtPmd0dC5iYXNlLmJpbmRfdm1hID0gZ2d0dF9iaW5kX3ZtYTsKPiBkaWZmIC0tZ2l0IGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X2dlbV9ndHQuaAo+IGluZGV4IGI0NDhhZDguLjVmODY1OTYgMTAwNjQ0Cj4gLS0tIGEv ZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmgKPiArKysgYi9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pOTE1X2dlbV9ndHQuaAo+IEBAIC0zMTcsNiArMzE3LDExIEBAIHN0cnVjdCBpOTE1 X2FkZHJlc3Nfc3BhY2Ugewo+ICAgCQkJICAgIHVpbnQ2NF90IHN0YXJ0LAo+ICAgCQkJICAgIHVp bnQ2NF90IGxlbmd0aCwKPiAgIAkJCSAgICBib29sIHVzZV9zY3JhdGNoKTsKPiArCXZvaWQgKCpp bnNlcnRfcGFnZSkoc3RydWN0IGk5MTVfYWRkcmVzc19zcGFjZSAqdm0sCj4gKwkJCSAgICBkbWFf YWRkcl90IGFkZHIsCj4gKwkJCSAgICB1aW50NjRfdCBvZmZzZXQsCj4gKwkJCSAgICBlbnVtIGk5 MTVfY2FjaGVfbGV2ZWwgY2FjaGVfbGV2ZWwsCj4gKwkJCSAgICB1MzIgZmxhZ3MpOwo+ICAgCXZv aWQgKCppbnNlcnRfZW50cmllcykoc3RydWN0IGk5MTVfYWRkcmVzc19zcGFjZSAqdm0sCj4gICAJ CQkgICAgICAgc3RydWN0IHNnX3RhYmxlICpzdCwKPiAgIAkJCSAgICAgICB1aW50NjRfdCBzdGFy dCwKCldoeSBub3QgZXh0ZW5kIHRoZSBjdXJyZW50IEFQSSB0byBzdXBwb3J0IHN0YXJ0IHBhZ2Ug b2Zmc2V0IGFuZCBudW1iZXIgCm9mIHBhZ2VzPyBDb3VsZCBkZWZhdWx0IHRvIGZ1bGwgb2JqZWN0 IGxpa2UgdG9kYXkgaWYgemVyby4gRWc6CgogIHZvaWQgKCppbnNlcnRfZW50cmllcykoc3RydWN0 IGk5MTVfYWRkcmVzc19zcGFjZSAqdm0sCgkJCXN0cnVjdCBzZ190YWJsZSAqc3QsCisJCQl1bnNp Z25lZCBwYWdlX29mZnNldCwKKwkJCXVuc2lnbmVkIG51bV9wYWdlcywKCQkJdWludDY0X3Qgc3Rh cnQsCgkJCWVudW0gaTkxNV9jYWNoZV9sZXZlbCBjYWNoZV9sZXZlbCwKCQkJdTMyIGZsYWdzKTsK ClRoYXQgd2F5IHdlIHdvdWxkIG5vdCBoYXZlIHR3byBmdW5jdGlvbnMgZm9yIGVmZmVjdGl2ZWx5 IHRoZSBzYW1lIHRoaW5nIApvcGVyYXRpbmcgb24gZGlmZmVyZW50IHR5cGUgb2YgaW5wdXQgcGFy YW1ldGVycy4KCklmIGV4dGVuZGluZyBpbnNlcnRfZW50cmllcyBpcyBub3QgcHJlZmVyYWJsZSwg dGhlbiBzdGlsbCB3ZSBjb3VsZCBhZGQgCmFub3RoZXIgY29tcGF0aWJsZSBvbmUsIGxpa2UgaW5z ZXJ0X2VudHJpZXNfcmFuZ2Ugb3Igc29tZXRoaW5nLCBhbmQgdGhlbiAKYm90aCBjb3VsZCBzaGFy ZSB0aGUgc2FtZSB1bmRlcmx5aW5nIGltcGxlbWVudGF0aW9uIGZvciBsZXNzIGNvZGUuCgpMaWtl IHRoaXMsIHRoaXMgcGF0Y2ggYWxyZWFkeSBkb2VzIG5vdCBtYXRjaCBjdXJyZW50IGNvZGViYXNl IC0gc2VlIAphc3NlcnRfcnBtX2F0b21pY19iZWdpbiBpbiBpbnNlcnRfZW50cmllcy4KCkFsc28g aWYgQVBJIGJldHdlZW4gdGhlIHR3byB3YXMgY29tcGF0aWJsZSB0aGVyZSB3b3VsZCBiZSBubyBu ZWVkIGZvciAKaTkxNV9nZW1fb2JqZWN0X2dldF9kbWFfYWRkcmVzcygpIGFuZCBpOTE1X2dlbV9v YmplY3RfZ2V0X3BhZ2UoKSBjb3VsZCAKYmUgdXNlZCBpbnN0ZWFkLgoKUmVnYXJkcywKClR2cnRr bwoKPiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS9kcm0vaW50ZWwtZ3R0LmggYi9pbmNsdWRlL2RybS9p bnRlbC1ndHQuaAo+IGluZGV4IDllOWJkZGFhNS4uZjQ5ZWRlYyAxMDA2NDQKPiAtLS0gYS9pbmNs dWRlL2RybS9pbnRlbC1ndHQuaAo+ICsrKyBiL2luY2x1ZGUvZHJtL2ludGVsLWd0dC5oCj4gQEAg LTEzLDYgKzEzLDkgQEAgdm9pZCBpbnRlbF9nbWNoX3JlbW92ZSh2b2lkKTsKPiAgIGJvb2wgaW50 ZWxfZW5hYmxlX2d0dCh2b2lkKTsKPgo+ICAgdm9pZCBpbnRlbF9ndHRfY2hpcHNldF9mbHVzaCh2 b2lkKTsKPiArdm9pZCBpbnRlbF9ndHRfaW5zZXJ0X3BhZ2UoZG1hX2FkZHJfdCBhZGRyLAo+ICsJ CQkgICB1bnNpZ25lZCBpbnQgcGcsCj4gKwkJCSAgIHVuc2lnbmVkIGludCBmbGFncyk7Cj4gICB2 b2lkIGludGVsX2d0dF9pbnNlcnRfc2dfZW50cmllcyhzdHJ1Y3Qgc2dfdGFibGUgKnN0LAo+ICAg CQkJCSB1bnNpZ25lZCBpbnQgcGdfc3RhcnQsCj4gICAJCQkJIHVuc2lnbmVkIGludCBmbGFncyk7 Cj4KX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwt Z2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHA6Ly9s aXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK