From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: Re: [PATCH 1/3] drm/i915: refactor i915_gem_object_pin_map() Date: Tue, 17 May 2016 10:22:51 +0100 Message-ID: <573AE2EB.6030704@linux.intel.com> References: <1463411944-13533-1-git-send-email-david.s.gordon@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 3E7866E0DD for ; Tue, 17 May 2016 09:23:39 +0000 (UTC) In-Reply-To: <1463411944-13533-1-git-send-email-david.s.gordon@intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Dave Gordon , intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org Ck9uIDE2LzA1LzE2IDE2OjE5LCBEYXZlIEdvcmRvbiB3cm90ZToKPiBUaGUgcmVjZW50bHktYWRk ZWQgaTkxNV9nZW1fb2JqZWN0X3Bpbl9tYXAoKSBjYW4gYmUgZnVydGhlciBvcHRpbWlzZWQKPiBm b3IgInNtYWxsIiBvYmplY3RzLiBUbyBmYWNpbGl0YXRlIHRoaXMsIGFuZCBzaW1wbGlmeSB0aGUg ZXJyb3IgcGF0aHMKPiBiZWZvcmUgYWRkaW5nIHRoZSBuZXcgY29kZSwgdGhpcyBwYXRjaCBwdWxs cyBvdXQgdGhlICJtYXBwaW5nIiBwYXJ0IG9mCj4gdGhlIG9wZXJhdGlvbiAoaW52b2x2aW5nIGxv Y2FsIGFsbG9jYXRpb25zIHdoaWNoIG11c3QgYmUgdW5kb25lIGJlZm9yZQo+IHJldHVybikgaW50 byBpdHMgb3duIHN1YmZ1bmN0aW9uLgo+Cj4gVGhlIG5leHQgcGF0Y2ggd2lsbCB0aGVuIGluc2Vy dCB0aGUgbmV3IG9wdGltaXNhdGlvbiBpbnRvIHRoZSBtaWRkbGUgb2YKPiB0aGUgbm93LXNlcGFy YXRlZCBzdWJmdW5jdGlvbi4KPgo+IFRoaXMgcmVvcmdhbmlzYXRpb24gd2lsbCBwcm9iYWJseSBu b3QgYWZmZWN0IHRoZSBnZW5lcmF0ZWQgY29kZSwgYXMgdGhlCj4gY29tcGlsZXIgd2lsbCBtb3N0 IGxpa2VseSBpbmxpbmUgaXQgYW55d2F5LCBidXQgaXQgbWFrZXMgdGhlIGxvZ2ljYWwKPiBzdHJ1 Y3R1cmUgYSBiaXQgY2xlYXJlciBhbmQgZWFzaWVyIHRvIG1vZGlmeS4KPgo+IHYyOgo+ICAgICAg UmVzdHJ1Y3R1cmUgbG9vcC1vdmVyLXBhZ2VzICYgZXJyb3IgY2hlY2sgKENocmlzIFdpbHNvbikK Pgo+IHYzOgo+ICAgICAgQWRkIHBhZ2UgY291bnQgdG8gZGVidWcgbWVzc2FnZXMgKENocmlzIFdp bHNvbikKPiAgICAgIENvbnZlcnQgV0FSTl9PTigpIHRvIEdFTV9CVUdfT04oKQo+Cj4gU2lnbmVk LW9mZi1ieTogRGF2ZSBHb3Jkb24gPGRhdmlkLnMuZ29yZG9uQGludGVsLmNvbT4KPiBDYzogVHZy dGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KPiBDYzogQ2hyaXMgV2lsc29u IDxjaHJpc0BjaHJpcy13aWxzb24uY28udWs+Cj4gLS0tCj4gICBkcml2ZXJzL2dwdS9kcm0vaTkx NS9pOTE1X2dlbS5jIHwgNTkgKysrKysrKysrKysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0t LS0KPiAgIDEgZmlsZSBjaGFuZ2VkLCAzOCBpbnNlcnRpb25zKCspLCAyMSBkZWxldGlvbnMoLSkK Pgo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jIGIvZHJpdmVy cy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYwo+IGluZGV4IGFmZjM4NmUuLmJiZWM0MjkgMTAwNjQ0 Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYwo+ICsrKyBiL2RyaXZlcnMv Z3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMKPiBAQCAtMjM5OCw2ICsyMzk4LDQzIEBAIHN0YXRpYyB2 b2lkIGk5MTVfZ2VtX29iamVjdF9mcmVlX21tYXBfb2Zmc2V0KHN0cnVjdCBkcm1faTkxNV9nZW1f b2JqZWN0ICpvYmopCj4gICAJcmV0dXJuIDA7Cj4gICB9Cj4KPiArLyogVGhlICdtYXBwaW5nJyBw YXJ0IG9mIGk5MTVfZ2VtX29iamVjdF9waW5fbWFwKCkgYmVsb3cgKi8KPiArc3RhdGljIHZvaWQg Kmk5MTVfZ2VtX29iamVjdF9tYXAoY29uc3Qgc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9i aikKPiArewo+ICsJdW5zaWduZWQgbG9uZyBuX3BhZ2VzID0gb2JqLT5iYXNlLnNpemUgPj4gUEFH RV9TSElGVDsKPiArCXN0cnVjdCBzZ190YWJsZSAqc2d0ID0gb2JqLT5wYWdlczsKPiArCXN0cnVj dCBzZ19wYWdlX2l0ZXIgc2dfaXRlcjsKPiArCXN0cnVjdCBwYWdlICoqcGFnZXM7Cj4gKwl1bnNp Z25lZCBsb25nIGkgPSAwOwo+ICsJdm9pZCAqYWRkciA9IE5VTEw7CgpMb29rcyBsaWtlIHRoaXMg ZG9lcyBub3QgbmVlZCB0byBiZSBpbml0aWFsaXplZD8KCj4gKwo+ICsJLyogQSBzaW5nbGUgcGFn ZSBjYW4gYWx3YXlzIGJlIGttYXBwZWQgKi8KPiArCWlmIChuX3BhZ2VzID09IDEpCj4gKwkJcmV0 dXJuIGttYXAoc2dfcGFnZShzZ3QtPnNnbCkpOwo+ICsKPiArCXBhZ2VzID0gZHJtX21hbGxvY19n ZnAobl9wYWdlcywgc2l6ZW9mKCpwYWdlcyksIEdGUF9URU1QT1JBUlkpOwo+ICsJaWYgKHBhZ2Vz ID09IE5VTEwpIHsKPiArCQlEUk1fREVCVUdfRFJJVkVSKCJGYWlsZWQgdG8gZ2V0IHNwYWNlIGZv ciAlbHUgcG9pbnRlcnNcbiIsCj4gKwkJCQkgbl9wYWdlcyk7CgpOb3QgdGVycmlibHkgaW1wb3J0 YW50IGJ1dCBJIHRoaW5rIHRoaXMgaXMgdG9vIGxvdyBsZXZlbCBmdW5jdGlvbnMgdG8gCmhhdmUg ZGVidWcgbG9nZ2luZy4gSXQgd2lsbCBub3QgYWRkIGEgbG90IG9mIHVzZWZ1bCBpbmZvcm1hdGlv biwgbm8gY2FsbCAKc3RhY2sgZXRjLiBBbmQgdGhlIGNhbGxlcnMgYXJlIHByb2JhYmx5IGhhbmRs aW5nIGZhaWx1cmVzIGFscmVhZHkgYW5kIAp0aGV5IHdvdWxkIHByb3BhZ2F0ZSBzb21ld2hlcmUg ZnJvbSB3aGVyZSBpdCBpcyBhbHJlYWR5IHJlcG9ydGVkLgoKPiArCQlyZXR1cm4gTlVMTDsKPiAr CX0KPiArCj4gKwlmb3JfZWFjaF9zZ19wYWdlKHNndC0+c2dsLCAmc2dfaXRlciwgc2d0LT5uZW50 cywgMCkKPiArCQlwYWdlc1tpKytdID0gc2dfcGFnZV9pdGVyX3BhZ2UoJnNnX2l0ZXIpOwo+ICsK PiArCS8qIENoZWNrIHRoYXQgd2UgaGF2ZSB0aGUgZXhwZWN0ZWQgbnVtYmVyIG9mIHBhZ2VzICov Cj4gKwlHRU1fQlVHX09OKGkgIT0gbl9wYWdlcyk7Cj4gKwo+ICsJYWRkciA9IHZtYXAocGFnZXMs IG5fcGFnZXMsIDAsIFBBR0VfS0VSTkVMKTsKPiArCWlmIChhZGRyID09IE5VTEwpCj4gKwkJRFJN X0RFQlVHX0RSSVZFUigiRmFpbGVkIHRvIHZtYXAgJWx1IHBhZ2VzXG4iLCBuX3BhZ2VzKTsKClNh bWUgaGVyZS4gSSBtZWFuLCB0aGUgb25seSBwb3RlbnRpYWwgYXJndW1lbnQgY291bGQgYmUgdGhh dCB0aGlzIHdpbGwgCnRlbGwgdGhlIHJlYWwgcmVhc29uIHdoaWNoIGlzIG90aGVyd2lzZSBsb3N0 IGluIHRoZSBOVUxMIHJldHVybiBjb2RlLCAKYnV0IEkgYW0gbm90IHN1cmUgaXQgaXMgd29ydGgg aXQgc2luY2UgaXQgaXMgc28gdW5saWtlbHkgaXQgd291bGQgaGFwcGVuLgoKPiArCj4gKwlkcm1f ZnJlZV9sYXJnZShwYWdlcyk7Cj4gKwo+ICsJcmV0dXJuIGFkZHI7Cj4gK30KPiArCj4gKy8qIGdl dCwgcGluLCBhbmQgbWFwIHRoZSBwYWdlcyBvZiB0aGUgb2JqZWN0IGludG8ga2VybmVsIHNwYWNl ICovCj4gICB2b2lkICppOTE1X2dlbV9vYmplY3RfcGluX21hcChzdHJ1Y3QgZHJtX2k5MTVfZ2Vt X29iamVjdCAqb2JqKQo+ICAgewo+ICAgCWludCByZXQ7Cj4gQEAgLTI0MTEsMjcgKzI0NDgsNyBA QCB2b2lkICppOTE1X2dlbV9vYmplY3RfcGluX21hcChzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVj dCAqb2JqKQo+ICAgCWk5MTVfZ2VtX29iamVjdF9waW5fcGFnZXMob2JqKTsKPgo+ICAgCWlmIChv YmotPm1hcHBpbmcgPT0gTlVMTCkgewo+IC0JCXN0cnVjdCBwYWdlICoqcGFnZXM7Cj4gLQo+IC0J CXBhZ2VzID0gTlVMTDsKPiAtCQlpZiAob2JqLT5iYXNlLnNpemUgPT0gUEFHRV9TSVpFKQo+IC0J CQlvYmotPm1hcHBpbmcgPSBrbWFwKHNnX3BhZ2Uob2JqLT5wYWdlcy0+c2dsKSk7Cj4gLQkJZWxz ZQo+IC0JCQlwYWdlcyA9IGRybV9tYWxsb2NfZ2ZwKG9iai0+YmFzZS5zaXplID4+IFBBR0VfU0hJ RlQsCj4gLQkJCQkJICAgICAgIHNpemVvZigqcGFnZXMpLAo+IC0JCQkJCSAgICAgICBHRlBfVEVN UE9SQVJZKTsKPiAtCQlpZiAocGFnZXMgIT0gTlVMTCkgewo+IC0JCQlzdHJ1Y3Qgc2dfcGFnZV9p dGVyIHNnX2l0ZXI7Cj4gLQkJCWludCBuOwo+IC0KPiAtCQkJbiA9IDA7Cj4gLQkJCWZvcl9lYWNo X3NnX3BhZ2Uob2JqLT5wYWdlcy0+c2dsLCAmc2dfaXRlciwKPiAtCQkJCQkgb2JqLT5wYWdlcy0+ bmVudHMsIDApCj4gLQkJCQlwYWdlc1tuKytdID0gc2dfcGFnZV9pdGVyX3BhZ2UoJnNnX2l0ZXIp Owo+IC0KPiAtCQkJb2JqLT5tYXBwaW5nID0gdm1hcChwYWdlcywgbiwgMCwgUEFHRV9LRVJORUwp Owo+IC0JCQlkcm1fZnJlZV9sYXJnZShwYWdlcyk7Cj4gLQkJfQo+ICsJCW9iai0+bWFwcGluZyA9 IGk5MTVfZ2VtX29iamVjdF9tYXAob2JqKTsKPiAgIAkJaWYgKG9iai0+bWFwcGluZyA9PSBOVUxM KSB7Cj4gICAJCQlpOTE1X2dlbV9vYmplY3RfdW5waW5fcGFnZXMob2JqKTsKPiAgIAkJCXJldHVy biBFUlJfUFRSKC1FTk9NRU0pOwo+CgpPdGhlcndpc2UgbG9va3MgZmluZSB0byBtZS4KClJlZ2Fy ZHMsCgpUdnJ0a28KX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X18KSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3Jn Cmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4 Cg==