From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [PATCH v3 05/18] drm: Add helper to implement legacy dirtyfb Date: Thu, 11 Oct 2018 18:15:47 +0200 Message-ID: <20181011161547.GH31561@phenom.ffwll.local> References: <20181011001657.1715-1-drawat@vmware.com> <20181011001657.1715-5-drawat@vmware.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-ed1-x541.google.com (mail-ed1-x541.google.com [IPv6:2a00:1450:4864:20::541]) by gabe.freedesktop.org (Postfix) with ESMTPS id F1EED6E09A for ; Thu, 11 Oct 2018 16:15:52 +0000 (UTC) Received: by mail-ed1-x541.google.com with SMTP id g32-v6so8779420edg.13 for ; Thu, 11 Oct 2018 09:15:52 -0700 (PDT) Content-Disposition: inline In-Reply-To: <20181011001657.1715-5-drawat@vmware.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Deepak Rawat Cc: thellstrom@vmware.com, Daniel Vetter , dri-devel@lists.freedesktop.org, linux-graphics-maintainer@vmware.com List-Id: dri-devel@lists.freedesktop.org T24gV2VkLCBPY3QgMTAsIDIwMTggYXQgMDU6MTY6NDRQTSAtMDcwMCwgRGVlcGFrIFJhd2F0IHdy b3RlOgo+IEZyb206IFJvYiBDbGFyayA8cm9iZGNsYXJrQGdtYWlsLmNvbT4KPiAKPiBBZGQgYW4g YXRvbWljIGhlbHBlciB0byBpbXBsZW1lbnQgZGlydHlmYiBzdXBwb3J0LiAgVGhpcyBpcyBuZWVk ZWQgdG8KPiBzdXBwb3J0IERTSSBjb21tYW5kLW1vZGUgcGFuZWxzIHdpdGggeDExIHVzZXJzcGFj ZSAoaWUuIHdoZW4gd2UgY2FuJ3QKPiByZWx5IG9uIHBhZ2VmbGlwcyB0byB0cmlnZ2VyIGEgZmx1 c2ggdG8gdGhlIHBhbmVsKS4KPiAKPiB2MjogTW9kaWZpZWQgdGhlIGhlbHBlciB0byB1c2UgcGxh bmUgZmJfZGFtYWdlX2NsaXBzIHByb3BlcnR5IGFuZAo+IHJlbW92ZWQgcGxhbmVfc3RhdGU6OmRp cnR5IGZsYWcuCj4gCj4gdjM6Cj4gLSBVc2UgdWFwaSBkcm1fbW9kZV9yZWN0Lgo+IC0gU3VwcG9y dCBhbm5vdGF0ZSBmbGFncy4KPiAKPiB2NDogQ29ycmVjdCBrZXJuZWwgZG9jLgo+IAo+IENjOiB2 aWxsZS5zeXJqYWxhQGxpbnV4LmludGVsLmNvbQo+IENjOiBEYW5pZWwgVmV0dGVyIDxkYW5pZWwu dmV0dGVyQGZmd2xsLmNoPgo+IENjOiBQZWtrYSBQYWFsYW5lbiA8cHBhYWxhbmVuQGdtYWlsLmNv bT4KPiBDYzogRGFuaWVsIFN0b25lIDxkYW5pZWxAZm9vaXNoYmFyLm9yZz4KPiBTaWduZWQtb2Zm LWJ5OiBSb2IgQ2xhcmsgPHJvYmRjbGFya0BnbWFpbC5jb20+Cj4gU2lnbmVkLW9mZi1ieTogRGVl cGFrIFJhd2F0IDxkcmF3YXRAdm13YXJlLmNvbT4KPiAtLS0KPiAgZHJpdmVycy9ncHUvZHJtL2Ry bV9kYW1hZ2VfaGVscGVyLmMgfCAxMjQgKysrKysrKysrKysrKysrKysrKysrKysrKysrKwo+ICBp bmNsdWRlL2RybS9kcm1fZGFtYWdlX2hlbHBlci5oICAgICB8ICAgNCArCj4gIDIgZmlsZXMgY2hh bmdlZCwgMTI4IGluc2VydGlvbnMoKykKPiAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJt L2RybV9kYW1hZ2VfaGVscGVyLmMgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2RhbWFnZV9oZWxwZXIu Ywo+IGluZGV4IGU4MGZhNmUwOGE5OS4uZmRiNWEwNzJkN2U5IDEwMDY0NAo+IC0tLSBhL2RyaXZl cnMvZ3B1L2RybS9kcm1fZGFtYWdlX2hlbHBlci5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2Ry bV9kYW1hZ2VfaGVscGVyLmMKPiBAQCAtMjYsNiArMjYsNyBAQAo+ICAgKgo+ICAgKiBBdXRob3Jz Ogo+ICAgKiBEZWVwYWsgUmF3YXQgPGRyYXdhdEB2bXdhcmUuY29tPgo+ICsgKiBSb2IgQ2xhcmsg PHJvYmRjbGFya0BnbWFpbC5jb20+Cj4gICAqCj4gICAqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi8KPiAgCj4g QEAgLTcwLDYgKzcxLDIxIEBACj4gICAqIHJlY3RhbmdsZXMgY2xpcHBlZCB0byAmZHJtX3BsYW5l X3N0YXRlLnNyYy4KPiAgICovCj4gIAo+ICtzdGF0aWMgdm9pZCBjb252ZXJ0X2NsaXBfcmVjdF90 b19yZWN0KGNvbnN0IHN0cnVjdCBkcm1fY2xpcF9yZWN0ICpzcmMsCj4gKwkJCQkgICAgICBzdHJ1 Y3QgZHJtX21vZGVfcmVjdCAqZGVzdCwKPiArCQkJCSAgICAgIHVpbnQzMl90IG51bV9jbGlwcywg dWludDMyX3Qgc3JjX2luYykKPiArewo+ICsJd2hpbGUgKG51bV9jbGlwcyA+IDApIHsKPiArCQlk ZXN0LT54MSA9IHNyYy0+eDE7Cj4gKwkJZGVzdC0+eTEgPSBzcmMtPnkxOwo+ICsJCWRlc3QtPngy ID0gc3JjLT54MjsKPiArCQlkZXN0LT55MiA9IHNyYy0+eTI7Cj4gKwkJc3JjICs9IHNyY19pbmM7 Cj4gKwkJZGVzdCsrOwo+ICsJCW51bV9jbGlwcy0tOwo+ICsJfQo+ICt9Cj4gKwo+ICAvKioKPiAg ICogZHJtX3BsYW5lX2VuYWJsZV9mYl9kYW1hZ2VfY2xpcHMgLSBFbmFibGVzIHBsYW5lIGZiIGRh bWFnZSBjbGlwcyBwcm9wZXJ0eS4KPiAgICogQHBsYW5lOiBQbGFuZSBvbiB3aGljaCB0byBlbmFi bGUgZGFtYWdlIGNsaXBzIHByb3BlcnR5Lgo+IEBAIC0xMjMsNiArMTM5LDExNCBAQCB2b2lkIGRy bV9hdG9taWNfaGVscGVyX2NoZWNrX3BsYW5lX2RhbWFnZShzdHJ1Y3QgZHJtX2F0b21pY19zdGF0 ZSAqc3RhdGUsCj4gIH0KPiAgRVhQT1JUX1NZTUJPTChkcm1fYXRvbWljX2hlbHBlcl9jaGVja19w bGFuZV9kYW1hZ2UpOwo+ICAKPiArLyoqCj4gKyAqIGRybV9hdG9taWNfaGVscGVyX2RpcnR5ZmIg LSBIZWxwZXIgZm9yIGRpcnR5ZmIuCj4gKyAqIEBmYjogRFJNIGZyYW1lYnVmZmVyLgo+ICsgKiBA ZmlsZV9wcml2OiBEcm0gZmlsZSBmb3IgdGhlIGlvY3RsIGNhbGwuCj4gKyAqIEBmbGFnczogRGly dHkgZmIgYW5ub3RhdGUgZmxhZ3MuCj4gKyAqIEBjb2xvcjogQ29sb3IgZm9yIGFubm90YXRlIGZp bGwuCj4gKyAqIEBjbGlwczogRGlydHkgcmVnaW9uLgo+ICsgKiBAbnVtX2NsaXBzOiBDb3VudCBv ZiBjbGlwIGluIGNsaXBzLgo+ICsgKgo+ICsgKiBBIGhlbHBlciB0byBpbXBsZW1lbnQgJmRybV9m cmFtZWJ1ZmZlcl9mdW5jczo6ZGlydHkgdXNpbmcgZGFtYWdlIGludGVyZmFjZQoKcy86Oi8uLyB0 byBtYWtlIHRoZSBrZXJuZWxkb2Mgd29yay4KCj4gKyAqIGR1cmluZyBwbGFuZSB1cGRhdGUuIElm IG51bV9jbGlwcyBpcyAwIHRoZW4gdGhpcyBoZWxwZXIgd2lsbCBkbyBhIGZ1bGwgcGxhbmUKPiAr ICogdXBkYXRlLiBUaGlzIGlzIHRoZSBzYW1lIGJlaGF2aW91ciBleHBlY3RlZCBieSBkaXJ0eWZi IGlvY3RsKCkuCgpJIHRoaW5rIHVzdWFsbHkgd2UgYWxsLXVwcGVyY2FzZSBESVJURkIgSU9DVEws IGJ1dCB0aGlzIGlzIGFsc28gb2sgSQp0aGluay4KCldpdGggdGhpcyBhZGRyZXNzZWQ6CgpSZXZp ZXdlZC1ieTogRGFuaWVsIFZldHRlciA8ZGFuaWVsLnZldHRlckBmZndsbC5jaD4KCj4gKyAqCj4g KyAqIE5vdGUgdGhhdCB0aGlzIGhlbHBlciBpcyBibG9ja2luZyBpbXBsZW1lbnRhdGlvbi4gVGhp cyBpcyBiZWNhdXNlIGN1cnJlbnQKPiArICogdXNlciBvZiB0aGlzIGhlbHBlciBpcyB2bXdnZngg d2hpY2ggbmVlZHMgYmxvY2tpbmcuCj4gKyAqCj4gKyAqIFJldHVybjogWmVybyBvbiBzdWNjZXNz LCBuZWdhdGl2ZSBlcnJubyBvbiBmYWlsdXJlLgo+ICsgKi8KPiAraW50IGRybV9hdG9taWNfaGVs cGVyX2RpcnR5ZmIoc3RydWN0IGRybV9mcmFtZWJ1ZmZlciAqZmIsCj4gKwkJCSAgICAgIHN0cnVj dCBkcm1fZmlsZSAqZmlsZV9wcml2LCB1bnNpZ25lZCBmbGFncywKPiArCQkJICAgICAgdW5zaWdu ZWQgY29sb3IsIHN0cnVjdCBkcm1fY2xpcF9yZWN0ICpjbGlwcywKPiArCQkJICAgICAgdW5zaWdu ZWQgbnVtX2NsaXBzKQo+ICt7Cj4gKwlzdHJ1Y3QgZHJtX21vZGVzZXRfYWNxdWlyZV9jdHggY3R4 Owo+ICsJc3RydWN0IGRybV9wcm9wZXJ0eV9ibG9iICpkYW1hZ2UgPSBOVUxMOwo+ICsJc3RydWN0 IGRybV9tb2RlX3JlY3QgKnJlY3RzID0gTlVMTDsKPiArCXN0cnVjdCBkcm1fYXRvbWljX3N0YXRl ICpzdGF0ZTsKPiArCXN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lOwo+ICsJaW50IHJldCA9IDA7Cj4g Kwo+ICsJLyoKPiArCSAqIFdoZW4gY2FsbGVkIGZyb20gaW9jdGwsIHdlIGFyZSBpbnRlcnJ1cHRh YmxlLCBidXQgbm90IHdoZW4gY2FsbGVkCj4gKwkgKiBpbnRlcm5hbGx5IChpZS4gZGVmaW8gd29y a2VyKQo+ICsJICovCj4gKwlkcm1fbW9kZXNldF9hY3F1aXJlX2luaXQoJmN0eCwKPiArCQlmaWxl X3ByaXYgPyBEUk1fTU9ERVNFVF9BQ1FVSVJFX0lOVEVSUlVQVElCTEUgOiAwKTsKPiArCj4gKwlz dGF0ZSA9IGRybV9hdG9taWNfc3RhdGVfYWxsb2MoZmItPmRldik7Cj4gKwlpZiAoIXN0YXRlKSB7 Cj4gKwkJcmV0ID0gLUVOT01FTTsKPiArCQlnb3RvIG91dDsKPiArCX0KPiArCXN0YXRlLT5hY3F1 aXJlX2N0eCA9ICZjdHg7Cj4gKwo+ICsJaWYgKGNsaXBzKSB7Cj4gKwkJdWludDMyX3QgaW5jID0g MTsKPiArCj4gKwkJaWYgKGZsYWdzICYgRFJNX01PREVfRkJfRElSVFlfQU5OT1RBVEVfQ09QWSkg ewo+ICsJCQlpbmMgPSAyOwo+ICsJCQludW1fY2xpcHMgLz0gMjsKPiArCQl9Cj4gKwo+ICsJCXJl Y3RzID0ga2NhbGxvYyhudW1fY2xpcHMsIHNpemVvZigqcmVjdHMpLCBHRlBfS0VSTkVMKTsKPiAr CQlpZiAoIXJlY3RzKSB7Cj4gKwkJCXJldCA9IC1FTk9NRU07Cj4gKwkJCWdvdG8gb3V0Owo+ICsJ CX0KPiArCj4gKwkJY29udmVydF9jbGlwX3JlY3RfdG9fcmVjdChjbGlwcywgcmVjdHMsIG51bV9j bGlwcywgaW5jKTsKPiArCQlkYW1hZ2UgPSBkcm1fcHJvcGVydHlfY3JlYXRlX2Jsb2IoZmItPmRl diwKPiArCQkJCQkJICBudW1fY2xpcHMgKiBzaXplb2YoKnJlY3RzKSwKPiArCQkJCQkJICByZWN0 cyk7Cj4gKwkJaWYgKElTX0VSUihkYW1hZ2UpKSB7Cj4gKwkJCXJldCA9IFBUUl9FUlIoZGFtYWdl KTsKPiArCQkJZGFtYWdlID0gTlVMTDsKPiArCQkJZ290byBvdXQ7Cj4gKwkJfQo+ICsJfQo+ICsK PiArcmV0cnk6Cj4gKwlkcm1fZm9yX2VhY2hfcGxhbmUocGxhbmUsIGZiLT5kZXYpIHsKPiArCQlz dHJ1Y3QgZHJtX3BsYW5lX3N0YXRlICpwbGFuZV9zdGF0ZTsKPiArCj4gKwkJaWYgKHBsYW5lLT5z dGF0ZS0+ZmIgIT0gZmIpCj4gKwkJCWNvbnRpbnVlOwo+ICsKPiArCQlwbGFuZV9zdGF0ZSA9IGRy bV9hdG9taWNfZ2V0X3BsYW5lX3N0YXRlKHN0YXRlLCBwbGFuZSk7Cj4gKwkJaWYgKElTX0VSUihw bGFuZV9zdGF0ZSkpIHsKPiArCQkJcmV0ID0gUFRSX0VSUihwbGFuZV9zdGF0ZSk7Cj4gKwkJCWdv dG8gb3V0Owo+ICsJCX0KPiArCj4gKwkJZHJtX3Byb3BlcnR5X3JlcGxhY2VfYmxvYigmcGxhbmVf c3RhdGUtPmZiX2RhbWFnZV9jbGlwcywKPiArCQkJCQkgIGRhbWFnZSk7Cj4gKwl9Cj4gKwo+ICsJ cmV0ID0gZHJtX2F0b21pY19jb21taXQoc3RhdGUpOwo+ICsKPiArb3V0Ogo+ICsJaWYgKHJldCA9 PSAtRURFQURMSykgewo+ICsJCWRybV9hdG9taWNfc3RhdGVfY2xlYXIoc3RhdGUpOwo+ICsJCXJl dCA9IGRybV9tb2Rlc2V0X2JhY2tvZmYoJmN0eCk7Cj4gKwkJaWYgKCFyZXQpCj4gKwkJCWdvdG8g cmV0cnk7Cj4gKwl9Cj4gKwo+ICsJZHJtX3Byb3BlcnR5X2Jsb2JfcHV0KGRhbWFnZSk7Cj4gKwlr ZnJlZShyZWN0cyk7Cj4gKwlkcm1fYXRvbWljX3N0YXRlX3B1dChzdGF0ZSk7Cj4gKwo+ICsJZHJt X21vZGVzZXRfZHJvcF9sb2NrcygmY3R4KTsKPiArCWRybV9tb2Rlc2V0X2FjcXVpcmVfZmluaSgm Y3R4KTsKPiArCj4gKwlyZXR1cm4gcmV0Owo+ICsKPiArfQo+ICtFWFBPUlRfU1lNQk9MKGRybV9h dG9taWNfaGVscGVyX2RpcnR5ZmIpOwo+ICsKPiAgLyoqCj4gICAqIGRybV9hdG9taWNfaGVscGVy X2RhbWFnZV9pdGVyX2luaXQgLSBJbml0aWFsaXplIHRoZSBkYW1hZ2UgaXRlcmF0b3IuCj4gICAq IEBpdGVyOiBUaGUgaXRlcmF0b3IgdG8gaW5pdGlhbGl6ZS4KPiBkaWZmIC0tZ2l0IGEvaW5jbHVk ZS9kcm0vZHJtX2RhbWFnZV9oZWxwZXIuaCBiL2luY2x1ZGUvZHJtL2RybV9kYW1hZ2VfaGVscGVy LmgKPiBpbmRleCBiOWEwZDA1ZmIwOTMuLjgyYTcxMjhjOWY5NyAxMDA2NDQKPiAtLS0gYS9pbmNs dWRlL2RybS9kcm1fZGFtYWdlX2hlbHBlci5oCj4gKysrIGIvaW5jbHVkZS9kcm0vZHJtX2RhbWFn ZV9oZWxwZXIuaAo+IEBAIC02Nyw2ICs2NywxMCBAQCBzdHJ1Y3QgZHJtX2F0b21pY19oZWxwZXJf ZGFtYWdlX2l0ZXIgewo+ICB2b2lkIGRybV9wbGFuZV9lbmFibGVfZmJfZGFtYWdlX2NsaXBzKHN0 cnVjdCBkcm1fcGxhbmUgKnBsYW5lKTsKPiAgdm9pZCBkcm1fYXRvbWljX2hlbHBlcl9jaGVja19w bGFuZV9kYW1hZ2Uoc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKnN0YXRlLAo+ICAJCQkJCSAgc3Ry dWN0IGRybV9wbGFuZV9zdGF0ZSAqcGxhbmVfc3RhdGUpOwo+ICtpbnQgZHJtX2F0b21pY19oZWxw ZXJfZGlydHlmYihzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYiwKPiArCQkJICAgICAgc3RydWN0 IGRybV9maWxlICpmaWxlX3ByaXYsIHVuc2lnbmVkIGZsYWdzLAo+ICsJCQkgICAgICB1bnNpZ25l ZCBjb2xvciwgc3RydWN0IGRybV9jbGlwX3JlY3QgKmNsaXBzLAo+ICsJCQkgICAgICB1bnNpZ25l ZCBudW1fY2xpcHMpOwo+ICB2b2lkCj4gIGRybV9hdG9taWNfaGVscGVyX2RhbWFnZV9pdGVyX2lu aXQoc3RydWN0IGRybV9hdG9taWNfaGVscGVyX2RhbWFnZV9pdGVyICppdGVyLAo+ICAJCQkJICAg Y29uc3Qgc3RydWN0IGRybV9wbGFuZV9zdGF0ZSAqb2xkX3N0YXRlLAo+IC0tIAo+IDIuMTcuMQo+ IAoKLS0gCkRhbmllbCBWZXR0ZXIKU29mdHdhcmUgRW5naW5lZXIsIEludGVsIENvcnBvcmF0aW9u Cmh0dHA6Ly9ibG9nLmZmd2xsLmNoCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fCmRyaS1kZXZlbCBtYWlsaW5nIGxpc3QKZHJpLWRldmVsQGxpc3RzLmZyZWVk ZXNrdG9wLm9yZwpodHRwczovL2xpc3RzLmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZv L2RyaS1kZXZlbAo=