From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [RFC 1/7] drm/gem: Add drm_gem_dumb_map_offset() Date: Mon, 24 Jul 2017 10:28:50 +0200 Message-ID: <20170724082850.twxe6drjxmz2vnf6@phenom.ffwll.local> References: <1499867165-60925-1-git-send-email-noralf@tronnes.org> <1499867165-60925-2-git-send-email-noralf@tronnes.org> <87h8y8dtu3.fsf@eliezer.anholt.net> <20170720080049.lzsb4osur7ek6jd2@phenom.ffwll.local> <8788a365-9805-883b-a94c-9786f1c2f647@tronnes.org> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wm0-x243.google.com (mail-wm0-x243.google.com [IPv6:2a00:1450:400c:c09::243]) by gabe.freedesktop.org (Postfix) with ESMTPS id EA95C6E247 for ; Mon, 24 Jul 2017 08:28:58 +0000 (UTC) Received: by mail-wm0-x243.google.com with SMTP id m4so14219368wmi.4 for ; Mon, 24 Jul 2017 01:28:58 -0700 (PDT) Content-Disposition: inline In-Reply-To: <8788a365-9805-883b-a94c-9786f1c2f647@tronnes.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Noralf =?iso-8859-1?Q?Tr=F8nnes?= Cc: dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org T24gRnJpLCBKdWwgMjEsIDIwMTcgYXQgMDg6NDE6NTBQTSArMDIwMCwgTm9yYWxmIFRyw7hubmVz IHdyb3RlOgo+IAo+IERlbiAyMC4wNy4yMDE3IDEwLjAwLCBza3JldiBEYW5pZWwgVmV0dGVyOgo+ ID4gT24gVGh1LCBKdWwgMjAsIDIwMTcgYXQgMTI6MTM6MDdBTSArMDIwMCwgTm9yYWxmIFRyw7hu bmVzIHdyb3RlOgo+ID4gPiBEZW4gMTkuMDcuMjAxNyAyMy4wMSwgc2tyZXYgRXJpYyBBbmhvbHQ6 Cj4gPiA+ID4gTm9yYWxmIFRyw7hubmVzIDxub3JhbGZAdHJvbm5lcy5vcmc+IHdyaXRlczoKPiA+ ID4gPiAKPiA+ID4gPiA+IEFkZCBhIGNvbW1vbiBkcm1fZHJpdmVyLmR1bWJfbWFwX29mZnNldCBm dW5jdGlvbiBmb3IgR0VNIGJhY2tlZCBkcml2ZXJzLgo+ID4gPiA+ID4gCj4gPiA+ID4gPiBTaWdu ZWQtb2ZmLWJ5OiBOb3JhbGYgVHLDuG5uZXMgPG5vcmFsZkB0cm9ubmVzLm9yZz4KPiA+ID4gPiBJ bnN0ZWFkIG9mIGp1c3QgaW50cm9kdWNpbmcgdGhlIG5ldyBjb2RlLCBjb3VsZCB3ZSByZXBsYWNl IENNQSdzIGNvZGUKPiA+ID4gPiB3aXRoIGNhbGxzIHRvIHRoaXMgYXQgdGhlIHNhbWUgdGltZT8K PiA+ID4gSSBoYXZlIGdvbmUgdGhyb3VnaCBhbGwgdGhlIGRybV9kcml2ZXItPmR1bWJfbWFwX29m ZnNldAo+ID4gPiBpbXBsZW1lbnRhdGlvbnMgYW5kIGZvdW5kIDIzIGRyaXZlcnMgdGhhdCBjb3Vs ZCB1c2UgaXQ6Cj4gPiA+IC0gMTggZHJpdmVycyB1c2UgZHJtX2dlbV9jbWFfZHVtYl9tYXBfb2Zm c2V0KCkKPiA+ID4gLSBleHlub3NfZHJtX2dlbV9kdW1iX21hcF9vZmZzZXQoKQo+ID4gPiAtIG10 a19kcm1fZ2VtX2R1bWJfbWFwX29mZnNldCgpCj4gPiA+IC0gcHNiX2dlbV9kdW1iX21hcF9ndHQo KQo+ID4gPiAtIHJvY2tjaGlwX2dlbV9kdW1iX21hcF9vZmZzZXQoKQo+ID4gPiAtIHRlZ3JhX2Jv X2R1bWJfbWFwX29mZnNldCgpCj4gPiA+IAo+ID4gPiB2Z2VtX2dlbV9kdW1iX21hcCgpIGNhbid0 IHVzZSBpdCBiZWNhdXNlIG9mIHRoaXMgY2hlY2s6Cj4gPiA+ICAgICAgaWYgKCFvYmotPmZpbHAp IHsKPiA+ID4gICAgICAgICAgcmV0ID0gLUVJTlZBTDsKPiA+ID4gICAgICAgICAgZ290byB1bnJl ZjsKPiA+ID4gICAgICB9Cj4gPiA+IAo+ID4gPiBhcm1hZGFfZ2VtX2R1bWJfbWFwX29mZnNldCgp IGNhbid0IHVzZSBpdCBiZWNhdXNlIG9mIHRoaXMgY2hlY2s6Cj4gPiA+ICAgICAgLyogRG9uJ3Qg YWxsb3cgaW1wb3J0ZWQgb2JqZWN0cyB0byBiZSBtYXBwZWQgKi8KPiA+ID4gICAgICBpZiAob2Jq LT5vYmouaW1wb3J0X2F0dGFjaCkgewo+ID4gPiAgICAgICAgICByZXQgPSAtRUlOVkFMOwo+ID4g PiAgICAgICAgICBnb3RvIGVycl91bnJlZjsKPiA+ID4gICAgICB9Cj4gPiA+IAo+ID4gPiBJIHNl ZSB0aGF0IGRyaXZlcnMgbXVzdCBpbXBsZW1lbnQgYWxsIDMgLmR1bWJfKiBjYWxsYmFja3M6Cj4g PiA+IAo+ID4gPiAgICogVG8gc3VwcG9ydCBkdW1iIG9iamVjdHMgZHJpdmVycyBtdXN0IGltcGxl bWVudCB0aGUKPiA+ID4gJmRybV9kcml2ZXIuZHVtYl9jcmVhdGUsCj4gPiA+ICAgKiAmZHJtX2Ry aXZlci5kdW1iX2Rlc3Ryb3kgYW5kICZkcm1fZHJpdmVyLmR1bWJfbWFwX29mZnNldCBvcGVyYXRp b25zLiBTZWUKPiA+ID4gICAqIHRoZXJlIGZvciBmdXJ0aGVyIGRldGFpbHMuCj4gPiA+IAo+ID4g PiBJJ20gYSBmYW4gb2YgZGVmYXVsdHMsIGlzIHRoZXJlIGFueSByZWFzb24gd2UgY2FuJ3QgZG8g dGhpczoKPiA+IFNvIGluIGdlbmVyYWwgd2UgdHJ5IG5vdCB0byBzZXQgZGVmYXVsdHMgZm9yIHRo ZSBtYWluIGRyaXZlciBlbnRyeSBob29rcywKPiA+IHRvIGF2b2lkIHRoZSBoZWxwZXIgZnVuY3Rp b25zIGxlYWtpbmcgaW50byBjb3JlIGFuZCBiZWNvbWluZyBtYW5kYXRvcnkuCj4gPiBTbyBlLmcu IC0+YXRvbWljX2NvbW1pdCBzaG91bGQgbmV2ZXIgaGF2ZSBhIGRlZmF1bHQgb2YKPiA+IGRybV9h dG9taWNfaGVscGVyX2NvbW1pdC4KPiA+IAo+ID4gU2FtZSB0aG91Z2h0IGFwcGxpZWQgaGVyZSBm b3IgdGhlIGR1bWIgYnVmZmVycyAtIHRoZSBpZGVhIGlzIHRoYXQgZHJpdmVycwo+ID4gdXNpbmcg YW55IGtpbmQgb2YgYnVmZmVyIG1hbmFnZXIgc2NoZW1lIGNvdWxkIGhhdmUgZHVtYiBidWZmZXJz LCBpbmNsdWRpbmcKPiA+IG1heWJlIG5vdCBoYXZpbmcgYSBidWZmZXIgbWFuYWdlciBhdCBhbGwg KGFuZCB5b3UgZ2V0IHNvbWUgY29va2llIHRvCj4gPiBkaXJlY3QgdnJhbSBhbGxvY2F0aW9ucyBv ciB3aGF0ZXZlcikuIEJ1dCBldmVyeW9uZSBlbmRlZCB1cCB3aXRoIGdlbSwganVzdAo+ID4gd2l0 aCBkaWZmZXJlbnQga2luZHMgb2YgYmFja2luZyBzdG9yYWdlIGltcGxlbWVudGF0aW9ucyAoY21h LCBzaG1lbSBvcgo+ID4gdHRtKS4KPiA+IAo+ID4gSSB0aGluayBpdCBtYWtlcyBzZW5zZSB0byBt YWtlIHRoZXNlIHRoZSBkZWZhdWx0cyBhbmQgcmlwIG91dCB0aGUgZGVmYXVsdAo+ID4gYXNzaWdu bWVudCBmcm9tIGFsbCBkcml2ZXJzLgo+ID4gPiAgIGludCBkcm1fbW9kZV9tbWFwX2R1bWJfaW9j dGwoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKPiA+ID4gICAgICAgICAgICAgICAgICAgIHZvaWQg KmRhdGEsIHN0cnVjdCBkcm1fZmlsZSAqZmlsZV9wcml2KQo+ID4gPiAgIHsKPiA+ID4gICAgICAg c3RydWN0IGRybV9tb2RlX21hcF9kdW1iICphcmdzID0gZGF0YTsKPiA+ID4gCj4gPiA+ICAgICAg IC8qIGNhbGwgZHJpdmVyIGlvY3RsIHRvIGdldCBtbWFwIG9mZnNldCAqLwo+ID4gPiAtICAgICBp ZiAoIWRldi0+ZHJpdmVyLT5kdW1iX21hcF9vZmZzZXQpCj4gPiA+ICsgICAgaWYgKCFkZXYtPmRy aXZlci0+ZHVtYl9jcmVhdGUpCj4gPiA+ICAgICAgICAgIHJldHVybiAtRU5PU1lTOwo+ID4gPiAK PiA+ID4gLSAgICAgcmV0dXJuIGRldi0+ZHJpdmVyLT5kdW1iX21hcF9vZmZzZXQoZmlsZV9wcml2 LCBkZXYsIGFyZ3MtPmhhbmRsZSwKPiA+ID4gJmFyZ3MtPm9mZnNldCk7Cj4gPiA+ICsgICAgIGlm IChkZXYtPmRyaXZlci0+ZHVtYl9tYXBfb2Zmc2V0KQo+ID4gPiArICAgICAgICByZXR1cm4gZGV2 LT5kcml2ZXItPmR1bWJfbWFwX29mZnNldChmaWxlX3ByaXYsIGRldiwgYXJncy0+aGFuZGxlLAo+ ID4gPiAmYXJncy0+b2Zmc2V0KTsKPiA+ID4gKyAgICBlbHNlCj4gPiA+ICsgICAgICAgIHJldHVy biBkcm1fZ2VtX2R1bWJfbWFwX29mZnNldChmaWxlX3ByaXYsIGRldiwgYXJncy0+aGFuZGxlLAo+ ID4gPiAmYXJncy0+b2Zmc2V0KTsKPiA+ID4gICB9Cj4gPiA+IAo+ID4gPiAgIGludCBkcm1fbW9k ZV9kZXN0cm95X2R1bWJfaW9jdGwoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKPiA+ID4gICAgICAg ICAgICAgICAgICAgdm9pZCAqZGF0YSwgc3RydWN0IGRybV9maWxlICpmaWxlX3ByaXYpCj4gPiA+ ICAgewo+ID4gPiAgICAgICBzdHJ1Y3QgZHJtX21vZGVfZGVzdHJveV9kdW1iICphcmdzID0gZGF0 YTsKPiA+ID4gCj4gPiA+IC0gICAgIGlmICghZGV2LT5kcml2ZXItPmR1bWJfZGVzdHJveSkKPiA+ ID4gKyAgICBpZiAoIWRldi0+ZHJpdmVyLT5kdW1iX2NyZWF0ZSkKPiA+ID4gICAgICAgICAgIHJl dHVybiAtRU5PU1lTOwo+ID4gPiAKPiA+ID4gLSAgICByZXR1cm4gZGV2LT5kcml2ZXItPmR1bWJf ZGVzdHJveShmaWxlX3ByaXYsIGRldiwgYXJncy0+aGFuZGxlKTsKPiA+ID4gKyAgICAgaWYgKGRl di0+ZHJpdmVyLT5kdW1iX2Rlc3Ryb3kpCj4gPiA+ICsgICAgICAgIHJldHVybiBkZXYtPmRyaXZl ci0+ZHVtYl9kZXN0cm95KGZpbGVfcHJpdiwgZGV2LCBhcmdzLT5oYW5kbGUpOwo+ID4gPiArICAg IGVsc2UKPiA+ID4gKyAgICAgICAgcmV0dXJuIGRybV9nZW1fZHVtYl9kZXN0cm95KGZpbGVfcHJp diwgZGV2LCBhcmdzLT5oYW5kbGUpOwo+ID4gPiAgIH0KPiA+ID4gCj4gPiA+IFRoZXJlIGFyZSAz NiBkcml2ZXJzIHRoYXQgdXNlIGRybV9nZW1fZHVtYl9kZXN0cm95KCkgZGlyZWN0bHkuCj4gPiA+ IHZnZW0gdmlvbGF0ZXMgdGhlIGRvY3MgYW5kIGRvZXNuJ3Qgc2V0IC5kdW1iX2Rlc3Ryb3kuCj4g PiBJbnRlcmVzdGluZywgc3VwcmlzaW5nIGl0IGRvZXNuJ3QgbGVhayBsaWtlIG1hZC4KPiA+ID4g PiBJIHN1c3BlY3QgdGhhdCBpZiB3ZSBoYWQgQ01BIHN1YmNsYXNzIGZyb20gZHJtX2ZiX2dlbSAo b3Igd2UgbW92ZSB0aGUKPiA+ID4gPiBnZW0gb2JqZWN0cyB0byB0aGUgYmFzZSBjbGFzcyksIHdl IGNvdWxkIHJlbW92ZSBhIGxvdCBvZiBpdHMgY29kZSB0aGF0Cj4gPiA+ID4geW91J3JlIGNvcHlp bmcgaW4gcGF0Y2ggMiwgYXMgd2VsbC4KPiA+ID4gWWVzLCB0aGF0IHdhcyB0aGUgaW50ZW50aW9u Lgo+ID4gSSBndWVzcyB3ZSdkIG5lZWQgdG8gc2VlIG1vcmUgb2YgdGhlIGdyYW5kIHBsYW4gLi4u Cj4gCj4gQ3VycmVudGx5IGl0IGxvb2tzIGxpa2UgNCBwYXRjaHNldHM6Cj4gCj4gMS4gQWRkIGRy bV9nZW1fZHVtYl9tYXBfb2Zmc2V0KCkgYW5kIGltcGxlbWVudCBkZWZhdWx0cyBhcyBkaXNjdXNz ZWQgYWJvdmUuCj4gCj4gMi4gQWRkIGRybV9nZW1fb2JqZWN0IHBvaW50ZXJzIHRvIGRybV9mcmFt ZWJ1ZmZlciBhbmQgY3JlYXRlIG1hdGNoaW5nCj4gICAgaGVscGVycyBmb3I6Cj4gICAgICBkcm1f ZnJhbWVidWZmZXJfZnVuY3MtPmNyZWF0ZV9oYW5kbGUKPiAgICAgIGRybV9mcmFtZWJ1ZmZlcl9m dW5jcy0+ZGVzdHJveQo+ICAgICAgZHJtX21vZGVfY29uZmlnX2Z1bmNzLT5mYl9jcmVhdGUKPiAg ICAgIFNob3VsZCBJIHB1dCB0aGUgZnVuY3Rpb25zIGluIGRybV9mcmFtZWJ1ZmZlcl9oZWxwZXIu W2gsY10gPwoKSSdkIGNhbGwgdGhlbSBkcm1fZ2VtX2ZyYW1lYnVmZmVyX2hlbHBlci5baGNdLCBq dXN0IHRvIGhpZ2hsaWdodCB0aGUKZ2VtPC0+a21zIGNvbm5lY3Rpb24gYSBiaXQgbW9yZS4KCj4g ICAgVXNlIHRoZXNlIGhlbHBlcnMgaW4gdGhlIGNtYSBsaWJyYXJ5Cj4gCj4gMy4gQWRkIGRybV9m Yl9oZWxwZXJfc2ltcGxlX2luaXQoKSBhbmQgZHJtX2ZiX2hlbHBlcl9zaW1wbGVfZmluaSgpCj4g ICAgVXNlIHRoZW0gaW4gZHJpdmVycyB3aGVyZSBhcHBsaWNhYmxlLgo+IAo+IDQuIEFkZCBzaG1l bSBsaWJyYXJ5Cj4gICAgQ29udmVydCB0aW55ZHJtIHRvIHNobWVtLgoKU291bmRzIGxpa2UgYSBn b29kIHBsYW4uIEknbGwgdHJ5IHRvIHNjcmFwZSBhd2F5IHNvbWUgcmV2aWV3IGJhbmR3aWR0aCB0 bwpsb29rIGF0IHlvdXIgcGF0Y2hlcy4KLURhbmllbAotLSAKRGFuaWVsIFZldHRlcgpTb2Z0d2Fy ZSBFbmdpbmVlciwgSW50ZWwgQ29ycG9yYXRpb24KaHR0cDovL2Jsb2cuZmZ3bGwuY2gKX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVsIG1haWxp bmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJl ZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==