From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dave Gordon Subject: Re: [PATCH 1/3] drm/i915: refactor i915_gem_object_pin_map() Date: Tue, 17 May 2016 13:59:48 +0100 Message-ID: <573B15C4.5070805@intel.com> References: <1463411944-13533-1-git-send-email-david.s.gordon@intel.com> <573AE2EB.6030704@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 C26026E6D0 for ; Tue, 17 May 2016 13:00:03 +0000 (UTC) In-Reply-To: <573AE2EB.6030704@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 , intel-gfx@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gMTcvMDUvMTYgMTA6MjIsIFR2cnRrbyBVcnN1bGluIHdyb3RlOgo+Cj4gT24gMTYvMDUvMTYg MTY6MTksIERhdmUgR29yZG9uIHdyb3RlOgo+PiBUaGUgcmVjZW50bHktYWRkZWQgaTkxNV9nZW1f b2JqZWN0X3Bpbl9tYXAoKSBjYW4gYmUgZnVydGhlciBvcHRpbWlzZWQKPj4gZm9yICJzbWFsbCIg b2JqZWN0cy4gVG8gZmFjaWxpdGF0ZSB0aGlzLCBhbmQgc2ltcGxpZnkgdGhlIGVycm9yIHBhdGhz Cj4+IGJlZm9yZSBhZGRpbmcgdGhlIG5ldyBjb2RlLCB0aGlzIHBhdGNoIHB1bGxzIG91dCB0aGUg Im1hcHBpbmciIHBhcnQgb2YKPj4gdGhlIG9wZXJhdGlvbiAoaW52b2x2aW5nIGxvY2FsIGFsbG9j YXRpb25zIHdoaWNoIG11c3QgYmUgdW5kb25lIGJlZm9yZQo+PiByZXR1cm4pIGludG8gaXRzIG93 biBzdWJmdW5jdGlvbi4KPj4KPj4gVGhlIG5leHQgcGF0Y2ggd2lsbCB0aGVuIGluc2VydCB0aGUg bmV3IG9wdGltaXNhdGlvbiBpbnRvIHRoZSBtaWRkbGUgb2YKPj4gdGhlIG5vdy1zZXBhcmF0ZWQg c3ViZnVuY3Rpb24uCj4+Cj4+IFRoaXMgcmVvcmdhbmlzYXRpb24gd2lsbCBwcm9iYWJseSBub3Qg YWZmZWN0IHRoZSBnZW5lcmF0ZWQgY29kZSwgYXMgdGhlCj4+IGNvbXBpbGVyIHdpbGwgbW9zdCBs aWtlbHkgaW5saW5lIGl0IGFueXdheSwgYnV0IGl0IG1ha2VzIHRoZSBsb2dpY2FsCj4+IHN0cnVj dHVyZSBhIGJpdCBjbGVhcmVyIGFuZCBlYXNpZXIgdG8gbW9kaWZ5Lgo+Pgo+PiB2MjoKPj4gICAg ICBSZXN0cnVjdHVyZSBsb29wLW92ZXItcGFnZXMgJiBlcnJvciBjaGVjayAoQ2hyaXMgV2lsc29u KQo+Pgo+PiB2MzoKPj4gICAgICBBZGQgcGFnZSBjb3VudCB0byBkZWJ1ZyBtZXNzYWdlcyAoQ2hy aXMgV2lsc29uKQo+PiAgICAgIENvbnZlcnQgV0FSTl9PTigpIHRvIEdFTV9CVUdfT04oKQo+Pgo+ PiBTaWduZWQtb2ZmLWJ5OiBEYXZlIEdvcmRvbiA8ZGF2aWQucy5nb3Jkb25AaW50ZWwuY29tPgo+ PiBDYzogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KPj4gQ2M6IENo cmlzIFdpbHNvbiA8Y2hyaXNAY2hyaXMtd2lsc29uLmNvLnVrPgo+PiAtLS0KPj4gICBkcml2ZXJz L2dwdS9kcm0vaTkxNS9pOTE1X2dlbS5jIHwgNTkKPj4gKysrKysrKysrKysrKysrKysrKysrKysr KystLS0tLS0tLS0tLS0tLS0KPj4gICAxIGZpbGUgY2hhbmdlZCwgMzggaW5zZXJ0aW9ucygrKSwg MjEgZGVsZXRpb25zKC0pCj4+Cj4+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9p OTE1X2dlbS5jCj4+IGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaTkxNV9nZW0uYwo+PiBpbmRleCBh ZmYzODZlLi5iYmVjNDI5IDEwMDY0NAo+PiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pOTE1 X2dlbS5jCj4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9pOTE1L2k5MTVfZ2VtLmMKPj4gQEAgLTIz OTgsNiArMjM5OCw0MyBAQCBzdGF0aWMgdm9pZAo+PiBpOTE1X2dlbV9vYmplY3RfZnJlZV9tbWFw X29mZnNldChzdHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqKQo+PiAgICAgICByZXR1cm4g MDsKPj4gICB9Cj4+Cj4+ICsvKiBUaGUgJ21hcHBpbmcnIHBhcnQgb2YgaTkxNV9nZW1fb2JqZWN0 X3Bpbl9tYXAoKSBiZWxvdyAqLwo+PiArc3RhdGljIHZvaWQgKmk5MTVfZ2VtX29iamVjdF9tYXAo Y29uc3Qgc3RydWN0IGRybV9pOTE1X2dlbV9vYmplY3QgKm9iaikKPj4gK3sKPj4gKyAgICB1bnNp Z25lZCBsb25nIG5fcGFnZXMgPSBvYmotPmJhc2Uuc2l6ZSA+PiBQQUdFX1NISUZUOwo+PiArICAg IHN0cnVjdCBzZ190YWJsZSAqc2d0ID0gb2JqLT5wYWdlczsKPj4gKyAgICBzdHJ1Y3Qgc2dfcGFn ZV9pdGVyIHNnX2l0ZXI7Cj4+ICsgICAgc3RydWN0IHBhZ2UgKipwYWdlczsKPj4gKyAgICB1bnNp Z25lZCBsb25nIGkgPSAwOwo+PiArICAgIHZvaWQgKmFkZHIgPSBOVUxMOwo+Cj4gTG9va3MgbGlr ZSB0aGlzIGRvZXMgbm90IG5lZWQgdG8gYmUgaW5pdGlhbGl6ZWQ/CgpPSy4gQlRXIHRoZSBjb21w aWxlciBkaWRuJ3QgYWN0dWFsbHkgZ2VuZXJhdGUgYW55IGNvZGUgZm9yIHRoaXMgOikKCj4+ICsK Pj4gKyAgICAvKiBBIHNpbmdsZSBwYWdlIGNhbiBhbHdheXMgYmUga21hcHBlZCAqLwo+PiArICAg IGlmIChuX3BhZ2VzID09IDEpCj4+ICsgICAgICAgIHJldHVybiBrbWFwKHNnX3BhZ2Uoc2d0LT5z Z2wpKTsKPj4gKwo+PiArICAgIHBhZ2VzID0gZHJtX21hbGxvY19nZnAobl9wYWdlcywgc2l6ZW9m KCpwYWdlcyksIEdGUF9URU1QT1JBUlkpOwo+PiArICAgIGlmIChwYWdlcyA9PSBOVUxMKSB7Cj4+ ICsgICAgICAgIERSTV9ERUJVR19EUklWRVIoIkZhaWxlZCB0byBnZXQgc3BhY2UgZm9yICVsdSBw b2ludGVyc1xuIiwKPj4gKyAgICAgICAgICAgICAgICAgbl9wYWdlcyk7Cj4KPiBOb3QgdGVycmli bHkgaW1wb3J0YW50IGJ1dCBJIHRoaW5rIHRoaXMgaXMgdG9vIGxvdyBsZXZlbCBmdW5jdGlvbnMg dG8KPiBoYXZlIGRlYnVnIGxvZ2dpbmcuIEl0IHdpbGwgbm90IGFkZCBhIGxvdCBvZiB1c2VmdWwg aW5mb3JtYXRpb24sIG5vIGNhbGwKPiBzdGFjayBldGMuIEFuZCB0aGUgY2FsbGVycyBhcmUgcHJv YmFibHkgaGFuZGxpbmcgZmFpbHVyZXMgYWxyZWFkeSBhbmQKPiB0aGV5IHdvdWxkIHByb3BhZ2F0 ZSBzb21ld2hlcmUgZnJvbSB3aGVyZSBpdCBpcyBhbHJlYWR5IHJlcG9ydGVkLgo+Cj4+ICsgICAg ICAgIHJldHVybiBOVUxMOwo+PiArICAgIH0KPj4gKwo+PiArICAgIGZvcl9lYWNoX3NnX3BhZ2Uo c2d0LT5zZ2wsICZzZ19pdGVyLCBzZ3QtPm5lbnRzLCAwKQo+PiArICAgICAgICBwYWdlc1tpKytd ID0gc2dfcGFnZV9pdGVyX3BhZ2UoJnNnX2l0ZXIpOwo+PiArCj4+ICsgICAgLyogQ2hlY2sgdGhh dCB3ZSBoYXZlIHRoZSBleHBlY3RlZCBudW1iZXIgb2YgcGFnZXMgKi8KPj4gKyAgICBHRU1fQlVH X09OKGkgIT0gbl9wYWdlcyk7Cj4+ICsKPj4gKyAgICBhZGRyID0gdm1hcChwYWdlcywgbl9wYWdl cywgMCwgUEFHRV9LRVJORUwpOwo+PiArICAgIGlmIChhZGRyID09IE5VTEwpCj4+ICsgICAgICAg IERSTV9ERUJVR19EUklWRVIoIkZhaWxlZCB0byB2bWFwICVsdSBwYWdlc1xuIiwgbl9wYWdlcyk7 Cj4KPiBTYW1lIGhlcmUuIEkgbWVhbiwgdGhlIG9ubHkgcG90ZW50aWFsIGFyZ3VtZW50IGNvdWxk IGJlIHRoYXQgdGhpcyB3aWxsCj4gdGVsbCB0aGUgcmVhbCByZWFzb24gd2hpY2ggaXMgb3RoZXJ3 aXNlIGxvc3QgaW4gdGhlIE5VTEwgcmV0dXJuIGNvZGUsCj4gYnV0IEkgYW0gbm90IHN1cmUgaXQg aXMgd29ydGggaXQgc2luY2UgaXQgaXMgc28gdW5saWtlbHkgaXQgd291bGQgaGFwcGVuLgoKT0ss IGRlYnVnZ2luZyByZW1vdmVkLCBuZXcgdmVyc2lvbiBwb3N0ZWQuCgouRGF2ZS4KCj4+ICsKPj4g KyAgICBkcm1fZnJlZV9sYXJnZShwYWdlcyk7Cj4+ICsKPj4gKyAgICByZXR1cm4gYWRkcjsKPj4g K30KPj4gKwo+PiArLyogZ2V0LCBwaW4sIGFuZCBtYXAgdGhlIHBhZ2VzIG9mIHRoZSBvYmplY3Qg aW50byBrZXJuZWwgc3BhY2UgKi8KPj4gICB2b2lkICppOTE1X2dlbV9vYmplY3RfcGluX21hcChz dHJ1Y3QgZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqKQo+PiAgIHsKPj4gICAgICAgaW50IHJldDsK Pj4gQEAgLTI0MTEsMjcgKzI0NDgsNyBAQCB2b2lkICppOTE1X2dlbV9vYmplY3RfcGluX21hcChz dHJ1Y3QKPj4gZHJtX2k5MTVfZ2VtX29iamVjdCAqb2JqKQo+PiAgICAgICBpOTE1X2dlbV9vYmpl Y3RfcGluX3BhZ2VzKG9iaik7Cj4+Cj4+ICAgICAgIGlmIChvYmotPm1hcHBpbmcgPT0gTlVMTCkg ewo+PiAtICAgICAgICBzdHJ1Y3QgcGFnZSAqKnBhZ2VzOwo+PiAtCj4+IC0gICAgICAgIHBhZ2Vz ID0gTlVMTDsKPj4gLSAgICAgICAgaWYgKG9iai0+YmFzZS5zaXplID09IFBBR0VfU0laRSkKPj4g LSAgICAgICAgICAgIG9iai0+bWFwcGluZyA9IGttYXAoc2dfcGFnZShvYmotPnBhZ2VzLT5zZ2wp KTsKPj4gLSAgICAgICAgZWxzZQo+PiAtICAgICAgICAgICAgcGFnZXMgPSBkcm1fbWFsbG9jX2dm cChvYmotPmJhc2Uuc2l6ZSA+PiBQQUdFX1NISUZULAo+PiAtICAgICAgICAgICAgICAgICAgICAg ICAgICAgc2l6ZW9mKCpwYWdlcyksCj4+IC0gICAgICAgICAgICAgICAgICAgICAgICAgICBHRlBf VEVNUE9SQVJZKTsKPj4gLSAgICAgICAgaWYgKHBhZ2VzICE9IE5VTEwpIHsKPj4gLSAgICAgICAg ICAgIHN0cnVjdCBzZ19wYWdlX2l0ZXIgc2dfaXRlcjsKPj4gLSAgICAgICAgICAgIGludCBuOwo+ PiAtCj4+IC0gICAgICAgICAgICBuID0gMDsKPj4gLSAgICAgICAgICAgIGZvcl9lYWNoX3NnX3Bh Z2Uob2JqLT5wYWdlcy0+c2dsLCAmc2dfaXRlciwKPj4gLSAgICAgICAgICAgICAgICAgICAgIG9i ai0+cGFnZXMtPm5lbnRzLCAwKQo+PiAtICAgICAgICAgICAgICAgIHBhZ2VzW24rK10gPSBzZ19w YWdlX2l0ZXJfcGFnZSgmc2dfaXRlcik7Cj4+IC0KPj4gLSAgICAgICAgICAgIG9iai0+bWFwcGlu ZyA9IHZtYXAocGFnZXMsIG4sIDAsIFBBR0VfS0VSTkVMKTsKPj4gLSAgICAgICAgICAgIGRybV9m cmVlX2xhcmdlKHBhZ2VzKTsKPj4gLSAgICAgICAgfQo+PiArICAgICAgICBvYmotPm1hcHBpbmcg PSBpOTE1X2dlbV9vYmplY3RfbWFwKG9iaik7Cj4+ICAgICAgICAgICBpZiAob2JqLT5tYXBwaW5n ID09IE5VTEwpIHsKPj4gICAgICAgICAgICAgICBpOTE1X2dlbV9vYmplY3RfdW5waW5fcGFnZXMo b2JqKTsKPj4gICAgICAgICAgICAgICByZXR1cm4gRVJSX1BUUigtRU5PTUVNKTsKPj4KPgo+IE90 aGVyd2lzZSBsb29rcyBmaW5lIHRvIG1lLgo+Cj4gUmVnYXJkcywKPiBUdnJ0a28KCl9fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkludGVsLWdmeCBtYWlsaW5n IGxpc3QKSW50ZWwtZ2Z4QGxpc3RzLmZyZWVkZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVk ZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAo=