From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: Re: [PATCH 3/3] drm/i915: Move ioremap_wc tracking onto VMA Date: Wed, 13 Apr 2016 13:30:39 +0100 Message-ID: <570E3BEF.6070804@linux.intel.com> References: <1460541160-1955-1-git-send-email-chris@chris-wilson.co.uk> <1460541160-1955-3-git-send-email-chris@chris-wilson.co.uk> 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 D26696E3DF for ; Wed, 13 Apr 2016 12:32:16 +0000 (UTC) In-Reply-To: <1460541160-1955-3-git-send-email-chris@chris-wilson.co.uk> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Chris Wilson , intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org Ck9uIDEzLzA0LzE2IDEwOjUyLCBDaHJpcyBXaWxzb24gd3JvdGU6Cj4gQnkgdHJhY2tpbmcgdGhl IGlvbWFwcGluZyBvbiB0aGUgVk1BIGl0c2VsZiwgd2UgY2FuIHNoYXJlIHRoYXQgYXJlYQo+IGJl dHdlZW4gbXVsdGlwbGUgdXNlcnMuIEFsc28gYnkgb25seSByZXZva2luZyB0aGUgaW9tYXBwaW5n IHVwb24KPiB1bmJpbmRpbmcgZnJvbSB0aGUgbWFwcGFibGUgcG9ydGlvbiBvZiB0aGUgR0dUVCwg d2UgY2FuIGtlZXAgdGhhdCBpb21hcAo+IGFjcm9zcyBtdWx0aXBsZSBpbnZvY2F0aW9ucyAoZS5n LiBleGVjbGlzdHMgY29udGV4dCBwaW5uaW5nKS4KPgo+IE5vdGUgdGhhdCBieSBtb3ZpbmcgdGhl IGlvdW5ubWFwIHRyYWNraW5nIHRvIHRoZSBWTUEsIHdlIGFjdHVhbGx5IGVuZCB1cAo+IGZpeGlu ZyBhIGxlYWsgb2YgdGhlIGlvbWFwcGluZyBpbiBpbnRlbF9mYmRldi4KPgo+IHYxLjU6IFJlYmFz ZSBwcm9tcHRlZCBieSBUdnJ0a28KPiB2MjogRHJvcCBkZXZfcHJpdiBwYXJhbWV0ZXIsIHdlIGNh biByZWNvdmVyIHRoZSBpOTE1X2dndHQgZnJvbSB0aGUgdm1hLgo+Cj4gU2lnbmVkLW9mZi1ieTog Q2hyaXMgV2lsc29uIDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+Cj4gQ2M6IFR2cnRrbyBVcnN1 bGluIDx0dnJ0a28udXJzdWxpbkBpbnRlbC5jb20+Cj4gLS0tCj4gICBkcml2ZXJzL2dwdS9kcm0v aTkxNS9pOTE1X2dlbS5jICAgICB8ICAyICsrCj4gICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X2dlbV9ndHQuYyB8IDQyICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysKPiAg IGRyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5oIHwgMTMgKysrKysrKysrKysrCj4g ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9mYmRldi5jICB8IDIwICsrKysrKysrKy0tLS0t LS0tLQo+ICAgNCBmaWxlcyBjaGFuZ2VkLCA2NyBpbnNlcnRpb25zKCspLCAxMCBkZWxldGlvbnMo LSkKPgo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jIGIvZHJp dmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYwo+IGluZGV4IGIzN2ZmZWE4YjQ1OC4uNmE0ODU2 MzA1OTVlIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMKPiAr KysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jCj4gQEAgLTMzOTMsNiArMzM5Myw4 IEBAIHN0YXRpYyBpbnQgX19pOTE1X3ZtYV91bmJpbmQoc3RydWN0IGk5MTVfdm1hICp2bWEsIGJv b2wgd2FpdCkKPiAgIAkJcmV0ID0gaTkxNV9nZW1fb2JqZWN0X3B1dF9mZW5jZShvYmopOwo+ICAg CQlpZiAocmV0KQo+ICAgCQkJcmV0dXJuIHJldDsKPiArCj4gKwkJaTkxNV92bWFfaW91bm1hcCh2 bWEpOwo+ICAgCX0KPgo+ICAgCXRyYWNlX2k5MTVfdm1hX3VuYmluZCh2bWEpOwo+IGRpZmYgLS1n aXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuYyBiL2RyaXZlcnMvZ3B1L2Ry bS9pOTE1L2k5MTVfZ2VtX2d0dC5jCj4gaW5kZXggYzVjYjA0OTA3NTI1Li5lNzU5ZjhjYWZkOWUg MTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmMKPiArKysg Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbV9ndHQuYwo+IEBAIC05Myw2ICs5MywxMiBA QAo+ICAgICoKPiAgICAqLwo+Cj4gK3N0YXRpYyBpbmxpbmUgc3RydWN0IGk5MTVfZ2d0dCAqdG9f Z2d0dChzdHJ1Y3QgaTkxNV9hZGRyZXNzX3NwYWNlICp2bSkKPiArewo+ICsJQlVHX09OKCFpOTE1 X2lzX2dndHQodm0pKTsKPiArCXJldHVybiBjb250YWluZXJfb2Yodm0sIHN0cnVjdCBpOTE1X2dn dHQsIGJhc2UpOwo+ICt9Cj4gKwoKQXMgbG9uZyBhcyBpdCByZW1haW5zIGhpZGRlbiBpbiBoZXJl LCBvdGhlcndpc2UgaXMgYSBiaXQgaGVhdnkgYW5kIHJ1ZGUgCihCVUdfT04pLCBvciB3ZWFrIGFz IEFQSSAoaWYgY29udmVydGVkIHRvIEdFTV9CVUdfT04gYW5kIHJldHVybiBwb2ludGVyIAp1bmRv Y3VtZW50ZWQpLiBBbmQgaWYgaXQgc3RheXMgaGVyZSBCVUdfT04gaXMgcmVkdW5kYW50LiBIbS4u IGxlYW5pbmcgCnRvd2FyZHMgdGhlIGRpcmVjdCBjb250YWluZXJfb2YgYmVsb3cgdG8gYnlwYXNz IGFsbCB0aGVzZSBjb25zaWRlcmF0aW9ucy4KCj4gICBzdGF0aWMgaW50Cj4gICBpOTE1X2dldF9n Z3R0X3ZtYV9wYWdlcyhzdHJ1Y3QgaTkxNV92bWEgKnZtYSk7Cj4KPiBAQCAtMzYyNiwzICszNjMy LDM5IEBAIGk5MTVfZ2d0dF92aWV3X3NpemUoc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9i aiwKPiAgIAkJcmV0dXJuIG9iai0+YmFzZS5zaXplOwo+ICAgCX0KPiAgIH0KPiArCj4gK3ZvaWQg Kmk5MTVfdm1hX2lvbWFwKHN0cnVjdCBpOTE1X3ZtYSAqdm1hKQoKS2VybmVsZG9jISA6KQoKPiAr ewo+ICsJaWYgKFdBUk5fT04oIXZtYS0+b2JqLT5tYXBfYW5kX2ZlbmNlYWJsZSkpCj4gKwkJcmV0 dXJuIEVSUl9QVFIoLUVOT0RFVik7Cj4gKwo+ICsJQlVHX09OKCF2bWEtPmlzX2dndHQpOwo+ICsJ QlVHX09OKCh2bWEtPmJvdW5kICYgR0xPQkFMX0JJTkQpID09IDApOwoKTWF5YmUgYWdncmVnYXRl IHRoZSB0d28gaW50byBhIHNpbmdsZSBXQVJOX09OIGFuZCByZXR1cm4gLUVJTlZBTCA/IFNpbmNl IAp3ZSBlYXNpbHkgY2FuIHNvdW5kcyBiZXR0ZXIuCgo+ICsKPiArCWlmICh2bWEtPmlvbWFwID09 IE5VTEwpIHsKPiArCQlzdHJ1Y3QgaTkxNV9nZ3R0ICpnZ3R0ID0gdG9fZ2d0dCh2bWEtPnZtKTsK PiArCQl2b2lkICpwdHI7Cj4gKwo+ICsJCXB0ciA9IGlvX21hcHBpbmdfbWFwX3djKGdndHQtPm1h cHBhYmxlLAo+ICsJCQkJCXZtYS0+bm9kZS5zdGFydCwKPiArCQkJCQl2bWEtPm5vZGUuc2l6ZSk7 Cj4gKwkJaWYgKHB0ciA9PSBOVUxMKSB7Cj4gKwkJCWludCByZXQ7Cj4gKwo+ICsJCQkvKiBUb28g bWFueSBhcmVhcyBhbHJlYWR5IGFsbG9jYXRlZD8gKi8KPiArCQkJcmV0ID0gaTkxNV9nZW1fZXZp Y3Rfdm0odm1hLT52bSwgdHJ1ZSk7CgpJIGRvbid0IGtub3cgbXVjaCBhYm91dCB0aGUgaW9tYXBw aW5nIGJ1c3NpbmVzcy4gQ2FuIHdlIGV4aGF1c3QgdGhlIAphZGRyZXNzIHNwYWNlIHNpbWlsYXIg dG8gdm1hcCBhbmQgd291bGQgdGhlbiBpbnRlcmZlcmUgd2l0aCBvdXIgb3duIChvciAKb3RoZXI/ KSBjYWxsIHNpdGVzIGRvaW5nIHBsYWluIGlvX21hcHBpbmdfbWFwKiBjYWxscz8KCj4gKwkJCWlm IChyZXQpCj4gKwkJCQlyZXR1cm4gRVJSX1BUUihyZXQpOwo+ICsKPiArCQkJcHRyID0gaW9fbWFw cGluZ19tYXBfd2MoZ2d0dC0+bWFwcGFibGUsCj4gKwkJCQkJCXZtYS0+bm9kZS5zdGFydCwKPiAr CQkJCQkJdm1hLT5ub2RlLnNpemUpOwo+ICsJCQlpZiAocHRyID09IE5VTEwpCj4gKwkJCQlyZXR1 cm4gRVJSX1BUUigtRU5PTUVNKTsKPiArCQl9Cj4gKwo+ICsJCXZtYS0+aW9tYXAgPSBwdHI7Cj4g Kwl9Cj4gKwo+ICsJcmV0dXJuIHZtYS0+aW9tYXA7Cj4gK30KPiBkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmggYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X2dlbV9ndHQuaAo+IGluZGV4IGQ3ZGQzZDhhODc1OC4uNGI4ZmZjMWMzZDMzIDEwMDY0NAo+IC0t LSBhL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtX2d0dC5oCj4gKysrIGIvZHJpdmVycy9n cHUvZHJtL2k5MTUvaTkxNV9nZW1fZ3R0LmgKPiBAQCAtMzQsNiArMzQsOCBAQAo+ICAgI2lmbmRl ZiBfX0k5MTVfR0VNX0dUVF9IX18KPiAgICNkZWZpbmUgX19JOTE1X0dFTV9HVFRfSF9fCj4KPiAr I2luY2x1ZGUgPGxpbnV4L2lvLW1hcHBpbmcuaD4KPiArCj4gICBzdHJ1Y3QgZHJtX2k5MTVfZmls ZV9wcml2YXRlOwo+Cj4gICB0eXBlZGVmIHVpbnQzMl90IGdlbjZfcHRlX3Q7Cj4gQEAgLTE3NSw2 ICsxNzcsNyBAQCBzdHJ1Y3QgaTkxNV92bWEgewo+ICAgCXN0cnVjdCBkcm1fbW1fbm9kZSBub2Rl Owo+ICAgCXN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmo7Cj4gICAJc3RydWN0IGk5MTVf YWRkcmVzc19zcGFjZSAqdm07Cj4gKwl2b2lkICppb21hcDsKPgo+ICAgCS8qKiBGbGFncyBhbmQg YWRkcmVzcyBzcGFjZSB0aGlzIFZNQSBpcyBib3VuZCB0byAqLwo+ICAgI2RlZmluZSBHTE9CQUxf QklORAkoMTw8MCkKPiBAQCAtNTU5LDQgKzU2MiwxNCBAQCBzaXplX3QKPiAgIGk5MTVfZ2d0dF92 aWV3X3NpemUoc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaiwKPiAgIAkJICAgIGNvbnN0 IHN0cnVjdCBpOTE1X2dndHRfdmlldyAqdmlldyk7Cj4KPiArdm9pZCAqaTkxNV92bWFfaW9tYXAo c3RydWN0IGk5MTVfdm1hICp2bWEpOwo+ICtzdGF0aWMgaW5saW5lIHZvaWQgaTkxNV92bWFfaW91 bm1hcChzdHJ1Y3QgaTkxNV92bWEgKnZtYSkKPiArewo+ICsJaWYgKHZtYS0+aW9tYXAgPT0gTlVM TCkKPiArCQlyZXR1cm47Cj4gKwo+ICsJaW9fbWFwcGluZ191bm1hcCh2bWEtPmlvbWFwKTsKPiAr CXZtYS0+aW9tYXAgPSBOVUxMOwo+ICt9Cj4gKwo+ICAgI2VuZGlmCj4gZGlmZiAtLWdpdCBhL2Ry aXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2ZiZGV2LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p bnRlbF9mYmRldi5jCj4gaW5kZXggNzlhYzIwMmYzODcwLi5hMDFiZmMzM2UzZDcgMTAwNjQ0Cj4g LS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZmJkZXYuYwo+ICsrKyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2ludGVsX2ZiZGV2LmMKPiBAQCAtMTg2LDkgKzE4NiwxMCBAQCBzdGF0aWMg aW50IGludGVsZmJfY3JlYXRlKHN0cnVjdCBkcm1fZmJfaGVscGVyICpoZWxwZXIsCj4gICAJc3Ry dWN0IGk5MTVfZ2d0dCAqZ2d0dCA9ICZkZXZfcHJpdi0+Z2d0dDsKPiAgIAlzdHJ1Y3QgZmJfaW5m byAqaW5mbzsKPiAgIAlzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYjsKPiArCXN0cnVjdCBpOTE1 X3ZtYSAqdm1hOwo+ICAgCXN0cnVjdCBkcm1faTkxNV9nZW1fb2JqZWN0ICpvYmo7Cj4gLQlpbnQg c2l6ZSwgcmV0Owo+ICAgCWJvb2wgcHJlYWxsb2MgPSBmYWxzZTsKPiArCWludCByZXQ7Cj4KPiAg IAlpZiAoaW50ZWxfZmIgJiYKPiAgIAkgICAgKHNpemVzLT5mYl93aWR0aCA+IGludGVsX2ZiLT5i YXNlLndpZHRoIHx8Cj4gQEAgLTIxNCw3ICsyMTUsNiBAQCBzdGF0aWMgaW50IGludGVsZmJfY3Jl YXRlKHN0cnVjdCBkcm1fZmJfaGVscGVyICpoZWxwZXIsCj4gICAJfQo+Cj4gICAJb2JqID0gaW50 ZWxfZmItPm9iajsKPiAtCXNpemUgPSBvYmotPmJhc2Uuc2l6ZTsKPgo+ICAgCW11dGV4X2xvY2so JmRldi0+c3RydWN0X211dGV4KTsKPgo+IEBAIC0yNDQsMjIgKzI0NCwyMiBAQCBzdGF0aWMgaW50 IGludGVsZmJfY3JlYXRlKHN0cnVjdCBkcm1fZmJfaGVscGVyICpoZWxwZXIsCj4gICAJaW5mby0+ ZmxhZ3MgPSBGQklORk9fREVGQVVMVCB8IEZCSU5GT19DQU5fRk9SQ0VfT1VUUFVUOwo+ICAgCWlu Zm8tPmZib3BzID0gJmludGVsZmJfb3BzOwo+Cj4gKwl2bWEgPSBpOTE1X2dlbV9vYmpfdG9fZ2d0 dChvYmopOwo+ICsKPiAgIAkvKiBzZXR1cCBhcGVydHVyZSBiYXNlL3NpemUgZm9yIHZlc2FmYiB0 YWtlb3ZlciAqLwo+ICAgCWluZm8tPmFwZXJ0dXJlcy0+cmFuZ2VzWzBdLmJhc2UgPSBkZXYtPm1v ZGVfY29uZmlnLmZiX2Jhc2U7Cj4gICAJaW5mby0+YXBlcnR1cmVzLT5yYW5nZXNbMF0uc2l6ZSA9 IGdndHQtPm1hcHBhYmxlX2VuZDsKPgo+IC0JaW5mby0+Zml4LnNtZW1fc3RhcnQgPSBkZXYtPm1v ZGVfY29uZmlnLmZiX2Jhc2UgKyBpOTE1X2dlbV9vYmpfZ2d0dF9vZmZzZXQob2JqKTsKPiAtCWlu Zm8tPmZpeC5zbWVtX2xlbiA9IHNpemU7Cj4gKwlpbmZvLT5maXguc21lbV9zdGFydCA9IGRldi0+ bW9kZV9jb25maWcuZmJfYmFzZSArIHZtYS0+bm9kZS5zdGFydDsKPiArCWluZm8tPmZpeC5zbWVt X2xlbiA9IHZtYS0+bm9kZS5zaXplOwo+Cj4gLQlpbmZvLT5zY3JlZW5fYmFzZSA9Cj4gLQkJaW9y ZW1hcF93YyhnZ3R0LT5tYXBwYWJsZV9iYXNlICsgaTkxNV9nZW1fb2JqX2dndHRfb2Zmc2V0KG9i aiksCj4gLQkJCSAgIHNpemUpOwo+IC0JaWYgKCFpbmZvLT5zY3JlZW5fYmFzZSkgewo+ICsJaW5m by0+c2NyZWVuX2Jhc2UgPSBpOTE1X3ZtYV9pb21hcCh2bWEpOwoKV2UgYXJlIHNsb3dseSBlc3Rh Ymxpc2hpbmcgdGhhdCBFUlJfUFRSIHNob3VsZCBub3QgYmUgc3RvcmVkIGluIApzdHJ1Y3R1cmUg bWVtYmVycyBidXQgSSBzdXBwb3NlIGhlcmUgd2UgY2FuIGFsbG93IGl0IHNpbmNlIHRoZSBzdHJ1 Y3R1cmUgCmlzIGZyZWVkIGlmIGl0IGZhaWxzLgoKPiArCWlmIChJU19FUlIoaW5mby0+c2NyZWVu X2Jhc2UpKSB7Cj4gICAJCURSTV9FUlJPUigiRmFpbGVkIHRvIHJlbWFwIGZyYW1lYnVmZmVyIGlu dG8gdmlydHVhbCBtZW1vcnlcbiIpOwo+IC0JCXJldCA9IC1FTk9TUEM7Cj4gKwkJcmV0ID0gUFRS X0VSUihpbmZvLT5zY3JlZW5fYmFzZSk7Cj4gICAJCWdvdG8gb3V0X2Rlc3Ryb3lfZmJpOwo+ICAg CX0KPiAtCWluZm8tPnNjcmVlbl9zaXplID0gc2l6ZTsKPiArCWluZm8tPnNjcmVlbl9zaXplID0g dm1hLT5ub2RlLnNpemU7Cj4KPiAgIAkvKiBUaGlzIGRyaXZlciBkb2Vzbid0IG5lZWQgYSBWVCBz d2l0Y2ggdG8gcmVzdG9yZSB0aGUgbW9kZSBvbiByZXN1bWUgKi8KPiAgIAlpbmZvLT5za2lwX3Z0 X3N3aXRjaCA9IHRydWU7Cj4KClJlZ2FyZHMsCgpUdnJ0a28KX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1n ZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21h aWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==