From mboxrd@z Thu Jan 1 00:00:00 1970 From: Archit Taneja Subject: Re: [PATCH 14/16] drm/msm: Convert to use new iterator macros, v2. Date: Wed, 19 Jul 2017 14:55:12 +0530 Message-ID: <647090f6-f35e-e248-8a9e-5c487633423c@codeaurora.org> References: <20170712081344.25495-1-maarten.lankhorst@linux.intel.com> <20170712081344.25495-15-maarten.lankhorst@linux.intel.com> <20170712094823.2akjrev3v7ckxb7b@phenom.ffwll.local> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; Format="flowed" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: Content-Language: en-US List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: freedreno-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "Freedreno" To: Maarten Lankhorst , Daniel Vetter Cc: Rob Herring , linux-arm-msm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, intel-gfx-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, Sushmita Susheelendra , Russell King , Vincent Abriou , freedreno-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org, Markus Elfring List-Id: dri-devel@lists.freedesktop.org CgpPbiAwNy8xMi8yMDE3IDA0OjE1IFBNLCBNYWFydGVuIExhbmtob3JzdCB3cm90ZToKPiBPcCAx Mi0wNy0xNyBvbSAxMTo0OCBzY2hyZWVmIERhbmllbCBWZXR0ZXI6Cj4+IE9uIFdlZCwgSnVsIDEy LCAyMDE3IGF0IDEwOjEzOjQyQU0gKzAyMDAsIE1hYXJ0ZW4gTGFua2hvcnN0IHdyb3RlOgo+Pj4g Zm9yX2VhY2hfb2JqX2luX3N0YXRlIGlzIGFib3V0IHRvIGJlIHJlbW92ZWQsIHNvIGNvbnZlcnQK Pj4+IHRvIHRoZSBuZXcgaXRlcmF0b3IgbWFjcm9zLgo+Pj4KPj4+IEp1c3QgbGlrZSBpbiBvbWFw LCB1c2UgY3J0Y19zdGF0ZS0+YWN0aXZlIGluc3RlYWQgb2YKPj4+IGNydGNfc3RhdGUtPmVuYWJs ZSB3aGVuIHdhaXRpbmcgZm9yIGNvbXBsZXRpb24uCgpUZXN0ZWQtYnk6IEFyY2hpdCBUYW5lamEg PGFyY2hpdHRAY29kZWF1cm9yYS5vcmc+Cgo+Pj4KPj4+IFNpZ25lZC1vZmYtYnk6IE1hYXJ0ZW4g TGFua2hvcnN0IDxtYWFydGVuLmxhbmtob3JzdEBsaW51eC5pbnRlbC5jb20+Cj4+PiBDYzogUm9i IENsYXJrIDxyb2JkY2xhcmtAZ21haWwuY29tPgo+Pj4gQ2M6IEFyY2hpdCBUYW5lamEgPGFyY2hp dHRAY29kZWF1cm9yYS5vcmc+Cj4+PiBDYzogVmluY2VudCBBYnJpb3UgPHZpbmNlbnQuYWJyaW91 QHN0LmNvbT4KPj4+IENjOiBNYWFydGVuIExhbmtob3JzdCA8bWFhcnRlbi5sYW5raG9yc3RAbGlu dXguaW50ZWwuY29tPgo+Pj4gQ2M6IFJ1c3NlbGwgS2luZyA8cm1rK2tlcm5lbEBhcm1saW51eC5v cmcudWs+Cj4+PiBDYzogUm9iIEhlcnJpbmcgPHJvYmhAa2VybmVsLm9yZz4KPj4+IENjOiBNYXJr dXMgRWxmcmluZyA8ZWxmcmluZ0B1c2Vycy5zb3VyY2Vmb3JnZS5uZXQ+Cj4+PiBDYzogU3VzaG1p dGEgU3VzaGVlbGVuZHJhIDxzc3VzaGVlbEBjb2RlYXVyb3JhLm9yZz4KPj4+IENjOiBsaW51eC1h cm0tbXNtQHZnZXIua2VybmVsLm9yZwo+Pj4gQ2M6IGZyZWVkcmVub0BsaXN0cy5mcmVlZGVza3Rv cC5vcmcKPj4+IC0tLQo+Pj4gICBkcml2ZXJzL2dwdS9kcm0vbXNtL21kcC9tZHA0L21kcDRfa21z LmMgfCAgNCArKy0tCj4+PiAgIGRyaXZlcnMvZ3B1L2RybS9tc20vbXNtX2F0b21pYy5jICAgICAg ICB8IDE2ICsrKysrKysrLS0tLS0tLS0KPj4+ICAgMiBmaWxlcyBjaGFuZ2VkLCAxMCBpbnNlcnRp b25zKCspLCAxMCBkZWxldGlvbnMoLSkKPj4+Cj4+PiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL21zbS9tZHAvbWRwNC9tZHA0X2ttcy5jIGIvZHJpdmVycy9ncHUvZHJtL21zbS9tZHAvbWRw NC9tZHA0X2ttcy5jCj4+PiBpbmRleCBiY2QxZjVjYWM3MmMuLmY3ZjA4NzQxOWVkOCAxMDA2NDQK Pj4+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tc20vbWRwL21kcDQvbWRwNF9rbXMuYwo+Pj4gKysr IGIvZHJpdmVycy9ncHUvZHJtL21zbS9tZHAvbWRwNC9tZHA0X2ttcy5jCj4+PiBAQCAtMTE0LDcg KzExNCw3IEBAIHN0YXRpYyB2b2lkIG1kcDRfcHJlcGFyZV9jb21taXQoc3RydWN0IG1zbV9rbXMg Kmttcywgc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKnN0Cj4+PiAgIAltZHA0X2VuYWJsZShtZHA0 X2ttcyk7Cj4+PiAgIAo+Pj4gICAJLyogc2VlIDExOWVjYjdmZCAqLwo+Pj4gLQlmb3JfZWFjaF9j cnRjX2luX3N0YXRlKHN0YXRlLCBjcnRjLCBjcnRjX3N0YXRlLCBpKQo+Pj4gKwlmb3JfZWFjaF9u ZXdfY3J0Y19pbl9zdGF0ZShzdGF0ZSwgY3J0YywgY3J0Y19zdGF0ZSwgaSkKPj4+ICAgCQlkcm1f Y3J0Y192YmxhbmtfZ2V0KGNydGMpOwo+Pj4gICB9Cj4+PiAgIAo+Pj4gQEAgLTEyNiw3ICsxMjYs NyBAQCBzdGF0aWMgdm9pZCBtZHA0X2NvbXBsZXRlX2NvbW1pdChzdHJ1Y3QgbXNtX2ttcyAqa21z LCBzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqcwo+Pj4gICAJc3RydWN0IGRybV9jcnRjX3N0YXRl ICpjcnRjX3N0YXRlOwo+Pj4gICAKPj4+ICAgCS8qIHNlZSAxMTllY2I3ZmQgKi8KPj4+IC0JZm9y X2VhY2hfY3J0Y19pbl9zdGF0ZShzdGF0ZSwgY3J0YywgY3J0Y19zdGF0ZSwgaSkKPj4+ICsJZm9y X2VhY2hfbmV3X2NydGNfaW5fc3RhdGUoc3RhdGUsIGNydGMsIGNydGNfc3RhdGUsIGkpCj4+PiAg IAkJZHJtX2NydGNfdmJsYW5rX3B1dChjcnRjKTsKPj4+ICAgCj4+PiAgIAltZHA0X2Rpc2FibGUo bWRwNF9rbXMpOwo+Pj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9tc20vbXNtX2F0b21p Yy5jIGIvZHJpdmVycy9ncHUvZHJtL21zbS9tc21fYXRvbWljLmMKPj4+IGluZGV4IDk2MzNhNjhi MTRkNy4uOWQzY2MxZjVlMzFhIDEwMDY0NAo+Pj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL21zbS9t c21fYXRvbWljLmMKPj4+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vbXNtX2F0b21pYy5jCj4+ PiBAQCAtODQsMTMgKzg0LDEzIEBAIHN0YXRpYyB2b2lkIG1zbV9hdG9taWNfd2FpdF9mb3JfY29t bWl0X2RvbmUoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKPj4+ICAgCQlzdHJ1Y3QgZHJtX2F0b21p Y19zdGF0ZSAqb2xkX3N0YXRlKQo+Pj4gICB7Cj4+PiAgIAlzdHJ1Y3QgZHJtX2NydGMgKmNydGM7 Cj4+PiAtCXN0cnVjdCBkcm1fY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZTsKPj4+ICsJc3RydWN0IGRy bV9jcnRjX3N0YXRlICpuZXdfY3J0Y19zdGF0ZTsKPj4+ICAgCXN0cnVjdCBtc21fZHJtX3ByaXZh dGUgKnByaXYgPSBvbGRfc3RhdGUtPmRldi0+ZGV2X3ByaXZhdGU7Cj4+PiAgIAlzdHJ1Y3QgbXNt X2ttcyAqa21zID0gcHJpdi0+a21zOwo+Pj4gICAJaW50IGk7Cj4+PiAgIAo+Pj4gLQlmb3JfZWFj aF9jcnRjX2luX3N0YXRlKG9sZF9zdGF0ZSwgY3J0YywgY3J0Y19zdGF0ZSwgaSkgewo+Pj4gLQkJ aWYgKCFjcnRjLT5zdGF0ZS0+ZW5hYmxlKQo+Pj4gKwlmb3JfZWFjaF9uZXdfY3J0Y19pbl9zdGF0 ZShvbGRfc3RhdGUsIGNydGMsIG5ld19jcnRjX3N0YXRlLCBpKSB7Cj4+PiArCQlpZiAoIW5ld19j cnRjX3N0YXRlLT5hY3RpdmUpCj4+PiAgIAkJCWNvbnRpbnVlOwo+Pj4gICAKPj4+ICAgCQlrbXMt PmZ1bmNzLT53YWl0X2Zvcl9jcnRjX2NvbW1pdF9kb25lKGttcywgY3J0Yyk7Cj4+PiBAQCAtMTk1 LDcgKzE5NSw3IEBAIGludCBtc21fYXRvbWljX2NvbW1pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2 LAo+Pj4gICAJc3RydWN0IGRybV9jcnRjICpjcnRjOwo+Pj4gICAJc3RydWN0IGRybV9jcnRjX3N0 YXRlICpjcnRjX3N0YXRlOwo+Pj4gICAJc3RydWN0IGRybV9wbGFuZSAqcGxhbmU7Cj4+PiAtCXN0 cnVjdCBkcm1fcGxhbmVfc3RhdGUgKnBsYW5lX3N0YXRlOwo+Pj4gKwlzdHJ1Y3QgZHJtX3BsYW5l X3N0YXRlICpvbGRfcGxhbmVfc3RhdGUsICpuZXdfcGxhbmVfc3RhdGU7Cj4+PiAgIAlpbnQgaSwg cmV0Owo+Pj4gICAKPj4+ICAgCXJldCA9IGRybV9hdG9taWNfaGVscGVyX3ByZXBhcmVfcGxhbmVz KGRldiwgc3RhdGUpOwo+Pj4gQEAgLTIxMSwxNSArMjExLDE1IEBAIGludCBtc21fYXRvbWljX2Nv bW1pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAo+Pj4gICAJLyoKPj4+ICAgCSAqIEZpZ3VyZSBv dXQgd2hhdCBjcnRjcyB3ZSBoYXZlOgo+Pj4gICAJICovCj4+PiAtCWZvcl9lYWNoX2NydGNfaW5f c3RhdGUoc3RhdGUsIGNydGMsIGNydGNfc3RhdGUsIGkpCj4+PiArCWZvcl9lYWNoX25ld19jcnRj X2luX3N0YXRlKHN0YXRlLCBjcnRjLCBjcnRjX3N0YXRlLCBpKQo+Pj4gICAJCWMtPmNydGNfbWFz ayB8PSBkcm1fY3J0Y19tYXNrKGNydGMpOwo+Pj4gICAKPj4+ICAgCS8qCj4+PiAgIAkgKiBGaWd1 cmUgb3V0IHdoYXQgZmVuY2UgdG8gd2FpdCBmb3I6Cj4+PiAgIAkgKi8KPj4+IC0JZm9yX2VhY2hf cGxhbmVfaW5fc3RhdGUoc3RhdGUsIHBsYW5lLCBwbGFuZV9zdGF0ZSwgaSkgewo+Pj4gLQkJaWYg KChwbGFuZS0+c3RhdGUtPmZiICE9IHBsYW5lX3N0YXRlLT5mYikgJiYgcGxhbmVfc3RhdGUtPmZi KSB7Cj4+PiAtCQkJc3RydWN0IGRybV9nZW1fb2JqZWN0ICpvYmogPSBtc21fZnJhbWVidWZmZXJf Ym8ocGxhbmVfc3RhdGUtPmZiLCAwKTsKPj4+ICsJZm9yX2VhY2hfb2xkbmV3X3BsYW5lX2luX3N0 YXRlKHN0YXRlLCBwbGFuZSwgb2xkX3BsYW5lX3N0YXRlLCBuZXdfcGxhbmVfc3RhdGUsIGkpIHsK Pj4+ICsJCWlmICgobmV3X3BsYW5lX3N0YXRlLT5mYiAhPSBvbGRfcGxhbmVfc3RhdGUtPmZiKSAm JiBuZXdfcGxhbmVfc3RhdGUtPmZiKSB7Cj4+PiArCQkJc3RydWN0IGRybV9nZW1fb2JqZWN0ICpv YmogPSBtc21fZnJhbWVidWZmZXJfYm8obmV3X3BsYW5lX3N0YXRlLT5mYiwgMCk7Cj4+PiAgIAkJ CXN0cnVjdCBtc21fZ2VtX29iamVjdCAqbXNtX29iaiA9IHRvX21zbV9ibyhvYmopOwo+Pj4gICAJ CQlzdHJ1Y3QgZG1hX2ZlbmNlICpmZW5jZSA9IHJlc2VydmF0aW9uX29iamVjdF9nZXRfZXhjbF9y Y3UobXNtX29iai0+cmVzdik7Cj4+IFByZXR0eSBzdXJlIHRoaXMgZmFpbHMgdG8gY29tcGlsZSwg eW91J3ZlIGZvcmdvdHRlbiB0byBkbyBvbmUgbW9yZQo+PiBzL3BsYW5lX3N0YXRlL25ld19wbGFu ZV9zdGF0ZS8uCj4+Cj4+IFdpdGggdGhhdCBmaXhlZDoKPj4KPj4gUmV2aWV3ZWQtYnk6IERhbmll bCBWZXR0ZXIgPGRhbmllbC52ZXR0ZXJAZmZ3bGwuY2g+Cj4gCj4gLS0tPjgtLS0KPiBmb3JfZWFj aF9vYmpfaW5fc3RhdGUgaXMgYWJvdXQgdG8gYmUgcmVtb3ZlZCwgc28gY29udmVydAo+IHRvIHRo ZSBuZXcgaXRlcmF0b3IgbWFjcm9zLgo+IAo+IEp1c3QgbGlrZSBpbiBvbWFwLCB1c2UgY3J0Y19z dGF0ZS0+YWN0aXZlIGluc3RlYWQgb2YKPiBjcnRjX3N0YXRlLT5lbmFibGUgd2hlbiB3YWl0aW5n IGZvciBjb21wbGV0aW9uLgo+IAo+IENoYW5nZXMgc2luY2UgdjE6Cj4gLSBGaXggY29tcGlsYXRp b24uCj4gCj4gU2lnbmVkLW9mZi1ieTogTWFhcnRlbiBMYW5raG9yc3QgPG1hYXJ0ZW4ubGFua2hv cnN0QGxpbnV4LmludGVsLmNvbT4KPiBDYzogUm9iIENsYXJrIDxyb2JkY2xhcmtAZ21haWwuY29t Pgo+IENjOiBBcmNoaXQgVGFuZWphIDxhcmNoaXR0QGNvZGVhdXJvcmEub3JnPgo+IENjOiBWaW5j ZW50IEFicmlvdSA8dmluY2VudC5hYnJpb3VAc3QuY29tPgo+IENjOiBNYWFydGVuIExhbmtob3Jz dCA8bWFhcnRlbi5sYW5raG9yc3RAbGludXguaW50ZWwuY29tPgo+IENjOiBSdXNzZWxsIEtpbmcg PHJtaytrZXJuZWxAYXJtbGludXgub3JnLnVrPgo+IENjOiBSb2IgSGVycmluZyA8cm9iaEBrZXJu ZWwub3JnPgo+IENjOiBNYXJrdXMgRWxmcmluZyA8ZWxmcmluZ0B1c2Vycy5zb3VyY2Vmb3JnZS5u ZXQ+Cj4gQ2M6IFN1c2htaXRhIFN1c2hlZWxlbmRyYSA8c3N1c2hlZWxAY29kZWF1cm9yYS5vcmc+ Cj4gQ2M6IGxpbnV4LWFybS1tc21Admdlci5rZXJuZWwub3JnCj4gQ2M6IGZyZWVkcmVub0BsaXN0 cy5mcmVlZGVza3RvcC5vcmcKPiBSZXZpZXdlZC1ieTogRGFuaWVsIFZldHRlciA8ZGFuaWVsLnZl dHRlckBmZndsbC5jaD4KPiAtLS0KPiAgIGRyaXZlcnMvZ3B1L2RybS9tc20vbWRwL21kcDQvbWRw NF9rbXMuYyB8ICA0ICsrLS0KPiAgIGRyaXZlcnMvZ3B1L2RybS9tc20vbXNtX2F0b21pYy5jICAg ICAgICB8IDE4ICsrKysrKysrKy0tLS0tLS0tLQo+ICAgMiBmaWxlcyBjaGFuZ2VkLCAxMSBpbnNl cnRpb25zKCspLCAxMSBkZWxldGlvbnMoLSkKPiAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL21zbS9tZHAvbWRwNC9tZHA0X2ttcy5jIGIvZHJpdmVycy9ncHUvZHJtL21zbS9tZHAvbWRw NC9tZHA0X2ttcy5jCj4gaW5kZXggYmNkMWY1Y2FjNzJjLi5mN2YwODc0MTllZDggMTAwNjQ0Cj4g LS0tIGEvZHJpdmVycy9ncHUvZHJtL21zbS9tZHAvbWRwNC9tZHA0X2ttcy5jCj4gKysrIGIvZHJp dmVycy9ncHUvZHJtL21zbS9tZHAvbWRwNC9tZHA0X2ttcy5jCj4gQEAgLTExNCw3ICsxMTQsNyBA QCBzdGF0aWMgdm9pZCBtZHA0X3ByZXBhcmVfY29tbWl0KHN0cnVjdCBtc21fa21zICprbXMsIHN0 cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdAo+ICAgCW1kcDRfZW5hYmxlKG1kcDRfa21zKTsKPiAg IAo+ICAgCS8qIHNlZSAxMTllY2I3ZmQgKi8KPiAtCWZvcl9lYWNoX2NydGNfaW5fc3RhdGUoc3Rh dGUsIGNydGMsIGNydGNfc3RhdGUsIGkpCj4gKwlmb3JfZWFjaF9uZXdfY3J0Y19pbl9zdGF0ZShz dGF0ZSwgY3J0YywgY3J0Y19zdGF0ZSwgaSkKPiAgIAkJZHJtX2NydGNfdmJsYW5rX2dldChjcnRj KTsKPiAgIH0KPiAgIAo+IEBAIC0xMjYsNyArMTI2LDcgQEAgc3RhdGljIHZvaWQgbWRwNF9jb21w bGV0ZV9jb21taXQoc3RydWN0IG1zbV9rbXMgKmttcywgc3RydWN0IGRybV9hdG9taWNfc3RhdGUg KnMKPiAgIAlzdHJ1Y3QgZHJtX2NydGNfc3RhdGUgKmNydGNfc3RhdGU7Cj4gICAKPiAgIAkvKiBz ZWUgMTE5ZWNiN2ZkICovCj4gLQlmb3JfZWFjaF9jcnRjX2luX3N0YXRlKHN0YXRlLCBjcnRjLCBj cnRjX3N0YXRlLCBpKQo+ICsJZm9yX2VhY2hfbmV3X2NydGNfaW5fc3RhdGUoc3RhdGUsIGNydGMs IGNydGNfc3RhdGUsIGkpCj4gICAJCWRybV9jcnRjX3ZibGFua19wdXQoY3J0Yyk7Cj4gICAKPiAg IAltZHA0X2Rpc2FibGUobWRwNF9rbXMpOwo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0v bXNtL21zbV9hdG9taWMuYyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vbXNtX2F0b21pYy5jCj4gaW5k ZXggOTYzM2E2OGIxNGQ3Li4yNzI4Nzk0YTcxNDIgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUv ZHJtL21zbS9tc21fYXRvbWljLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9hdG9t aWMuYwo+IEBAIC04NCwxMyArODQsMTMgQEAgc3RhdGljIHZvaWQgbXNtX2F0b21pY193YWl0X2Zv cl9jb21taXRfZG9uZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAo+ICAgCQlzdHJ1Y3QgZHJtX2F0 b21pY19zdGF0ZSAqb2xkX3N0YXRlKQo+ICAgewo+ICAgCXN0cnVjdCBkcm1fY3J0YyAqY3J0YzsK PiAtCXN0cnVjdCBkcm1fY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZTsKPiArCXN0cnVjdCBkcm1fY3J0 Y19zdGF0ZSAqbmV3X2NydGNfc3RhdGU7Cj4gICAJc3RydWN0IG1zbV9kcm1fcHJpdmF0ZSAqcHJp diA9IG9sZF9zdGF0ZS0+ZGV2LT5kZXZfcHJpdmF0ZTsKPiAgIAlzdHJ1Y3QgbXNtX2ttcyAqa21z ID0gcHJpdi0+a21zOwo+ICAgCWludCBpOwo+ICAgCj4gLQlmb3JfZWFjaF9jcnRjX2luX3N0YXRl KG9sZF9zdGF0ZSwgY3J0YywgY3J0Y19zdGF0ZSwgaSkgewo+IC0JCWlmICghY3J0Yy0+c3RhdGUt PmVuYWJsZSkKPiArCWZvcl9lYWNoX25ld19jcnRjX2luX3N0YXRlKG9sZF9zdGF0ZSwgY3J0Yywg bmV3X2NydGNfc3RhdGUsIGkpIHsKPiArCQlpZiAoIW5ld19jcnRjX3N0YXRlLT5hY3RpdmUpCj4g ICAJCQljb250aW51ZTsKPiAgIAo+ICAgCQlrbXMtPmZ1bmNzLT53YWl0X2Zvcl9jcnRjX2NvbW1p dF9kb25lKGttcywgY3J0Yyk7Cj4gQEAgLTE5NSw3ICsxOTUsNyBAQCBpbnQgbXNtX2F0b21pY19j b21taXQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKPiAgIAlzdHJ1Y3QgZHJtX2NydGMgKmNydGM7 Cj4gICAJc3RydWN0IGRybV9jcnRjX3N0YXRlICpjcnRjX3N0YXRlOwo+ICAgCXN0cnVjdCBkcm1f cGxhbmUgKnBsYW5lOwo+IC0Jc3RydWN0IGRybV9wbGFuZV9zdGF0ZSAqcGxhbmVfc3RhdGU7Cj4g KwlzdHJ1Y3QgZHJtX3BsYW5lX3N0YXRlICpvbGRfcGxhbmVfc3RhdGUsICpuZXdfcGxhbmVfc3Rh dGU7Cj4gICAJaW50IGksIHJldDsKPiAgIAo+ICAgCXJldCA9IGRybV9hdG9taWNfaGVscGVyX3By ZXBhcmVfcGxhbmVzKGRldiwgc3RhdGUpOwo+IEBAIC0yMTEsMTkgKzIxMSwxOSBAQCBpbnQgbXNt X2F0b21pY19jb21taXQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKPiAgIAkvKgo+ICAgCSAqIEZp Z3VyZSBvdXQgd2hhdCBjcnRjcyB3ZSBoYXZlOgo+ICAgCSAqLwo+IC0JZm9yX2VhY2hfY3J0Y19p bl9zdGF0ZShzdGF0ZSwgY3J0YywgY3J0Y19zdGF0ZSwgaSkKPiArCWZvcl9lYWNoX25ld19jcnRj X2luX3N0YXRlKHN0YXRlLCBjcnRjLCBjcnRjX3N0YXRlLCBpKQo+ICAgCQljLT5jcnRjX21hc2sg fD0gZHJtX2NydGNfbWFzayhjcnRjKTsKPiAgIAo+ICAgCS8qCj4gICAJICogRmlndXJlIG91dCB3 aGF0IGZlbmNlIHRvIHdhaXQgZm9yOgo+ICAgCSAqLwo+IC0JZm9yX2VhY2hfcGxhbmVfaW5fc3Rh dGUoc3RhdGUsIHBsYW5lLCBwbGFuZV9zdGF0ZSwgaSkgewo+IC0JCWlmICgocGxhbmUtPnN0YXRl LT5mYiAhPSBwbGFuZV9zdGF0ZS0+ZmIpICYmIHBsYW5lX3N0YXRlLT5mYikgewo+IC0JCQlzdHJ1 Y3QgZHJtX2dlbV9vYmplY3QgKm9iaiA9IG1zbV9mcmFtZWJ1ZmZlcl9ibyhwbGFuZV9zdGF0ZS0+ ZmIsIDApOwo+ICsJZm9yX2VhY2hfb2xkbmV3X3BsYW5lX2luX3N0YXRlKHN0YXRlLCBwbGFuZSwg b2xkX3BsYW5lX3N0YXRlLCBuZXdfcGxhbmVfc3RhdGUsIGkpIHsKPiArCQlpZiAoKG5ld19wbGFu ZV9zdGF0ZS0+ZmIgIT0gb2xkX3BsYW5lX3N0YXRlLT5mYikgJiYgbmV3X3BsYW5lX3N0YXRlLT5m Yikgewo+ICsJCQlzdHJ1Y3QgZHJtX2dlbV9vYmplY3QgKm9iaiA9IG1zbV9mcmFtZWJ1ZmZlcl9i byhuZXdfcGxhbmVfc3RhdGUtPmZiLCAwKTsKPiAgIAkJCXN0cnVjdCBtc21fZ2VtX29iamVjdCAq bXNtX29iaiA9IHRvX21zbV9ibyhvYmopOwo+ICAgCQkJc3RydWN0IGRtYV9mZW5jZSAqZmVuY2Ug PSByZXNlcnZhdGlvbl9vYmplY3RfZ2V0X2V4Y2xfcmN1KG1zbV9vYmotPnJlc3YpOwo+ICAgCj4g LQkJCWRybV9hdG9taWNfc2V0X2ZlbmNlX2Zvcl9wbGFuZShwbGFuZV9zdGF0ZSwgZmVuY2UpOwo+ ICsJCQlkcm1fYXRvbWljX3NldF9mZW5jZV9mb3JfcGxhbmUobmV3X3BsYW5lX3N0YXRlLCBmZW5j ZSk7Cj4gICAJCX0KPiAgIAl9Cj4gICAKPiAKCi0tIApRdWFsY29tbSBJbm5vdmF0aW9uIENlbnRl ciwgSW5jLiBpcyBhIG1lbWJlciBvZiBDb2RlIEF1cm9yYSBGb3J1bSwKYSBMaW51eCBGb3VuZGF0 aW9uIENvbGxhYm9yYXRpdmUgUHJvamVjdApfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fXwpGcmVlZHJlbm8gbWFpbGluZyBsaXN0CkZyZWVkcmVub0BsaXN0cy5m cmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0 aW5mby9mcmVlZHJlbm8K