From mboxrd@z Thu Jan 1 00:00:00 1970 From: Lucas Stach Subject: Re: [PATCH 2/6] drm/omap: gem: Merge __omap_gem_get_pages() and omap_gem_attach_pages() Date: Wed, 04 Apr 2018 15:37:57 +0200 Message-ID: <1522849077.3779.8.camel@pengutronix.de> References: <20180402185038.18418-1-laurent.pinchart@ideasonboard.com> <20180402185038.18418-3-laurent.pinchart@ideasonboard.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from metis.ext.pengutronix.de (metis.ext.pengutronix.de [IPv6:2001:67c:670:201:290:27ff:fe1d:cc33]) by gabe.freedesktop.org (Postfix) with ESMTPS id CAEE16E0B9 for ; Wed, 4 Apr 2018 13:37:59 +0000 (UTC) In-Reply-To: <20180402185038.18418-3-laurent.pinchart@ideasonboard.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Laurent Pinchart , dri-devel@lists.freedesktop.org Cc: Daniel Vetter , Tomi Valkeinen List-Id: dri-devel@lists.freedesktop.org QW0gTW9udGFnLCBkZW4gMDIuMDQuMjAxOCwgMjE6NTAgKzAzMDAgc2NocmllYiBMYXVyZW50IFBp bmNoYXJ0Ogo+IFRoZSBfX29tYXBfZ2VtX2dldF9wYWdlcygpIGZ1bmN0aW9uIGlzIGEgd3JhcHBl ciBhcm91bmQKPiBvbWFwX2dlbV9hdHRhY2hfcGFnZXMoKSB0aGF0IHJldHVybnMgdGhlIG9tYXBf b2JqLT5wYWdlcyBwb2ludGVyIHRocm91Z2gKPiBhIGZ1bmN0aW9uIGFyZ3VtZW50LiBTb21lIGNh bGxlcnMgZG9uJ3QgbmVlZCB0aGUgcGFnZXMgcG9pbnRlciwgYW5kIGFsbAo+IG9mIHRoZW0gY2Fu IGFjY2VzcyBvbWFwX29iai0+cGFnZXMgZGlyZWN0bHkuIFRvIHNpbXBsaWZ5IHRoZSBjb2RlIG1l cmdlCj4gdGhlIF9fb21hcF9nZW1fZ2V0X3BhZ2VzKCkgd3JhcHBlciB3aXRoIG9tYXBfZ2VtX2F0 dGFjaF9wYWdlcygpIGFuZAo+IHVwZGF0ZSB0aGUgY2FsbGVycyBhY2NvcmRpbmdseS4KPiAKPiA+ IFNpZ25lZC1vZmYtYnk6IExhdXJlbnQgUGluY2hhcnQgPGxhdXJlbnQucGluY2hhcnRAaWRlYXNv bmJvYXJkLmNvbT4KPiAtLS0KPiDCoGRyaXZlcnMvZ3B1L2RybS9vbWFwZHJtL29tYXBfZ2VtLmMg fCA2MiArKysrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQo+IMKgMSBmaWxlIGNo YW5nZWQsIDIzIGluc2VydGlvbnMoKyksIDM5IGRlbGV0aW9ucygtKQo+IAo+IGRpZmYgLS1naXQg YS9kcml2ZXJzL2dwdS9kcm0vb21hcGRybS9vbWFwX2dlbS5jIGIvZHJpdmVycy9ncHUvZHJtL29t YXBkcm0vb21hcF9nZW0uYwo+IGluZGV4IDZjZmNmNjBjZmZlMy4uMTNmZWEyMDczNDNlIDEwMDY0 NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9vbWFwZHJtL29tYXBfZ2VtLmMKPiArKysgYi9kcml2 ZXJzL2dwdS9kcm0vb21hcGRybS9vbWFwX2dlbS5jCj4gQEAgLTIyMiw3ICsyMjIsMTAgQEAgc3Rh dGljIHZvaWQgb21hcF9nZW1fZXZpY3Qoc3RydWN0IGRybV9nZW1fb2JqZWN0ICpvYmopCj4gwqAg KiBQYWdlIE1hbmFnZW1lbnQKPiDCoCAqLwo+IMKgCj4gLS8qKiBlbnN1cmUgYmFja2luZyBwYWdl cyBhcmUgYWxsb2NhdGVkICovCj4gKy8qCj4gKyAqIEVuc3VyZSBiYWNraW5nIHBhZ2VzIGFyZSBh bGxvY2F0ZWQuIE11c3QgYmUgY2FsbGVkIHdpdGggdGhlIG9tYXBfb2JqLmxvY2sKPiArICogaGVs ZC4KPiArICovCgpEcml2ZS1ieSBjb21tZW50OiBJIGFsd2F5cyBmaW5kIGl0IGhhcmQgdG8gdmFs aWRhdGUgdGhvc2UgY29tbWVudC1vbmx5CmxvY2sgcHJlcmVxdWlzaXRlcywgZXNwZWNpYWxseSBp ZiBjYWxsc3RhY2tzIGdldCBkZWVwZXIuCgpXaGF0IHdlIGRvIGluIGV0bmF2aXYgaXMgdG8gbWFr ZSB0aG9zZSBsb2NrIGNvbW1lbnRzIGV4ZWN1dGFibGUgYnkKdXNpbmcgbG9ja2RlcF9hc3NlcnRf aGVsZCgpIHRvIHZhbGlkYXRlIHRoZSBsb2NraW5nIGFzc3VtcHRpb25zLiBUaGlzCm1ha2VzIHN1 cmUgdGhhdCBpZiB5b3UgZXZlciBtYW5hZ2UgdG8gdmlvbGF0ZSB0aGUgbG9ja2luZyBpbiBhIGNv ZGUKcmV3b3JrLCBhIGxvY2tkZXAgZW5hYmxlZCBkZWJ1ZyBidWlsZCB3aWxsIGV4cGxvZGUgcmln aHQgYXQgdGhlIHNwb3QuCgpSZWdhcmRzLApMdWNhcwoKPiDCoHN0YXRpYyBpbnQgb21hcF9nZW1f YXR0YWNoX3BhZ2VzKHN0cnVjdCBkcm1fZ2VtX29iamVjdCAqb2JqKQo+IMKgewo+ID4gwqAJc3Ry dWN0IGRybV9kZXZpY2UgKmRldiA9IG9iai0+ZGV2Owo+IEBAIC0yMzIsNyArMjM1LDEyIEBAIHN0 YXRpYyBpbnQgb21hcF9nZW1fYXR0YWNoX3BhZ2VzKHN0cnVjdCBkcm1fZ2VtX29iamVjdCAqb2Jq KQo+ID4gwqAJaW50IGksIHJldDsKPiA+IMKgCWRtYV9hZGRyX3QgKmFkZHJzOwo+IMKgCj4gPiAt CVdBUk5fT04ob21hcF9vYmotPnBhZ2VzKTsKPiA+ICsJLyoKPiA+ICsJwqAqIElmIG5vdCB1c2lu ZyBzaG1lbSAoaW4gd2hpY2ggY2FzZSBiYWNraW5nIHBhZ2VzIGRvbid0IG5lZWQgdG8gYmUKPiA+ ICsJwqAqIGFsbG9jYXRlZCkgb3IgaWYgcGFnZXMgYXJlIGFscmVhZHkgYWxsb2NhdGVkIHdlJ3Jl IGRvbmUuCj4gPiArCcKgKi8KPiA+ICsJaWYgKCEob21hcF9vYmotPmZsYWdzICYgT01BUF9CT19N RU1fU0hNRU0pIHx8IG9tYXBfb2JqLT5wYWdlcykKPiA+ICsJCXJldHVybiAwOwo+IMKgCj4gPiDC oAlwYWdlcyA9IGRybV9nZW1fZ2V0X3BhZ2VzKG9iaik7Cj4gPiDCoAlpZiAoSVNfRVJSKHBhZ2Vz KSkgewo+IEBAIC0yODgsMjkgKzI5Niw2IEBAIHN0YXRpYyBpbnQgb21hcF9nZW1fYXR0YWNoX3Bh Z2VzKHN0cnVjdCBkcm1fZ2VtX29iamVjdCAqb2JqKQo+ID4gwqAJcmV0dXJuIHJldDsKPiDCoH0K PiDCoAo+IC0vKiBhY3F1aXJlIHBhZ2VzIHdoZW4gbmVlZGVkIChmb3IgZXhhbXBsZSwgZm9yIERN QSB3aGVyZSBwaHlzaWNhbGx5Cj4gLSAqIGNvbnRpZ3VvdXMgYnVmZmVyIGlzIG5vdCByZXF1aXJl ZAo+IC0gKi8KPiAtc3RhdGljIGludCBfX29tYXBfZ2VtX2dldF9wYWdlcyhzdHJ1Y3QgZHJtX2dl bV9vYmplY3QgKm9iaiwKPiA+IC0JCQkJc3RydWN0IHBhZ2UgKioqcGFnZXMpCj4gLXsKPiA+IC0J c3RydWN0IG9tYXBfZ2VtX29iamVjdCAqb21hcF9vYmogPSB0b19vbWFwX2JvKG9iaik7Cj4gPiAt CWludCByZXQgPSAwOwo+IC0KPiA+IC0JaWYgKChvbWFwX29iai0+ZmxhZ3MgJiBPTUFQX0JPX01F TV9TSE1FTSkgJiYgIW9tYXBfb2JqLT5wYWdlcykgewo+ID4gLQkJcmV0ID0gb21hcF9nZW1fYXR0 YWNoX3BhZ2VzKG9iaik7Cj4gPiAtCQlpZiAocmV0KSB7Cj4gPiAtCQkJZGV2X2VycihvYmotPmRl di0+ZGV2LCAiY291bGQgbm90IGF0dGFjaCBwYWdlc1xuIik7Cj4gPiAtCQkJcmV0dXJuIHJldDsK PiA+IC0JCX0KPiA+IC0JfQo+IC0KPiA+IC0JLyogVE9ETzogZXZlbiBwaHlzLWNvbnRpZy4uIHdl IHNob3VsZCBoYXZlIGEgbGlzdCBvZiBwYWdlcz8gKi8KPiA+IC0JKnBhZ2VzID0gb21hcF9vYmot PnBhZ2VzOwo+IC0KPiA+IC0JcmV0dXJuIDA7Cj4gLX0KPiAtCj4gwqAvKiogcmVsZWFzZSBiYWNr aW5nIHBhZ2VzICovCj4gwqBzdGF0aWMgdm9pZCBvbWFwX2dlbV9kZXRhY2hfcGFnZXMoc3RydWN0 IGRybV9nZW1fb2JqZWN0ICpvYmopCj4gwqB7Cj4gQEAgLTUxNiw3ICs1MDEsNiBAQCBpbnQgb21h cF9nZW1fZmF1bHQoc3RydWN0IHZtX2ZhdWx0ICp2bWYpCj4gPiDCoAlzdHJ1Y3QgZHJtX2dlbV9v YmplY3QgKm9iaiA9IHZtYS0+dm1fcHJpdmF0ZV9kYXRhOwo+ID4gwqAJc3RydWN0IG9tYXBfZ2Vt X29iamVjdCAqb21hcF9vYmogPSB0b19vbWFwX2JvKG9iaik7Cj4gPiDCoAlzdHJ1Y3QgZHJtX2Rl dmljZSAqZGV2ID0gb2JqLT5kZXY7Cj4gPiAtCXN0cnVjdCBwYWdlICoqcGFnZXM7Cj4gPiDCoAlp bnQgcmV0Owo+IMKgCj4gPiDCoAkvKiBNYWtlIHN1cmUgd2UgZG9uJ3QgcGFyYWxsZWwgdXBkYXRl IG9uIGEgZmF1bHQsIG5vciBtb3ZlIG9yIHJlbW92ZQo+IEBAIC01MjUsNyArNTA5LDcgQEAgaW50 IG9tYXBfZ2VtX2ZhdWx0KHN0cnVjdCB2bV9mYXVsdCAqdm1mKQo+ID4gwqAJbXV0ZXhfbG9jaygm ZGV2LT5zdHJ1Y3RfbXV0ZXgpOwo+IMKgCj4gPiDCoAkvKiBpZiBhIHNobWVtIGJhY2tlZCBvYmpl Y3QsIG1ha2Ugc3VyZSB3ZSBoYXZlIHBhZ2VzIGF0dGFjaGVkIG5vdyAqLwo+ID4gLQlyZXQgPSBf X29tYXBfZ2VtX2dldF9wYWdlcyhvYmosICZwYWdlcyk7Cj4gPiArCXJldCA9IG9tYXBfZ2VtX2F0 dGFjaF9wYWdlcyhvYmopOwo+ID4gwqAJaWYgKHJldCkKPiA+IMKgCQlnb3RvIGZhaWw7Cj4gwqAK PiBAQCAtNjk0LDEyICs2NzgsMTIgQEAgaW50IG9tYXBfZ2VtX3JvbGwoc3RydWN0IGRybV9nZW1f b2JqZWN0ICpvYmosIHUzMiByb2xsKQo+IMKgCj4gPiDCoAkvKiBpZiB3ZSBhcmVuJ3QgbWFwcGVk IHlldCwgd2UgZG9uJ3QgbmVlZCB0byBkbyBhbnl0aGluZyAqLwo+ID4gwqAJaWYgKG9tYXBfb2Jq LT5ibG9jaykgewo+ID4gLQkJc3RydWN0IHBhZ2UgKipwYWdlczsKPiAtCj4gPiAtCQlyZXQgPSBf X29tYXBfZ2VtX2dldF9wYWdlcyhvYmosICZwYWdlcyk7Cj4gPiArCQlyZXQgPSBvbWFwX2dlbV9h dHRhY2hfcGFnZXMob2JqKTsKPiA+IMKgCQlpZiAocmV0KQo+ID4gwqAJCQlnb3RvIGZhaWw7Cj4g PiAtCQlyZXQgPSB0aWxlcl9waW4ob21hcF9vYmotPmJsb2NrLCBwYWdlcywgbnBhZ2VzLCByb2xs LCB0cnVlKTsKPiArCj4gPiArCQlyZXQgPSB0aWxlcl9waW4ob21hcF9vYmotPmJsb2NrLCBvbWFw X29iai0+cGFnZXMsIG5wYWdlcywKPiA+ICsJCQkJcm9sbCwgdHJ1ZSk7Cj4gPiDCoAkJaWYgKHJl dCkKPiA+IMKgCQkJZGV2X2VycihvYmotPmRldi0+ZGV2LCAiY291bGQgbm90IHJlcGluOiAlZFxu IiwgcmV0KTsKPiA+IMKgCX0KPiBAQCAtODEwLDE0ICs3OTQsMTMgQEAgaW50IG9tYXBfZ2VtX3Bp bihzdHJ1Y3QgZHJtX2dlbV9vYmplY3QgKm9iaiwgZG1hX2FkZHJfdCAqZG1hX2FkZHIpCj4gwqAK PiA+IMKgCWlmICghb21hcF9nZW1faXNfY29udGlndW91cyhvbWFwX29iaikgJiYgcHJpdi0+aGFz X2RtbSkgewo+ID4gwqAJCWlmIChvbWFwX29iai0+ZG1hX2FkZHJfY250ID09IDApIHsKPiA+IC0J CQlzdHJ1Y3QgcGFnZSAqKnBhZ2VzOwo+ID4gwqAJCQl1MzIgbnBhZ2VzID0gb2JqLT5zaXplID4+ IFBBR0VfU0hJRlQ7Cj4gPiDCoAkJCWVudW0gdGlsZXJfZm10IGZtdCA9IGdlbTJmbXQob21hcF9v YmotPmZsYWdzKTsKPiA+IMKgCQkJc3RydWN0IHRpbGVyX2Jsb2NrICpibG9jazsKPiDCoAo+ID4g wqAJCQlCVUdfT04ob21hcF9vYmotPmJsb2NrKTsKPiDCoAo+ID4gLQkJCXJldCA9IF9fb21hcF9n ZW1fZ2V0X3BhZ2VzKG9iaiwgJnBhZ2VzKTsKPiA+ICsJCQlyZXQgPSBvbWFwX2dlbV9hdHRhY2hf cGFnZXMob2JqKTsKPiA+IMKgCQkJaWYgKHJldCkKPiA+IMKgCQkJCWdvdG8gZmFpbDsKPiDCoAo+ IEBAIC04MzcsNyArODIwLDcgQEAgaW50IG9tYXBfZ2VtX3BpbihzdHJ1Y3QgZHJtX2dlbV9vYmpl Y3QgKm9iaiwgZG1hX2FkZHJfdCAqZG1hX2FkZHIpCj4gPiDCoAkJCX0KPiDCoAo+ID4gwqAJCQkv KiBUT0RPOiBlbmFibGUgYXN5bmMgcmVmaWxsLi4gKi8KPiA+IC0JCQlyZXQgPSB0aWxlcl9waW4o YmxvY2ssIHBhZ2VzLCBucGFnZXMsCj4gPiArCQkJcmV0ID0gdGlsZXJfcGluKGJsb2NrLCBvbWFw X29iai0+cGFnZXMsIG5wYWdlcywKPiA+IMKgCQkJCQlvbWFwX29iai0+cm9sbCwgdHJ1ZSk7Cj4g PiDCoAkJCWlmIChyZXQpIHsKPiA+IMKgCQkJCXRpbGVyX3JlbGVhc2UoYmxvY2spOwo+IEBAIC05 NDYsMTYgKzkyOSwxOCBAQCBpbnQgb21hcF9nZW1fdGlsZWRfc3RyaWRlKHN0cnVjdCBkcm1fZ2Vt X29iamVjdCAqb2JqLCB1MzIgb3JpZW50KQo+IMKgaW50IG9tYXBfZ2VtX2dldF9wYWdlcyhzdHJ1 Y3QgZHJtX2dlbV9vYmplY3QgKm9iaiwgc3RydWN0IHBhZ2UgKioqcGFnZXMsCj4gPiDCoAkJYm9v bCByZW1hcCkKPiDCoHsKPiA+ICsJc3RydWN0IG9tYXBfZ2VtX29iamVjdCAqb21hcF9vYmogPSB0 b19vbWFwX2JvKG9iaik7Cj4gPiDCoAlpbnQgcmV0Owo+ICsKPiA+IMKgCWlmICghcmVtYXApIHsK PiA+IC0JCXN0cnVjdCBvbWFwX2dlbV9vYmplY3QgKm9tYXBfb2JqID0gdG9fb21hcF9ibyhvYmop Owo+ID4gwqAJCWlmICghb21hcF9vYmotPnBhZ2VzKQo+ID4gwqAJCQlyZXR1cm4gLUVOT01FTTsK PiA+IMKgCQkqcGFnZXMgPSBvbWFwX29iai0+cGFnZXM7Cj4gPiDCoAkJcmV0dXJuIDA7Cj4gPiDC oAl9Cj4gPiDCoAltdXRleF9sb2NrKCZvYmotPmRldi0+c3RydWN0X211dGV4KTsKPiA+IC0JcmV0 ID0gX19vbWFwX2dlbV9nZXRfcGFnZXMob2JqLCBwYWdlcyk7Cj4gPiArCXJldCA9IG9tYXBfZ2Vt X2F0dGFjaF9wYWdlcyhvYmopOwo+ID4gKwkqcGFnZXMgPSBvbWFwX29iai0+cGFnZXM7Cj4gPiDC oAltdXRleF91bmxvY2soJm9iai0+ZGV2LT5zdHJ1Y3RfbXV0ZXgpOwo+ID4gwqAJcmV0dXJuIHJl dDsKPiDCoH0KPiBAQCAtOTgwLDEzICs5NjUsMTIgQEAgdm9pZCAqb21hcF9nZW1fdmFkZHIoc3Ry dWN0IGRybV9nZW1fb2JqZWN0ICpvYmopCj4gPiDCoAlzdHJ1Y3Qgb21hcF9nZW1fb2JqZWN0ICpv bWFwX29iaiA9IHRvX29tYXBfYm8ob2JqKTsKPiA+IMKgCVdBUk5fT04oIW11dGV4X2lzX2xvY2tl ZCgmb2JqLT5kZXYtPnN0cnVjdF9tdXRleCkpOwo+ID4gwqAJaWYgKCFvbWFwX29iai0+dmFkZHIp IHsKPiA+IC0JCXN0cnVjdCBwYWdlICoqcGFnZXM7Cj4gPiDCoAkJaW50IHJldDsKPiDCoAo+ID4g LQkJcmV0ID0gX19vbWFwX2dlbV9nZXRfcGFnZXMob2JqLCAmcGFnZXMpOwo+ID4gKwkJcmV0ID0g b21hcF9nZW1fYXR0YWNoX3BhZ2VzKG9iaik7Cj4gPiDCoAkJaWYgKHJldCkKPiA+IMKgCQkJcmV0 dXJuIEVSUl9QVFIocmV0KTsKPiA+IC0JCW9tYXBfb2JqLT52YWRkciA9IHZtYXAocGFnZXMsIG9i ai0+c2l6ZSA+PiBQQUdFX1NISUZULAo+ID4gKwkJb21hcF9vYmotPnZhZGRyID0gdm1hcChvbWFw X29iai0+cGFnZXMsIG9iai0+c2l6ZSA+PiBQQUdFX1NISUZULAo+ID4gwqAJCQkJVk1fTUFQLCBw Z3Byb3Rfd3JpdGVjb21iaW5lKFBBR0VfS0VSTkVMKSk7Cj4gPiDCoAl9Cj4gPiDCoAlyZXR1cm4g b21hcF9vYmotPnZhZGRyOwpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3Rv cC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmkt ZGV2ZWwK