From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Vetter Subject: Re: [PATCH 02/14] drm: add helper iterator functions for plane fb_damage_clips blob Date: Thu, 6 Sep 2018 09:51:07 +0200 Message-ID: <20180906075107.GN4929@phenom.ffwll.local> References: <20180905233901.2321-1-drawat@vmware.com> <20180905233901.2321-3-drawat@vmware.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-ed1-x544.google.com (mail-ed1-x544.google.com [IPv6:2a00:1450:4864:20::544]) by gabe.freedesktop.org (Postfix) with ESMTPS id BADDC6E05C for ; Thu, 6 Sep 2018 07:51:11 +0000 (UTC) Received: by mail-ed1-x544.google.com with SMTP id z27-v6so8113763edb.10 for ; Thu, 06 Sep 2018 00:51:11 -0700 (PDT) Content-Disposition: inline In-Reply-To: <20180905233901.2321-3-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, dri-devel@lists.freedesktop.org, linux-graphics-maintainer@vmware.com, lukasz.spintzyk@displaylink.com List-Id: dri-devel@lists.freedesktop.org T24gV2VkLCBTZXAgMDUsIDIwMTggYXQgMDQ6Mzg6NDlQTSAtMDcwMCwgRGVlcGFrIFJhd2F0IHdy b3RlOgo+IFdpdGggZmJfZGFtYWdlX2NsaXBzIGJsb2IgcHJvcGVydHkgaW4gZHJtX3BsYW5lX3N0 YXRlLCB0aGlzIHBhdGNoIGFkZHMKPiBoZWxwZXIgaXRlcmF0b3IgdG8gdHJhdmVyc2UgdGhlIGRh bWFnZSBjbGlwcyB0aGF0IGxpZSBpbnNpZGUgcGxhbmUgc3JjLgo+IEl0ZXJhdG9yIHdpbGwgcmV0 dXJuIGZ1bGwgcGxhbmUgc3JjIGFzIGRhbWFnZSBpbiBjYXNlIG5lZWQgZnVsbCBwbGFuZQo+IHVw ZGF0ZSBvciBkYW1hZ2UgaXMgbm90IHNwZWNpZmllZC4KPiAKPiBTaWduZWQtb2ZmLWJ5OiBEZWVw YWsgUmF3YXQgPGRyYXdhdEB2bXdhcmUuY29tPgo+IC0tLQo+ICBkcml2ZXJzL2dwdS9kcm0vZHJt X2RhbWFnZV9oZWxwZXIuYyB8IDkzICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrCj4gIGlu Y2x1ZGUvZHJtL2RybV9kYW1hZ2VfaGVscGVyLmggICAgIHwgMjAgKysrKysrKwo+ICAyIGZpbGVz IGNoYW5nZWQsIDExMyBpbnNlcnRpb25zKCspCj4gCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9kcm1fZGFtYWdlX2hlbHBlci5jIGIvZHJpdmVycy9ncHUvZHJtL2RybV9kYW1hZ2VfaGVs cGVyLmMKPiBpbmRleCAzZTdkZTVhZmU3ZjYuLjdkNzBmNjAwMTg4OSAxMDA2NDQKPiAtLS0gYS9k cml2ZXJzL2dwdS9kcm0vZHJtX2RhbWFnZV9oZWxwZXIuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9kcm1fZGFtYWdlX2hlbHBlci5jCj4gQEAgLTMwLDYgKzMwLDcgQEAKPiAgICoqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqLwo+ICAKPiAgI2luY2x1ZGUgPGRybS9kcm1QLmg+Cj4gKyNpbmNsdWRlIDxkcm0vZHJt X2F0b21pYy5oPgo+ICAjaW5jbHVkZSA8ZHJtL2RybV9kYW1hZ2VfaGVscGVyLmg+Cj4gIAo+ICAv KioKPiBAQCAtNzUsNiArNzYsMTEgQEAKPiAgICogV2hpbGUga2VybmVsIGRvZXMgbm90IGVycm9y IGZvciBvdmVybGFwcGVkIGRhbWFnZSBjbGlwcywgaXQgaXMgZGlzY291cmFnZWQuCj4gICAqLwo+ ICAKPiArc3RhdGljIGludCBjb252ZXJ0X2ZpeGVkX3RvXzMyKGludCBmaXhlZCkKPiArewo+ICsJ cmV0dXJuICgoZml4ZWQgPj4gMTUpICYgMSkgKyAoZml4ZWQgPj4gMTYpOwo+ICt9Cj4gKwo+ICAv KioKPiAgICogZHJtX3BsYW5lX2VuYWJsZV9mYl9kYW1hZ2VfY2xpcHMgLSBlbmFibGVzIHBsYW5l IGZiIGRhbWFnZSBjbGlwcyBwcm9wZXJ0eQo+ICAgKiBAcGxhbmU6IHBsYW5lIG9uIHdoaWNoIHRv IGVuYWJsZSBkYW1hZ2UgY2xpcHMgcHJvcGVydHkKPiBAQCAtOTAsMyArOTYsOTAgQEAgdm9pZCBk cm1fcGxhbmVfZW5hYmxlX2ZiX2RhbWFnZV9jbGlwcyhzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSkK PiAgCQkJCSAgIDApOwo+ICB9Cj4gIEVYUE9SVF9TWU1CT0woZHJtX3BsYW5lX2VuYWJsZV9mYl9k YW1hZ2VfY2xpcHMpOwo+ICsKPiArLyoqCj4gKyAqIGRybV9hdG9taWNfaGVscGVyX2RhbWFnZV9p dGVyX2luaXQgLSBpbml0aWFsaXplIHRoZSBkYW1hZ2UgaXRlcmF0b3IKPiArICogQGl0ZXI6IFRo ZSBpdGVyYXRvciB0byBpbml0aWFsaXplLgo+ICsgKiBAb2xkX3N0YXRlOiBvbGQgcGxhbmUgc3Rh dGUgZm9yIHZhbGlkYXRpb24uCj4gKyAqIEBuZXdfc3RhdGU6IHBsYW5lIHN0YXRlIGZyb20gd2hp Y2ggdG8gaXRlcmF0ZSB0aGUgZGFtYWdlIGNsaXBzLgo+ICsgKgo+ICsgKiBJbml0aWFsaXplIGFu IGl0ZXJhdG9yIHRoYXQgY2xpcCBmcmFtZWJ1ZmZlciBkYW1hZ2UgaW4gcGxhbmUgZmJfZGFtYWdl X2NsaXBzCj4gKyAqIGJsb2IgdG8gcGxhbmUgc3JjIGNsaXAuIFRoZSBpdGVyYXRvciByZXR1cm5z IGZ1bGwgcGxhbmUgc3JjIGluIGNhc2UgbmVlZGluZwo+ICsgKiBmdWxsIHVwZGF0ZSBlLmcuIGR1 cmluZyBmdWxsIG1vZGVzZXQuCj4gKyAqCj4gKyAqIFdpdGggdGhpcyBoZWxwZXIgaXRlcmF0b3Is IGRyaXZlcnMgd2hpY2ggZW5hYmxlZCBmYl9kYW1hZ2VfY2xpcHMgcHJvcGVydHkgY2FuCj4gKyAq IGl0ZXJhdGUgb3ZlciB0aGUgZGFtYWdlIGNsaXBzIHRoYXQgZmFsbHMgaW5zaWRlIHBsYW5lIHNy YyBkdXJpbmcgcGxhbmUKPiArICogdXBkYXRlLgo+ICsgKgo+ICsgKiBSZXR1cm5zOiAwIG9uIHN1 Y2Nlc3MgYW5kIG5lZ2F0aXZlIGVycm9yIGNvZGUgb24gZXJyb3IuIElmIGFuIGVycm9yIGNvZGUg aXMKPiArICogcmV0dXJuZWQgdGhlbiBpdCBtZWFucyB0aGUgcGxhbmUgc3RhdGUgc2hvdWxkbid0 IHVwZGF0ZSB3aXRoIGF0dGFjaGVkIGZiLgo+ICsgKi8KPiAraW50Cj4gK2RybV9hdG9taWNfaGVs cGVyX2RhbWFnZV9pdGVyX2luaXQoc3RydWN0IGRybV9hdG9taWNfaGVscGVyX2RhbWFnZV9pdGVy ICppdGVyLAo+ICsJCQkJICAgY29uc3Qgc3RydWN0IGRybV9wbGFuZV9zdGF0ZSAqb2xkX3N0YXRl LAo+ICsJCQkJICAgY29uc3Qgc3RydWN0IGRybV9wbGFuZV9zdGF0ZSAqbmV3X3N0YXRlKQo+ICt7 Cj4gKwlpZiAoIW5ld19zdGF0ZSB8fCAhbmV3X3N0YXRlLT5jcnRjIHx8ICFuZXdfc3RhdGUtPmZi KQo+ICsJCXJldHVybiAtRUlOVkFMOwo+ICsKPiArCWlmICghbmV3X3N0YXRlLT52aXNpYmxlKQo+ ICsJCXJldHVybiAtRUlOVkFMOwoKQ2FuJ3Qgd2UgaGFuZGxlIHRoaXMgYnkgaXRlcmF0aW5nIDAg ZGFtYWdlIHJlY3RzIGluc3RlYWQ/IFdvdWxkIG1ha2UgdGhlCmNvZGUgYSBiaXQgY2xlYW5lciBJ IHRoaW5rLgoKPiArCj4gKwltZW1zZXQoaXRlciwgMCwgc2l6ZW9mKCppdGVyKSk7Cj4gKwlpdGVy LT5jbGlwcyA9IGRybV9wbGFuZV9nZXRfZGFtYWdlX2NsaXBzKG5ld19zdGF0ZSk7Cj4gKwlpdGVy LT5udW1fY2xpcHMgPSBkcm1fcGxhbmVfZ2V0X2RhbWFnZV9jbGlwc19jb3VudChuZXdfc3RhdGUp Owo+ICsKPiArCWlmICghaXRlci0+Y2xpcHMpCj4gKwkJaXRlci0+ZnVsbF91cGRhdGUgPSB0cnVl Owo+ICsKPiArCWlmICghZHJtX3JlY3RfZXF1YWxzKCZuZXdfc3RhdGUtPnNyYywgJm9sZF9zdGF0 ZS0+c3JjKSkKPiArCQlpdGVyLT5mdWxsX3VwZGF0ZSA9IHRydWU7Cj4gKwo+ICsJaXRlci0+cGxh bmVfc3JjLngxID0gY29udmVydF9maXhlZF90b18zMihuZXdfc3RhdGUtPnNyYy54MSk7Cj4gKwlp dGVyLT5wbGFuZV9zcmMueTEgPSBjb252ZXJ0X2ZpeGVkX3RvXzMyKG5ld19zdGF0ZS0+c3JjLnkx KTsKPiArCWl0ZXItPnBsYW5lX3NyYy54MiA9IGNvbnZlcnRfZml4ZWRfdG9fMzIobmV3X3N0YXRl LT5zcmMueDIpOwo+ICsJaXRlci0+cGxhbmVfc3JjLnkyID0gY29udmVydF9maXhlZF90b18zMihu ZXdfc3RhdGUtPnNyYy55Mik7CgpJIHRoaW5rIHlvdSB3YW50IHRvIGNsaXAgd2l0aCB0aGUgY2xp cHBlZCByZWN0YW5nbGVzIGhlcmUsIG5vdCB3aXRoIHRoZQpvbmVzIHVzZXJzcGFjZSBwcm92aWRl cy4KCkFsc28gSSB0aGluayB5b3UncmUgcm91bmRpbmcgaXMgd3JvbmcgaGVyZSAtIEkgdGhpbmsg eW91IG5lZWQgdG8gcm91bmQKZG93biBmb3IgeC95MSwgYW5kIHJvdW5kIHVwIGZvciB4L3kyIHRv IG1ha2Ugc3VyZSB5b3UgY2F0Y2ggYWxsIHRoZQpwaXhlbHM/CgpVbml0IHRlc3RzIGZvciB0aGlz LCBpbiB0aGUgZm9ybSBvZiBhIGRybSBzZWxmdGVzdCAobGlrZSB3ZSBoYXZlIGZvcgpkcm1fbW0u YyBhbHJlYWR5LCBidXQgZm9yIGttcyBoZWxwZXJzKSB3b3VsZCBiZSBwZXJmZWN0LiBNdWNoIGVh c2llciB0bwpyZXZpZXcgYSB0ZXN0Y2FzZSB0aGFuIGRvIGJpdG1hdGggaW4gbXkgaGVhZCA6LSkK Cj4gKwo+ICsJaWYgKGl0ZXItPmZ1bGxfdXBkYXRlKSB7Cj4gKwkJaXRlci0+Y2xpcHMgPSAwOwo+ ICsJCWl0ZXItPmN1cnJfY2xpcCA9IDA7Cj4gKwkJaXRlci0+bnVtX2NsaXBzID0gMDsKPiArCX0K PiArCj4gKwlyZXR1cm4gMDsKPiArfQo+ICtFWFBPUlRfU1lNQk9MKGRybV9hdG9taWNfaGVscGVy X2RhbWFnZV9pdGVyX2luaXQpOwo+ICsKPiArLyoqCj4gKyAqIGRybV9hdG9taWNfaGVscGVyX2Rh bWFnZV9pdGVyX25leHQgLSBhZHZhbmNlIHRoZSBkYW1hZ2UgaXRlcmF0b3IKPiArICogQGl0ZXI6 IFRoZSBpdGVyYXRvciB0byBhZHZhbmNlLgo+ICsgKiBAcmVjdDogUmV0dXJuIGEgcmVjdGFuZ2xl IGluIGZiIGNvb3JkaW5hdGUgY2xpcHBlZCB0byBwbGFuZSBzcmMuCj4gKyAqCj4gKyAqIFJldHVy bnM6ICB0cnVlIGlmIHRoZSBvdXRwdXQgaXMgdmFsaWQsIGZhbHNlIGlmIHdlJ3ZlIHJlYWNoZWQg dGhlIGVuZCBvZiB0aGUKPiArICogcmVjdGFuZ2xlIGxpc3QuCj4gKyAqLwo+ICtib29sCj4gK2Ry bV9hdG9taWNfaGVscGVyX2RhbWFnZV9pdGVyX25leHQoc3RydWN0IGRybV9hdG9taWNfaGVscGVy X2RhbWFnZV9pdGVyICppdGVyLAo+ICsJCQkJICAgc3RydWN0IGRybV9yZWN0ICpyZWN0KQo+ICt7 Cj4gKwlib29sIHJldCA9IGZhbHNlOwo+ICsKPiArCWlmIChpdGVyLT5mdWxsX3VwZGF0ZSkgewo+ ICsJCSpyZWN0ID0gaXRlci0+cGxhbmVfc3JjOwo+ICsJCWl0ZXItPmZ1bGxfdXBkYXRlID0gZmFs c2U7Cj4gKwkJcmV0dXJuIHRydWU7Cj4gKwl9Cj4gKwo+ICsJd2hpbGUgKGl0ZXItPmN1cnJfY2xp cCA8IGl0ZXItPm51bV9jbGlwcykgewo+ICsJCSpyZWN0ID0gaXRlci0+Y2xpcHNbaXRlci0+Y3Vy cl9jbGlwXTsKPiArCQlpdGVyLT5jdXJyX2NsaXArKzsKPiArCj4gKwkJaWYgKGRybV9yZWN0X2lu dGVyc2VjdChyZWN0LCAmaXRlci0+cGxhbmVfc3JjKSkgewo+ICsJCQlyZXQgPSB0cnVlOwo+ICsJ CQlicmVhazsKPiArCQl9Cj4gKwl9Cj4gKwo+ICsJcmV0dXJuIHJldDsKPiArfQo+ICtFWFBPUlRf U1lNQk9MKGRybV9hdG9taWNfaGVscGVyX2RhbWFnZV9pdGVyX25leHQpOwo+IGRpZmYgLS1naXQg YS9pbmNsdWRlL2RybS9kcm1fZGFtYWdlX2hlbHBlci5oIGIvaW5jbHVkZS9kcm0vZHJtX2RhbWFn ZV9oZWxwZXIuaAo+IGluZGV4IDIxNzY5NGU5MTY4Yy4uZjEyODJiNDU5YTRmIDEwMDY0NAo+IC0t LSBhL2luY2x1ZGUvZHJtL2RybV9kYW1hZ2VfaGVscGVyLmgKPiArKysgYi9pbmNsdWRlL2RybS9k cm1fZGFtYWdlX2hlbHBlci5oCj4gQEAgLTMyLDYgKzMyLDE5IEBACj4gICNpZm5kZWYgRFJNX0RB TUFHRV9IRUxQRVJfSF8KPiAgI2RlZmluZSBEUk1fREFNQUdFX0hFTFBFUl9IXwo+ICAKPiArLyoq Cj4gKyAqIHN0cnVjdCBkcm1fYXRvbWljX2hlbHBlcl9kYW1hZ2VfaXRlciAtIGRhbWFnZSBjbGlw IGl0ZXJhdG9yCj4gKyAqCj4gKyAqIFRoaXMgaXRlcmF0b3IgdHJhY2tzIHN0YXRlIG5lZWRlZCB0 byB3YWxrIHRoZSBsaXN0IG9mIGRhbWFnZSBjbGlwcy4KPiArICovCj4gK3N0cnVjdCBkcm1fYXRv bWljX2hlbHBlcl9kYW1hZ2VfaXRlciB7Cj4gKwljb25zdCBzdHJ1Y3QgZHJtX3JlY3QgKmNsaXBz Owo+ICsJc3RydWN0IGRybV9yZWN0IHBsYW5lX3NyYzsKPiArCXVpbnQzMl90IG51bV9jbGlwczsK PiArCXVpbnQzMl90IGN1cnJfY2xpcDsKPiArCWJvb2wgZnVsbF91cGRhdGU7Cj4gK307Cj4gKwo+ ICAvKioKPiAgICogZHJtX3BsYW5lX2dldF9kYW1hZ2VfY2xpcHNfY291bnQgLSByZXR1cm5zIGRh bWFnZSBjbGlwcyBjb3VudAo+ICAgKiBAc3RhdGU6IFBsYW5lIHN0YXRlCj4gQEAgLTU5LDUgKzcy LDEyIEBAIGRybV9wbGFuZV9nZXRfZGFtYWdlX2NsaXBzKGNvbnN0IHN0cnVjdCBkcm1fcGxhbmVf c3RhdGUgKnN0YXRlKQo+ICB9Cj4gIAo+ICB2b2lkIGRybV9wbGFuZV9lbmFibGVfZmJfZGFtYWdl X2NsaXBzKHN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lKTsKPiAraW50Cj4gK2RybV9hdG9taWNfaGVs cGVyX2RhbWFnZV9pdGVyX2luaXQoc3RydWN0IGRybV9hdG9taWNfaGVscGVyX2RhbWFnZV9pdGVy ICppdGVyLAo+ICsJCQkJICAgY29uc3Qgc3RydWN0IGRybV9wbGFuZV9zdGF0ZSAqb2xkX3N0YXRl LAo+ICsJCQkJICAgY29uc3Qgc3RydWN0IGRybV9wbGFuZV9zdGF0ZSAqbmV3X3N0YXRlKTsKCkkg dGhpbmsgYSBmb3JfZWFjaF9kYW1hZ2UgbWFjcm8gd291bGQgYmUgc3dlZXQgb24gdG9wIG9mIHRo ZXNlIGhlcmUuIEJ1dAplYXN5IHRvIGFkZCBsYXRlciBvbi4KLURhbmllbAoKPiArYm9vbAo+ICtk cm1fYXRvbWljX2hlbHBlcl9kYW1hZ2VfaXRlcl9uZXh0KHN0cnVjdCBkcm1fYXRvbWljX2hlbHBl cl9kYW1hZ2VfaXRlciAqaXRlciwKPiArCQkJCSAgIHN0cnVjdCBkcm1fcmVjdCAqcmVjdCk7Cj4g IAo+ICAjZW5kaWYKPiAtLSAKPiAyLjE3LjEKPiAKCi0tIApEYW5pZWwgVmV0dGVyClNvZnR3YXJl IEVuZ2luZWVyLCBJbnRlbCBDb3Jwb3JhdGlvbgpodHRwOi8vYmxvZy5mZndsbC5jaApfX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFpbGlu ZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVl ZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwK