From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Subject: Re: [Intel-gfx] [PATCH 19/19] drm/atomic: Rename atomic oldnew iterator Date: Thu, 3 Nov 2016 19:11:32 +0200 Message-ID: <20161103171132.GI4617@intel.com> References: <1476707838-25253-1-git-send-email-maarten.lankhorst@linux.intel.com> <1476707838-25253-20-git-send-email-maarten.lankhorst@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: <1476707838-25253-20-git-send-email-maarten.lankhorst@linux.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Maarten Lankhorst Cc: intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org List-Id: intel-gfx@lists.freedesktop.org T24gTW9uLCBPY3QgMTcsIDIwMTYgYXQgMDI6Mzc6MThQTSArMDIwMCwgTWFhcnRlbiBMYW5raG9y c3Qgd3JvdGU6Cj4gV2l0aCB0aGUgb2xkIHVzZXJzIG9mIGZvcl9lYWNoX29ial9pbl9zdGF0ZSBn b25lLCB3ZSBjYW4gcmVuYW1lCj4gZm9yX2VhY2hfb2xkbmV3X29ial9pbl9zdGF0ZSBiYWNrIHRv IHRoYXQgbmFtZS4gSXQncyBzbGlnaHRseSBsZXNzCj4gdWdseS4KPiAKPiBTaWduZWQtb2ZmLWJ5 OiBNYWFydGVuIExhbmtob3JzdCA8bWFhcnRlbi5sYW5raG9yc3RAbGludXguaW50ZWwuY29tPgoK U2ltcGxlIHNlZC9jb2NjaW5lbGxlIGpvYiBJIHByZXN1bWUuIEFzc3VtaW5nIHRoZSB0b29sIHdv cmtzClJldmlld2VkLWJ5OiBWaWxsZSBTeXJqw6Rsw6QgPHZpbGxlLnN5cmphbGFAbGludXguaW50 ZWwuY29tPgoKPiAtLS0KPiAgZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWNfaGVscGVyLmMgICAg ICAgICB8IDM0ICsrKysrKysrKysrKysrLS0tLS0tLS0tLS0tLS0tCj4gIGRyaXZlcnMvZ3B1L2Ry bS9kcm1fYmxlbmQuYyAgICAgICAgICAgICAgICAgfCAgNCArKy0tCj4gIGRyaXZlcnMvZ3B1L2Ry bS9pOTE1L2ludGVsX2Rpc3BsYXkuYyAgICAgICAgfCAxNiArKysrKysrLS0tLS0tLQo+ICBkcml2 ZXJzL2dwdS9kcm0vaW14L2lteC1kcm0tY29yZS5jICAgICAgICAgIHwgIDIgKy0KPiAgZHJpdmVy cy9ncHUvZHJtL21zbS9tZHAvbWRwNS9tZHA1X2ttcy5jICAgICB8ICAyICstCj4gIGRyaXZlcnMv Z3B1L2RybS9tc20vbXNtX2F0b21pYy5jICAgICAgICAgICAgfCAgMiArLQo+ICBkcml2ZXJzL2dw dS9kcm0vcm9ja2NoaXAvcm9ja2NoaXBfZHJtX3ZvcC5jIHwgIDIgKy0KPiAgZHJpdmVycy9ncHUv ZHJtL3ZjNC92YzRfa21zLmMgICAgICAgICAgICAgICB8ICAyICstCj4gIGluY2x1ZGUvZHJtL2Ry bV9hdG9taWMuaCAgICAgICAgICAgICAgICAgICAgfCAzMCArKystLS0tLS0tLS0tLS0tLS0tLS0t LS0tCj4gIDkgZmlsZXMgY2hhbmdlZCwgMzUgaW5zZXJ0aW9ucygrKSwgNTkgZGVsZXRpb25zKC0p Cj4gCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljX2hlbHBlci5jIGIv ZHJpdmVycy9ncHUvZHJtL2RybV9hdG9taWNfaGVscGVyLmMKPiBpbmRleCBjOGFiYTQ5M2ZjMTcu LjhmYjk1NTE4MTY0MSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX2F0b21pY19o ZWxwZXIuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1fYXRvbWljX2hlbHBlci5jCj4gQEAg LTI0MSw3ICsyNDEsNyBAQCBzdGVhbF9lbmNvZGVyKHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpz dGF0ZSwKPiAgCXN0cnVjdCBkcm1fY29ubmVjdG9yX3N0YXRlICpvbGRfY29ubmVjdG9yX3N0YXRl LCAqbmV3X2Nvbm5lY3Rvcl9zdGF0ZTsKPiAgCWludCBpOwo+ICAKPiAtCWZvcl9lYWNoX29sZG5l d19jb25uZWN0b3JfaW5fc3RhdGUoc3RhdGUsIGNvbm5lY3Rvciwgb2xkX2Nvbm5lY3Rvcl9zdGF0 ZSwgbmV3X2Nvbm5lY3Rvcl9zdGF0ZSwgaSkgewo+ICsJZm9yX2VhY2hfY29ubmVjdG9yX2luX3N0 YXRlKHN0YXRlLCBjb25uZWN0b3IsIG9sZF9jb25uZWN0b3Jfc3RhdGUsIG5ld19jb25uZWN0b3Jf c3RhdGUsIGkpIHsKPiAgCQlzdHJ1Y3QgZHJtX2NydGMgKmVuY29kZXJfY3J0YzsKPiAgCj4gIAkJ aWYgKG5ld19jb25uZWN0b3Jfc3RhdGUtPmJlc3RfZW5jb2RlciAhPSBlbmNvZGVyKQo+IEBAIC00 ODIsNyArNDgyLDcgQEAgZHJtX2F0b21pY19oZWxwZXJfY2hlY2tfbW9kZXNldChzdHJ1Y3QgZHJt X2RldmljZSAqZGV2LAo+ICAJc3RydWN0IGRybV9jb25uZWN0b3Jfc3RhdGUgKm9sZF9jb25uZWN0 b3Jfc3RhdGUsICpuZXdfY29ubmVjdG9yX3N0YXRlOwo+ICAJaW50IGksIHJldDsKPiAgCj4gLQlm b3JfZWFjaF9vbGRuZXdfY3J0Y19pbl9zdGF0ZShzdGF0ZSwgY3J0Yywgb2xkX2NydGNfc3RhdGUs IG5ld19jcnRjX3N0YXRlLCBpKSB7Cj4gKwlmb3JfZWFjaF9jcnRjX2luX3N0YXRlKHN0YXRlLCBj cnRjLCBvbGRfY3J0Y19zdGF0ZSwgbmV3X2NydGNfc3RhdGUsIGkpIHsKPiAgCQlpZiAoIWRybV9t b2RlX2VxdWFsKCZvbGRfY3J0Y19zdGF0ZS0+bW9kZSwgJm5ld19jcnRjX3N0YXRlLT5tb2RlKSkg ewo+ICAJCQlEUk1fREVCVUdfQVRPTUlDKCJbQ1JUQzolZDolc10gbW9kZSBjaGFuZ2VkXG4iLAo+ ICAJCQkJCSBjcnRjLT5iYXNlLmlkLCBjcnRjLT5uYW1lKTsKPiBAQCAtNTEwLDcgKzUxMCw3IEBA IGRybV9hdG9taWNfaGVscGVyX2NoZWNrX21vZGVzZXQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwK PiAgCWlmIChyZXQpCj4gIAkJcmV0dXJuIHJldDsKPiAgCj4gLQlmb3JfZWFjaF9vbGRuZXdfY29u bmVjdG9yX2luX3N0YXRlKHN0YXRlLCBjb25uZWN0b3IsIG9sZF9jb25uZWN0b3Jfc3RhdGUsIG5l d19jb25uZWN0b3Jfc3RhdGUsIGkpIHsKPiArCWZvcl9lYWNoX2Nvbm5lY3Rvcl9pbl9zdGF0ZShz dGF0ZSwgY29ubmVjdG9yLCBvbGRfY29ubmVjdG9yX3N0YXRlLCBuZXdfY29ubmVjdG9yX3N0YXRl LCBpKSB7Cj4gIAkJLyoKPiAgCQkgKiBUaGlzIG9ubHkgc2V0cyBjcnRjLT5jb25uZWN0b3JzX2No YW5nZWQgZm9yIHJvdXRpbmcgY2hhbmdlcywKPiAgCQkgKiBkcml2ZXJzIG11c3Qgc2V0IGNydGMt PmNvbm5lY3RvcnNfY2hhbmdlZCB0aGVtc2VsdmVzIHdoZW4KPiBAQCAtNTI5LDcgKzUyOSw3IEBA IGRybV9hdG9taWNfaGVscGVyX2NoZWNrX21vZGVzZXQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwK PiAgCSAqIGNvbmZpZ3VyYXRpb24uIFRoaXMgbXVzdCBiZSBkb25lIGJlZm9yZSBjYWxsaW5nIG1v ZGVfZml4dXAgaW4gY2FzZSBhCj4gIAkgKiBjcnRjIG9ubHkgY2hhbmdlZCBpdHMgbW9kZSBidXQg aGFzIHRoZSBzYW1lIHNldCBvZiBjb25uZWN0b3JzLgo+ICAJICovCj4gLQlmb3JfZWFjaF9vbGRu ZXdfY3J0Y19pbl9zdGF0ZShzdGF0ZSwgY3J0Yywgb2xkX2NydGNfc3RhdGUsIG5ld19jcnRjX3N0 YXRlLCBpKSB7Cj4gKwlmb3JfZWFjaF9jcnRjX2luX3N0YXRlKHN0YXRlLCBjcnRjLCBvbGRfY3J0 Y19zdGF0ZSwgbmV3X2NydGNfc3RhdGUsIGkpIHsKPiAgCQlib29sIGhhc19jb25uZWN0b3JzID0K PiAgCQkJISFuZXdfY3J0Y19zdGF0ZS0+Y29ubmVjdG9yX21hc2s7Cj4gIAo+IEBAIC02ODUsNyAr Njg1LDcgQEAgZGlzYWJsZV9vdXRwdXRzKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHN0cnVjdCBk cm1fYXRvbWljX3N0YXRlICpvbGRfc3RhdGUpCj4gIAlzdHJ1Y3QgZHJtX2NydGNfc3RhdGUgKm9s ZF9jcnRjX3N0YXRlLCAqbmV3X2NydGNfc3RhdGU7Cj4gIAlpbnQgaTsKPiAgCj4gLQlmb3JfZWFj aF9vbGRuZXdfY29ubmVjdG9yX2luX3N0YXRlKG9sZF9zdGF0ZSwgY29ubmVjdG9yLCBvbGRfY29u bl9zdGF0ZSwgbmV3X2Nvbm5fc3RhdGUsIGkpIHsKPiArCWZvcl9lYWNoX2Nvbm5lY3Rvcl9pbl9z dGF0ZShvbGRfc3RhdGUsIGNvbm5lY3Rvciwgb2xkX2Nvbm5fc3RhdGUsIG5ld19jb25uX3N0YXRl LCBpKSB7Cj4gIAkJY29uc3Qgc3RydWN0IGRybV9lbmNvZGVyX2hlbHBlcl9mdW5jcyAqZnVuY3M7 Cj4gIAkJc3RydWN0IGRybV9lbmNvZGVyICplbmNvZGVyOwo+ICAKPiBAQCAtNzMzLDcgKzczMyw3 IEBAIGRpc2FibGVfb3V0cHV0cyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBzdHJ1Y3QgZHJtX2F0 b21pY19zdGF0ZSAqb2xkX3N0YXRlKQo+ICAJCWRybV9icmlkZ2VfcG9zdF9kaXNhYmxlKGVuY29k ZXItPmJyaWRnZSk7Cj4gIAl9Cj4gIAo+IC0JZm9yX2VhY2hfb2xkbmV3X2NydGNfaW5fc3RhdGUo b2xkX3N0YXRlLCBjcnRjLCBvbGRfY3J0Y19zdGF0ZSwgbmV3X2NydGNfc3RhdGUsIGkpIHsKPiAr CWZvcl9lYWNoX2NydGNfaW5fc3RhdGUob2xkX3N0YXRlLCBjcnRjLCBvbGRfY3J0Y19zdGF0ZSwg bmV3X2NydGNfc3RhdGUsIGkpIHsKPiAgCQljb25zdCBzdHJ1Y3QgZHJtX2NydGNfaGVscGVyX2Z1 bmNzICpmdW5jczsKPiAgCj4gIAkJLyogU2h1dCBkb3duIGV2ZXJ5dGhpbmcgdGhhdCBuZWVkcyBh IGZ1bGwgbW9kZXNldC4gKi8KPiBAQCAtNzg1LDcgKzc4NSw3IEBAIGRybV9hdG9taWNfaGVscGVy X3VwZGF0ZV9sZWdhY3lfbW9kZXNldF9zdGF0ZShzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAo+ICAJ aW50IGk7Cj4gIAo+ICAJLyogY2xlYXIgb3V0IGV4aXN0aW5nIGxpbmtzIGFuZCB1cGRhdGUgZHBt cyAqLwo+IC0JZm9yX2VhY2hfb2xkbmV3X2Nvbm5lY3Rvcl9pbl9zdGF0ZShvbGRfc3RhdGUsIGNv bm5lY3Rvciwgb2xkX2Nvbm5fc3RhdGUsIG5ld19jb25uX3N0YXRlLCBpKSB7Cj4gKwlmb3JfZWFj aF9jb25uZWN0b3JfaW5fc3RhdGUob2xkX3N0YXRlLCBjb25uZWN0b3IsIG9sZF9jb25uX3N0YXRl LCBuZXdfY29ubl9zdGF0ZSwgaSkgewo+ICAJCWlmIChjb25uZWN0b3ItPmVuY29kZXIpIHsKPiAg CQkJV0FSTl9PTighY29ubmVjdG9yLT5lbmNvZGVyLT5jcnRjKTsKPiAgCj4gQEAgLTEwNzQsNyAr MTA3NCw3IEBAIGJvb2wgZHJtX2F0b21pY19oZWxwZXJfZnJhbWVidWZmZXJfY2hhbmdlZChzdHJ1 Y3QgZHJtX2RldmljZSAqZGV2LAo+ICAJc3RydWN0IGRybV9wbGFuZV9zdGF0ZSAqb2xkX3BsYW5l X3N0YXRlLCAqbmV3X3BsYW5lX3N0YXRlOwo+ICAJaW50IGk7Cj4gIAo+IC0JZm9yX2VhY2hfb2xk bmV3X3BsYW5lX2luX3N0YXRlKG9sZF9zdGF0ZSwgcGxhbmUsIG9sZF9wbGFuZV9zdGF0ZSwgbmV3 X3BsYW5lX3N0YXRlLCBpKSB7Cj4gKwlmb3JfZWFjaF9wbGFuZV9pbl9zdGF0ZShvbGRfc3RhdGUs IHBsYW5lLCBvbGRfcGxhbmVfc3RhdGUsIG5ld19wbGFuZV9zdGF0ZSwgaSkgewo+ICAJCWlmIChu ZXdfcGxhbmVfc3RhdGUtPmNydGMgIT0gY3J0YyAmJgo+ICAJCSAgICBvbGRfcGxhbmVfc3RhdGUt PmNydGMgIT0gY3J0YykKPiAgCQkJY29udGludWU7Cj4gQEAgLTExMTEsNyArMTExMSw3IEBAIGRy bV9hdG9taWNfaGVscGVyX3dhaXRfZm9yX3ZibGFua3Moc3RydWN0IGRybV9kZXZpY2UgKmRldiwK PiAgCWlmIChvbGRfc3RhdGUtPmxlZ2FjeV9jdXJzb3JfdXBkYXRlKQo+ICAJCXJldHVybjsKPiAg Cj4gLQlmb3JfZWFjaF9vbGRuZXdfY3J0Y19pbl9zdGF0ZShvbGRfc3RhdGUsIGNydGMsIG9sZF9j cnRjX3N0YXRlLCBuZXdfY3J0Y19zdGF0ZSwgaSkgewo+ICsJZm9yX2VhY2hfY3J0Y19pbl9zdGF0 ZShvbGRfc3RhdGUsIGNydGMsIG9sZF9jcnRjX3N0YXRlLCBuZXdfY3J0Y19zdGF0ZSwgaSkgewo+ ICAJCS8qIE5vIG9uZSBjYXJlcyBhYm91dCB0aGUgb2xkIHN0YXRlLCBzbyBhYnVzZSBpdCBmb3Ig dHJhY2tpbmcKPiAgCQkgKiBhbmQgc3RvcmUgd2hldGhlciB3ZSBob2xkIGEgdmJsYW5rIHJlZmVy ZW5jZSAoYW5kIHNob3VsZCBkbyBhCj4gIAkJICogdmJsYW5rIHdhaXQpIGluIHRoZSAtPmVuYWJs ZSBib29sZWFuLiAqLwo+IEBAIC0xNDM1LDcgKzE0MzUsNyBAQCBpbnQgZHJtX2F0b21pY19oZWxw ZXJfc2V0dXBfY29tbWl0KHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSwKPiAgCXN0cnVj dCBkcm1fY3J0Y19jb21taXQgKmNvbW1pdDsKPiAgCWludCBpLCByZXQ7Cj4gIAo+IC0JZm9yX2Vh Y2hfb2xkbmV3X2NydGNfaW5fc3RhdGUoc3RhdGUsIGNydGMsIG9sZF9jcnRjX3N0YXRlLCBjcnRj X3N0YXRlLCBpKSB7Cj4gKwlmb3JfZWFjaF9jcnRjX2luX3N0YXRlKHN0YXRlLCBjcnRjLCBvbGRf Y3J0Y19zdGF0ZSwgY3J0Y19zdGF0ZSwgaSkgewo+ICAJCWNvbW1pdCA9IGt6YWxsb2Moc2l6ZW9m KCpjb21taXQpLCBHRlBfS0VSTkVMKTsKPiAgCQlpZiAoIWNvbW1pdCkKPiAgCQkJcmV0dXJuIC1F Tk9NRU07Cj4gQEAgLTE3NTIsNyArMTc1Miw3IEBAIHZvaWQgZHJtX2F0b21pY19oZWxwZXJfY29t bWl0X3BsYW5lcyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAo+ICAJYm9vbCBhY3RpdmVfb25seSA9 IGZsYWdzICYgRFJNX1BMQU5FX0NPTU1JVF9BQ1RJVkVfT05MWTsKPiAgCWJvb2wgbm9fZGlzYWJs ZSA9IGZsYWdzICYgRFJNX1BMQU5FX0NPTU1JVF9OT19ESVNBQkxFX0FGVEVSX01PREVTRVQ7Cj4g IAo+IC0JZm9yX2VhY2hfb2xkbmV3X2NydGNfaW5fc3RhdGUob2xkX3N0YXRlLCBjcnRjLCBvbGRf Y3J0Y19zdGF0ZSwgbmV3X2NydGNfc3RhdGUsIGkpIHsKPiArCWZvcl9lYWNoX2NydGNfaW5fc3Rh dGUob2xkX3N0YXRlLCBjcnRjLCBvbGRfY3J0Y19zdGF0ZSwgbmV3X2NydGNfc3RhdGUsIGkpIHsK PiAgCQljb25zdCBzdHJ1Y3QgZHJtX2NydGNfaGVscGVyX2Z1bmNzICpmdW5jczsKPiAgCj4gIAkJ ZnVuY3MgPSBjcnRjLT5oZWxwZXJfcHJpdmF0ZTsKPiBAQCAtMTc2Niw3ICsxNzY2LDcgQEAgdm9p ZCBkcm1fYXRvbWljX2hlbHBlcl9jb21taXRfcGxhbmVzKHN0cnVjdCBkcm1fZGV2aWNlICpkZXYs Cj4gIAkJZnVuY3MtPmF0b21pY19iZWdpbihjcnRjLCBvbGRfY3J0Y19zdGF0ZSk7Cj4gIAl9Cj4g IAo+IC0JZm9yX2VhY2hfb2xkbmV3X3BsYW5lX2luX3N0YXRlKG9sZF9zdGF0ZSwgcGxhbmUsIG9s ZF9wbGFuZV9zdGF0ZSwgbmV3X3BsYW5lX3N0YXRlLCBpKSB7Cj4gKwlmb3JfZWFjaF9wbGFuZV9p bl9zdGF0ZShvbGRfc3RhdGUsIHBsYW5lLCBvbGRfcGxhbmVfc3RhdGUsIG5ld19wbGFuZV9zdGF0 ZSwgaSkgewo+ICAJCWNvbnN0IHN0cnVjdCBkcm1fcGxhbmVfaGVscGVyX2Z1bmNzICpmdW5jczsK PiAgCQlib29sIGRpc2FibGluZzsKPiAgCj4gQEAgLTE4MDksNyArMTgwOSw3IEBAIHZvaWQgZHJt X2F0b21pY19oZWxwZXJfY29tbWl0X3BsYW5lcyhzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAo+ICAJ CX0KPiAgCX0KPiAgCj4gLQlmb3JfZWFjaF9vbGRuZXdfY3J0Y19pbl9zdGF0ZShvbGRfc3RhdGUs IGNydGMsIG9sZF9jcnRjX3N0YXRlLCBuZXdfY3J0Y19zdGF0ZSwgaSkgewo+ICsJZm9yX2VhY2hf Y3J0Y19pbl9zdGF0ZShvbGRfc3RhdGUsIGNydGMsIG9sZF9jcnRjX3N0YXRlLCBuZXdfY3J0Y19z dGF0ZSwgaSkgewo+ICAJCWNvbnN0IHN0cnVjdCBkcm1fY3J0Y19oZWxwZXJfZnVuY3MgKmZ1bmNz Owo+ICAKPiAgCQlmdW5jcyA9IGNydGMtPmhlbHBlcl9wcml2YXRlOwo+IEBAIC0xOTQ3LDcgKzE5 NDcsNyBAQCB2b2lkIGRybV9hdG9taWNfaGVscGVyX2NsZWFudXBfcGxhbmVzKHN0cnVjdCBkcm1f ZGV2aWNlICpkZXYsCj4gIAlzdHJ1Y3QgZHJtX3BsYW5lX3N0YXRlICpwbGFuZV9zdGF0ZSwgKm5l d19wbGFuZV9zdGF0ZTsKPiAgCWludCBpOwo+ICAKPiAtCWZvcl9lYWNoX29sZG5ld19wbGFuZV9p bl9zdGF0ZShvbGRfc3RhdGUsIHBsYW5lLCBwbGFuZV9zdGF0ZSwgbmV3X3BsYW5lX3N0YXRlLCBp KSB7Cj4gKwlmb3JfZWFjaF9wbGFuZV9pbl9zdGF0ZShvbGRfc3RhdGUsIHBsYW5lLCBwbGFuZV9z dGF0ZSwgbmV3X3BsYW5lX3N0YXRlLCBpKSB7Cj4gIAkJY29uc3Qgc3RydWN0IGRybV9wbGFuZV9o ZWxwZXJfZnVuY3MgKmZ1bmNzOwo+ICAKPiAgCQkvKgo+IEBAIC0yMDMyLDcgKzIwMzIsNyBAQCB2 b2lkIGRybV9hdG9taWNfaGVscGVyX3N3YXBfc3RhdGUoc3RydWN0IGRybV9hdG9taWNfc3RhdGUg KnN0YXRlLAo+ICAJCX0KPiAgCX0KPiAgCj4gLQlmb3JfZWFjaF9vbGRuZXdfY29ubmVjdG9yX2lu X3N0YXRlKHN0YXRlLCBjb25uZWN0b3IsIG9sZF9jb25uX3N0YXRlLCBuZXdfY29ubl9zdGF0ZSwg aSkgewo+ICsJZm9yX2VhY2hfY29ubmVjdG9yX2luX3N0YXRlKHN0YXRlLCBjb25uZWN0b3IsIG9s ZF9jb25uX3N0YXRlLCBuZXdfY29ubl9zdGF0ZSwgaSkgewo+ICAJCW9sZF9jb25uX3N0YXRlLT5z dGF0ZSA9IHN0YXRlOwo+ICAJCW5ld19jb25uX3N0YXRlLT5zdGF0ZSA9IE5VTEw7Cj4gIAo+IEBA IC0yMDQwLDcgKzIwNDAsNyBAQCB2b2lkIGRybV9hdG9taWNfaGVscGVyX3N3YXBfc3RhdGUoc3Ry dWN0IGRybV9hdG9taWNfc3RhdGUgKnN0YXRlLAo+ICAJCWNvbm5lY3Rvci0+c3RhdGUgPSBuZXdf Y29ubl9zdGF0ZTsKPiAgCX0KPiAgCj4gLQlmb3JfZWFjaF9vbGRuZXdfY3J0Y19pbl9zdGF0ZShz dGF0ZSwgY3J0Yywgb2xkX2NydGNfc3RhdGUsIG5ld19jcnRjX3N0YXRlLCBpKSB7Cj4gKwlmb3Jf ZWFjaF9jcnRjX2luX3N0YXRlKHN0YXRlLCBjcnRjLCBvbGRfY3J0Y19zdGF0ZSwgbmV3X2NydGNf c3RhdGUsIGkpIHsKPiAgCQlvbGRfY3J0Y19zdGF0ZS0+c3RhdGUgPSBzdGF0ZTsKPiAgCQluZXdf Y3J0Y19zdGF0ZS0+c3RhdGUgPSBOVUxMOwo+ICAKPiBAQCAtMjA1Nyw3ICsyMDU3LDcgQEAgdm9p ZCBkcm1fYXRvbWljX2hlbHBlcl9zd2FwX3N0YXRlKHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpz dGF0ZSwKPiAgCQl9Cj4gIAl9Cj4gIAo+IC0JZm9yX2VhY2hfb2xkbmV3X3BsYW5lX2luX3N0YXRl KHN0YXRlLCBwbGFuZSwgb2xkX3BsYW5lX3N0YXRlLCBuZXdfcGxhbmVfc3RhdGUsIGkpIHsKPiAr CWZvcl9lYWNoX3BsYW5lX2luX3N0YXRlKHN0YXRlLCBwbGFuZSwgb2xkX3BsYW5lX3N0YXRlLCBu ZXdfcGxhbmVfc3RhdGUsIGkpIHsKPiAgCQlvbGRfcGxhbmVfc3RhdGUtPnN0YXRlID0gc3RhdGU7 Cj4gIAkJbmV3X3BsYW5lX3N0YXRlLT5zdGF0ZSA9IE5VTEw7Cj4gIAo+IGRpZmYgLS1naXQgYS9k cml2ZXJzL2dwdS9kcm0vZHJtX2JsZW5kLmMgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2JsZW5kLmMK PiBpbmRleCA3MGMwM2ViMDMyZmMuLmVkOGUzNjZmMWMwMiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJz L2dwdS9kcm0vZHJtX2JsZW5kLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX2JsZW5kLmMK PiBAQCAtMzcyLDcgKzM3Miw3IEBAIGludCBkcm1fYXRvbWljX25vcm1hbGl6ZV96cG9zKHN0cnVj dCBkcm1fZGV2aWNlICpkZXYsCj4gIAlzdHJ1Y3QgZHJtX3BsYW5lX3N0YXRlICpvbGRfcGxhbmVf c3RhdGUsICpuZXdfcGxhbmVfc3RhdGU7Cj4gIAlpbnQgaSwgcmV0ID0gMDsKPiAgCj4gLQlmb3Jf ZWFjaF9vbGRuZXdfcGxhbmVfaW5fc3RhdGUoc3RhdGUsIHBsYW5lLCBvbGRfcGxhbmVfc3RhdGUs IG5ld19wbGFuZV9zdGF0ZSwgaSkgewo+ICsJZm9yX2VhY2hfcGxhbmVfaW5fc3RhdGUoc3RhdGUs IHBsYW5lLCBvbGRfcGxhbmVfc3RhdGUsIG5ld19wbGFuZV9zdGF0ZSwgaSkgewo+ICAJCWNydGMg PSBuZXdfcGxhbmVfc3RhdGUtPmNydGM7Cj4gIAkJaWYgKCFjcnRjKQo+ICAJCQljb250aW51ZTsK PiBAQCAtMzgzLDcgKzM4Myw3IEBAIGludCBkcm1fYXRvbWljX25vcm1hbGl6ZV96cG9zKHN0cnVj dCBkcm1fZGV2aWNlICpkZXYsCj4gIAkJfQo+ICAJfQo+ICAKPiAtCWZvcl9lYWNoX29sZG5ld19j cnRjX2luX3N0YXRlKHN0YXRlLCBjcnRjLCBvbGRfY3J0Y19zdGF0ZSwgbmV3X2NydGNfc3RhdGUs IGkpIHsKPiArCWZvcl9lYWNoX2NydGNfaW5fc3RhdGUoc3RhdGUsIGNydGMsIG9sZF9jcnRjX3N0 YXRlLCBuZXdfY3J0Y19zdGF0ZSwgaSkgewo+ICAJCWlmIChvbGRfY3J0Y19zdGF0ZS0+cGxhbmVf bWFzayAhPSBuZXdfY3J0Y19zdGF0ZS0+cGxhbmVfbWFzayB8fAo+ICAJCSAgICBuZXdfY3J0Y19z dGF0ZS0+enBvc19jaGFuZ2VkKSB7Cj4gIAkJCXJldCA9IGRybV9hdG9taWNfaGVscGVyX2NydGNf bm9ybWFsaXplX3pwb3MoY3J0YywKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfZGlzcGxheS5jIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCj4g aW5kZXggZDMxMGFiYWNlODZhLi5iYWMwZmMzNDJmOGQgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9n cHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL2k5MTUv aW50ZWxfZGlzcGxheS5jCj4gQEAgLTEzNzYwLDcgKzEzNzYwLDcgQEAgc3RhdGljIHZvaWQgaW50 ZWxfbW9kZXNldF9jbGVhcl9wbGxzKHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSkKPiAg CWlmICghZGV2X3ByaXYtPmRpc3BsYXkuY3J0Y19jb21wdXRlX2Nsb2NrKQo+ICAJCXJldHVybjsK PiAgCj4gLQlmb3JfZWFjaF9vbGRuZXdfY3J0Y19pbl9zdGF0ZShzdGF0ZSwgY3J0Yywgb2xkX2Ny dGNfc3RhdGUsIG5ld19jcnRjX3N0YXRlLCBpKSB7Cj4gKwlmb3JfZWFjaF9jcnRjX2luX3N0YXRl KHN0YXRlLCBjcnRjLCBvbGRfY3J0Y19zdGF0ZSwgbmV3X2NydGNfc3RhdGUsIGkpIHsKPiAgCQlz dHJ1Y3QgaW50ZWxfY3J0YyAqaW50ZWxfY3J0YyA9IHRvX2ludGVsX2NydGMoY3J0Yyk7Cj4gIAkJ c3RydWN0IGludGVsX3NoYXJlZF9kcGxsICpvbGRfZHBsbCA9Cj4gIAkJCXRvX2ludGVsX2NydGNf c3RhdGUob2xkX2NydGNfc3RhdGUpLT5zaGFyZWRfZHBsbDsKPiBAQCAtMTM4OTAsNyArMTM4OTAs NyBAQCBzdGF0aWMgaW50IGludGVsX21vZGVzZXRfY2hlY2tzKHN0cnVjdCBkcm1fYXRvbWljX3N0 YXRlICpzdGF0ZSkKPiAgCWludGVsX3N0YXRlLT5tb2Rlc2V0ID0gdHJ1ZTsKPiAgCWludGVsX3N0 YXRlLT5hY3RpdmVfY3J0Y3MgPSBkZXZfcHJpdi0+YWN0aXZlX2NydGNzOwo+ICAKPiAtCWZvcl9l YWNoX29sZG5ld19jcnRjX2luX3N0YXRlKHN0YXRlLCBjcnRjLCBvbGRfY3J0Y19zdGF0ZSwgbmV3 X2NydGNfc3RhdGUsIGkpIHsKPiArCWZvcl9lYWNoX2NydGNfaW5fc3RhdGUoc3RhdGUsIGNydGMs IG9sZF9jcnRjX3N0YXRlLCBuZXdfY3J0Y19zdGF0ZSwgaSkgewo+ICAJCWlmIChuZXdfY3J0Y19z dGF0ZS0+YWN0aXZlKQo+ICAJCQlpbnRlbF9zdGF0ZS0+YWN0aXZlX2NydGNzIHw9IDEgPDwgaTsK PiAgCQllbHNlCj4gQEAgLTEzOTczLDcgKzEzOTczLDcgQEAgc3RhdGljIGludCBpbnRlbF9hdG9t aWNfY2hlY2soc3RydWN0IGRybV9kZXZpY2UgKmRldiwKPiAgCWlmIChyZXQpCj4gIAkJcmV0dXJu IHJldDsKPiAgCj4gLQlmb3JfZWFjaF9vbGRuZXdfY3J0Y19pbl9zdGF0ZShzdGF0ZSwgY3J0Yywg b2xkX2NydGNfc3RhdGUsIGNydGNfc3RhdGUsIGkpIHsKPiArCWZvcl9lYWNoX2NydGNfaW5fc3Rh dGUoc3RhdGUsIGNydGMsIG9sZF9jcnRjX3N0YXRlLCBjcnRjX3N0YXRlLCBpKSB7Cj4gIAkJc3Ry dWN0IGludGVsX2NydGNfc3RhdGUgKnBpcGVfY29uZmlnID0KPiAgCQkJdG9faW50ZWxfY3J0Y19z dGF0ZShjcnRjX3N0YXRlKTsKPiAgCj4gQEAgLTE0MjA4LDcgKzE0MjA4LDcgQEAgc3RhdGljIHZv aWQgaW50ZWxfdXBkYXRlX2NydGNzKHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSwKPiAg CXN0cnVjdCBkcm1fY3J0Y19zdGF0ZSAqb2xkX2NydGNfc3RhdGUsICpuZXdfY3J0Y19zdGF0ZTsK PiAgCWludCBpOwo+ICAKPiAtCWZvcl9lYWNoX29sZG5ld19jcnRjX2luX3N0YXRlKHN0YXRlLCBj cnRjLCBvbGRfY3J0Y19zdGF0ZSwgbmV3X2NydGNfc3RhdGUsIGkpIHsKPiArCWZvcl9lYWNoX2Ny dGNfaW5fc3RhdGUoc3RhdGUsIGNydGMsIG9sZF9jcnRjX3N0YXRlLCBuZXdfY3J0Y19zdGF0ZSwg aSkgewo+ICAJCWlmICghbmV3X2NydGNfc3RhdGUtPmFjdGl2ZSkKPiAgCQkJY29udGludWU7Cj4g IAo+IEBAIC0xNDI0MSw3ICsxNDI0MSw3IEBAIHN0YXRpYyB2b2lkIHNrbF91cGRhdGVfY3J0Y3Mo c3RydWN0IGRybV9hdG9taWNfc3RhdGUgKnN0YXRlLAo+ICAJCWludCBpOwo+ICAJCXByb2dyZXNz ID0gZmFsc2U7Cj4gIAo+IC0JCWZvcl9lYWNoX29sZG5ld19jcnRjX2luX3N0YXRlKHN0YXRlLCBj cnRjLCBvbGRfY3J0Y19zdGF0ZSwgbmV3X2NydGNfc3RhdGUsIGkpIHsKPiArCQlmb3JfZWFjaF9j cnRjX2luX3N0YXRlKHN0YXRlLCBjcnRjLCBvbGRfY3J0Y19zdGF0ZSwgbmV3X2NydGNfc3RhdGUs IGkpIHsKPiAgCQkJYm9vbCB2Ymxfd2FpdCA9IGZhbHNlOwo+ICAJCQl1bnNpZ25lZCBpbnQgY21h c2sgPSBkcm1fY3J0Y19tYXNrKGNydGMpOwo+ICAJCQlwaXBlID0gdG9faW50ZWxfY3J0YyhjcnRj KS0+cGlwZTsKPiBAQCAtMTQzMTYsNyArMTQzMTYsNyBAQCBzdGF0aWMgdm9pZCBpbnRlbF9hdG9t aWNfY29tbWl0X3RhaWwoc3RydWN0IGRybV9hdG9taWNfc3RhdGUgKnN0YXRlKQo+ICAJCWludGVs X2Rpc3BsYXlfcG93ZXJfZ2V0KGRldl9wcml2LCBQT1dFUl9ET01BSU5fTU9ERVNFVCk7Cj4gIAl9 Cj4gIAo+IC0JZm9yX2VhY2hfb2xkbmV3X2NydGNfaW5fc3RhdGUoc3RhdGUsIGNydGMsIG9sZF9j cnRjX3N0YXRlLCBuZXdfY3J0Y19zdGF0ZSwgaSkgewo+ICsJZm9yX2VhY2hfY3J0Y19pbl9zdGF0 ZShzdGF0ZSwgY3J0Yywgb2xkX2NydGNfc3RhdGUsIG5ld19jcnRjX3N0YXRlLCBpKSB7Cj4gIAkJ c3RydWN0IGludGVsX2NydGMgKmludGVsX2NydGMgPSB0b19pbnRlbF9jcnRjKGNydGMpOwo+ICAK PiAgCQlpZiAobmVlZHNfbW9kZXNldChuZXdfY3J0Y19zdGF0ZSkgfHwKPiBAQCAtMTQ0MTgsNyAr MTQ0MTgsNyBAQCBzdGF0aWMgdm9pZCBpbnRlbF9hdG9taWNfY29tbWl0X3RhaWwoc3RydWN0IGRy bV9hdG9taWNfc3RhdGUgKnN0YXRlKQo+ICAJCQlkZXZfcHJpdi0+ZGlzcGxheS5vcHRpbWl6ZV93 YXRlcm1hcmtzKGludGVsX2NzdGF0ZSk7Cj4gIAl9Cj4gIAo+IC0JZm9yX2VhY2hfb2xkbmV3X2Ny dGNfaW5fc3RhdGUoc3RhdGUsIGNydGMsIG9sZF9jcnRjX3N0YXRlLCBuZXdfY3J0Y19zdGF0ZSwg aSkgewo+ICsJZm9yX2VhY2hfY3J0Y19pbl9zdGF0ZShzdGF0ZSwgY3J0Yywgb2xkX2NydGNfc3Rh dGUsIG5ld19jcnRjX3N0YXRlLCBpKSB7Cj4gIAkJaW50ZWxfcG9zdF9wbGFuZV91cGRhdGUodG9f aW50ZWxfY3J0Y19zdGF0ZShvbGRfY3J0Y19zdGF0ZSkpOwo+ICAKPiAgCQlpZiAocHV0X2RvbWFp bnNbaV0pCj4gQEAgLTE0NDcyLDcgKzE0NDcyLDcgQEAgc3RhdGljIHZvaWQgaW50ZWxfYXRvbWlj X3RyYWNrX2ZicyhzdHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUpCj4gIAlzdHJ1Y3QgZHJt X3BsYW5lICpwbGFuZTsKPiAgCWludCBpOwo+ICAKPiAtCWZvcl9lYWNoX29sZG5ld19wbGFuZV9p bl9zdGF0ZShzdGF0ZSwgcGxhbmUsIG9sZF9wbGFuZV9zdGF0ZSwgbmV3X3BsYW5lX3N0YXRlLCBp KQo+ICsJZm9yX2VhY2hfcGxhbmVfaW5fc3RhdGUoc3RhdGUsIHBsYW5lLCBvbGRfcGxhbmVfc3Rh dGUsIG5ld19wbGFuZV9zdGF0ZSwgaSkKPiAgCQlpOTE1X2dlbV90cmFja19mYihpbnRlbF9mYl9v Ymoob2xkX3BsYW5lX3N0YXRlLT5mYiksCj4gIAkJCQkgIGludGVsX2ZiX29iaihuZXdfcGxhbmVf c3RhdGUtPmZiKSwKPiAgCQkJCSAgdG9faW50ZWxfcGxhbmUocGxhbmUpLT5mcm9udGJ1ZmZlcl9i aXQpOwo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaW14L2lteC1kcm0tY29yZS5jIGIv ZHJpdmVycy9ncHUvZHJtL2lteC9pbXgtZHJtLWNvcmUuYwo+IGluZGV4IGQ0ODRhZjc3MzQ2MC4u NDhiZTE0ODNiMjYzIDEwMDY0NAo+IC0tLSBhL2RyaXZlcnMvZ3B1L2RybS9pbXgvaW14LWRybS1j b3JlLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaW14L2lteC1kcm0tY29yZS5jCj4gQEAgLTE2 NCw3ICsxNjQsNyBAQCBzdGF0aWMgaW50IGlteF9kcm1fYXRvbWljX2NvbW1pdChzdHJ1Y3QgZHJt X2RldmljZSAqZGV2LAo+ICAJICogSWYgdGhlIHBsYW5lIGZiIGhhcyBhbiBkbWEtYnVmIGF0dGFj aGVkLCBmaXNoIG91dCB0aGUgZXhjbHVzaXZlCj4gIAkgKiBmZW5jZSBmb3IgdGhlIGF0b21pYyBo ZWxwZXIgdG8gd2FpdCBvbi4KPiAgCSAqLwo+IC0JZm9yX2VhY2hfb2xkbmV3X3BsYW5lX2luX3N0 YXRlKHN0YXRlLCBwbGFuZSwgb2xkX3BsYW5lX3N0YXRlLCBuZXdfcGxhbmVfc3RhdGUsIGkpIHsK PiArCWZvcl9lYWNoX3BsYW5lX2luX3N0YXRlKHN0YXRlLCBwbGFuZSwgb2xkX3BsYW5lX3N0YXRl LCBuZXdfcGxhbmVfc3RhdGUsIGkpIHsKPiAgCQlpZiAoKG9sZF9wbGFuZV9zdGF0ZS0+ZmIgIT0g bmV3X3BsYW5lX3N0YXRlLT5mYikgJiYgbmV3X3BsYW5lX3N0YXRlLT5mYikgewo+ICAJCQlkbWFf YnVmID0gZHJtX2ZiX2NtYV9nZXRfZ2VtX29iaihuZXdfcGxhbmVfc3RhdGUtPmZiLAo+ICAJCQkJ CQkJIDApLT5iYXNlLmRtYV9idWY7Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9tc20v bWRwL21kcDUvbWRwNV9rbXMuYyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vbWRwL21kcDUvbWRwNV9r bXMuYwo+IGluZGV4IDdjZmViMDQ1NTAzOS4uMzk4ZTJlOWE0MTM1IDEwMDY0NAo+IC0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9tc20vbWRwL21kcDUvbWRwNV9rbXMuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1 L2RybS9tc20vbWRwL21kcDUvbWRwNV9rbXMuYwo+IEBAIC04NCw3ICs4NCw3IEBAIHN0YXRpYyB2 b2lkIG1kcDVfY29tcGxldGVfY29tbWl0KHN0cnVjdCBtc21fa21zICprbXMsIHN0cnVjdCBkcm1f YXRvbWljX3N0YXRlICpzCj4gIAlzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZTsKPiAgCXN0cnVjdCBk cm1fcGxhbmVfc3RhdGUgKm9sZF9zdGF0ZSwgKm5ld19zdGF0ZTsKPiAgCj4gLQlmb3JfZWFjaF9v bGRuZXdfcGxhbmVfaW5fc3RhdGUoc3RhdGUsIHBsYW5lLCBvbGRfc3RhdGUsIG5ld19zdGF0ZSwg aSkKPiArCWZvcl9lYWNoX3BsYW5lX2luX3N0YXRlKHN0YXRlLCBwbGFuZSwgb2xkX3N0YXRlLCBu ZXdfc3RhdGUsIGkpCj4gIAkJbWRwNV9wbGFuZV9jb21wbGV0ZV9jb21taXQocGxhbmUsIG9sZF9z dGF0ZSwgbmV3X3N0YXRlKTsKPiAgCj4gIAltZHA1X2Rpc2FibGUobWRwNV9rbXMpOwo+IGRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbXNtL21zbV9hdG9taWMuYyBiL2RyaXZlcnMvZ3B1L2Ry bS9tc20vbXNtX2F0b21pYy5jCj4gaW5kZXggMzMzYzM3OWU2NTYxLi41NTA4ZTNhMmU0ZWYgMTAw NjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL21zbS9tc21fYXRvbWljLmMKPiArKysgYi9kcml2 ZXJzL2dwdS9kcm0vbXNtL21zbV9hdG9taWMuYwo+IEBAIC0yMTMsNyArMjEzLDcgQEAgaW50IG1z bV9hdG9taWNfY29tbWl0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCj4gIAkvKgo+ICAJICogRmln dXJlIG91dCB3aGF0IGZlbmNlIHRvIHdhaXQgZm9yOgo+ICAJICovCj4gLQlmb3JfZWFjaF9vbGRu ZXdfcGxhbmVfaW5fc3RhdGUoc3RhdGUsIHBsYW5lLCBvbGRfcGxhbmVfc3RhdGUsIG5ld19wbGFu ZV9zdGF0ZSwgaSkgewo+ICsJZm9yX2VhY2hfcGxhbmVfaW5fc3RhdGUoc3RhdGUsIHBsYW5lLCBv bGRfcGxhbmVfc3RhdGUsIG5ld19wbGFuZV9zdGF0ZSwgaSkgewo+ICAJCWlmIChvbGRfcGxhbmVf c3RhdGUtPmZiICE9IG5ld19wbGFuZV9zdGF0ZS0+ZmIgJiYgbmV3X3BsYW5lX3N0YXRlLT5mYikg ewo+ICAJCQlzdHJ1Y3QgZHJtX2dlbV9vYmplY3QgKm9iaiA9IG1zbV9mcmFtZWJ1ZmZlcl9ibyhu ZXdfcGxhbmVfc3RhdGUtPmZiLCAwKTsKPiAgCQkJc3RydWN0IG1zbV9nZW1fb2JqZWN0ICptc21f b2JqID0gdG9fbXNtX2JvKG9iaik7Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9yb2Nr Y2hpcC9yb2NrY2hpcF9kcm1fdm9wLmMgYi9kcml2ZXJzL2dwdS9kcm0vcm9ja2NoaXAvcm9ja2No aXBfZHJtX3ZvcC5jCj4gaW5kZXggNWMwNjI1ZTVkY2ExLi43YTA4MDZjMjQ3NzYgMTAwNjQ0Cj4g LS0tIGEvZHJpdmVycy9ncHUvZHJtL3JvY2tjaGlwL3JvY2tjaGlwX2RybV92b3AuYwo+ICsrKyBi L2RyaXZlcnMvZ3B1L2RybS9yb2NrY2hpcC9yb2NrY2hpcF9kcm1fdm9wLmMKPiBAQCAtMTA0MCw3 ICsxMDQwLDcgQEAgc3RhdGljIHZvaWQgdm9wX2NydGNfYXRvbWljX2ZsdXNoKHN0cnVjdCBkcm1f Y3J0YyAqY3J0YywKPiAgCX0KPiAgCXNwaW5fdW5sb2NrX2lycSgmY3J0Yy0+ZGV2LT5ldmVudF9s b2NrKTsKPiAgCj4gLQlmb3JfZWFjaF9vbGRuZXdfcGxhbmVfaW5fc3RhdGUob2xkX3N0YXRlLCBw bGFuZSwgb2xkX3BsYW5lX3N0YXRlLCBuZXdfcGxhbmVfc3RhdGUsIGkpIHsKPiArCWZvcl9lYWNo X3BsYW5lX2luX3N0YXRlKG9sZF9zdGF0ZSwgcGxhbmUsIG9sZF9wbGFuZV9zdGF0ZSwgbmV3X3Bs YW5lX3N0YXRlLCBpKSB7Cj4gIAkJaWYgKCFvbGRfcGxhbmVfc3RhdGUtPmZiKQo+ICAJCQljb250 aW51ZTsKPiAgCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS92YzQvdmM0X2ttcy5jIGIv ZHJpdmVycy9ncHUvZHJtL3ZjNC92YzRfa21zLmMKPiBpbmRleCA3NmNjOWIzNzQyMTUuLmQ5MzI5 YTkxODAxNCAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vdmM0L3ZjNF9rbXMuYwo+ICsr KyBiL2RyaXZlcnMvZ3B1L2RybS92YzQvdmM0X2ttcy5jCj4gQEAgLTEzOSw3ICsxMzksNyBAQCBz dGF0aWMgaW50IHZjNF9hdG9taWNfY29tbWl0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCj4gIAkJ cmV0dXJuIHJldDsKPiAgCX0KPiAgCj4gLQlmb3JfZWFjaF9vbGRuZXdfcGxhbmVfaW5fc3RhdGUo c3RhdGUsIHBsYW5lLCBvbGRfc3RhdGUsIG5ld19zdGF0ZSwgaSkgewo+ICsJZm9yX2VhY2hfcGxh bmVfaW5fc3RhdGUoc3RhdGUsIHBsYW5lLCBvbGRfc3RhdGUsIG5ld19zdGF0ZSwgaSkgewo+ICAJ CWlmIChvbGRfc3RhdGUtPmZiICE9IG5ld19zdGF0ZS0+ZmIgJiYgbmV3X3N0YXRlLT5mYikgewo+ ICAJCQlzdHJ1Y3QgZHJtX2dlbV9jbWFfb2JqZWN0ICpjbWFfYm8gPQo+ICAJCQkJZHJtX2ZiX2Nt YV9nZXRfZ2VtX29iaihuZXdfc3RhdGUtPmZiLCAwKTsKPiBkaWZmIC0tZ2l0IGEvaW5jbHVkZS9k cm0vZHJtX2F0b21pYy5oIGIvaW5jbHVkZS9kcm0vZHJtX2F0b21pYy5oCj4gaW5kZXggMDlmYjZi MzE2Y2E5Li5jMDJlYTg1ZGU5Y2EgMTAwNjQ0Cj4gLS0tIGEvaW5jbHVkZS9kcm0vZHJtX2F0b21p Yy5oCj4gKysrIGIvaW5jbHVkZS9kcm0vZHJtX2F0b21pYy5oCj4gQEAgLTM2NCwxNSArMzY0LDcg QEAgaW50IF9fbXVzdF9jaGVjayBkcm1fYXRvbWljX2NoZWNrX29ubHkoc3RydWN0IGRybV9hdG9t aWNfc3RhdGUgKnN0YXRlKTsKPiAgaW50IF9fbXVzdF9jaGVjayBkcm1fYXRvbWljX2NvbW1pdChz dHJ1Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUpOwo+ICBpbnQgX19tdXN0X2NoZWNrIGRybV9h dG9taWNfbm9uYmxvY2tpbmdfY29tbWl0KHN0cnVjdCBkcm1fYXRvbWljX3N0YXRlICpzdGF0ZSk7 Cj4gIAo+IC0jZGVmaW5lIGZvcl9lYWNoX2Nvbm5lY3Rvcl9pbl9zdGF0ZShfX3N0YXRlLCBjb25u ZWN0b3IsIGNvbm5lY3Rvcl9zdGF0ZSwgX19pKSBcCj4gLQlmb3IgKChfX2kpID0gMDsJCQkJCQkJ XAo+IC0JICAgICAoX19pKSA8IChfX3N0YXRlKS0+bnVtX2Nvbm5lY3RvciAmJgkJCQlcCj4gLQkg ICAgICgoY29ubmVjdG9yKSA9IChfX3N0YXRlKS0+Y29ubmVjdG9yc1tfX2ldLnB0ciwJCQlcCj4g LQkgICAgIChjb25uZWN0b3Jfc3RhdGUpID0gKF9fc3RhdGUpLT5jb25uZWN0b3JzW19faV0uc3Rh dGUsIDEpOyAJXAo+IC0JICAgICAoX19pKSsrKQkJCQkJCQlcCj4gLQkJZm9yX2VhY2hfaWYgKGNv bm5lY3RvcikKPiAtCj4gLSNkZWZpbmUgZm9yX2VhY2hfb2xkbmV3X2Nvbm5lY3Rvcl9pbl9zdGF0 ZShfX3N0YXRlLCBjb25uZWN0b3IsIG9sZF9jb25uZWN0b3Jfc3RhdGUsIG5ld19jb25uZWN0b3Jf c3RhdGUsIF9faSkgXAo+ICsjZGVmaW5lIGZvcl9lYWNoX2Nvbm5lY3Rvcl9pbl9zdGF0ZShfX3N0 YXRlLCBjb25uZWN0b3IsIG9sZF9jb25uZWN0b3Jfc3RhdGUsIG5ld19jb25uZWN0b3Jfc3RhdGUs IF9faSkgXAo+ICAJZm9yICgoX19pKSA9IDA7CQkJCQkJCQlcCj4gIAkgICAgIChfX2kpIDwgKF9f c3RhdGUpLT5udW1fY29ubmVjdG9yICYmCQkJCVwKPiAgCSAgICAgKChjb25uZWN0b3IpID0gKF9f c3RhdGUpLT5jb25uZWN0b3JzW19faV0ucHRyLAkJCVwKPiBAQCAtMzk3LDE1ICszODksNyBAQCBp bnQgX19tdXN0X2NoZWNrIGRybV9hdG9taWNfbm9uYmxvY2tpbmdfY29tbWl0KHN0cnVjdCBkcm1f YXRvbWljX3N0YXRlICpzdGF0ZSk7Cj4gIAkgICAgIChfX2kpKyspCQkJCQkJCVwKPiAgCQlmb3Jf ZWFjaF9pZiAoY29ubmVjdG9yKQo+ICAKPiAtI2RlZmluZSBmb3JfZWFjaF9jcnRjX2luX3N0YXRl KF9fc3RhdGUsIGNydGMsIGNydGNfc3RhdGUsIF9faSkJXAo+IC0JZm9yICgoX19pKSA9IDA7CQkJ CQkJXAo+IC0JICAgICAoX19pKSA8IChfX3N0YXRlKS0+ZGV2LT5tb2RlX2NvbmZpZy5udW1fY3J0 YyAmJglcCj4gLQkgICAgICgoY3J0YykgPSAoX19zdGF0ZSktPmNydGNzW19faV0ucHRyLAkJCVwK PiAtCSAgICAgKGNydGNfc3RhdGUpID0gKF9fc3RhdGUpLT5jcnRjc1tfX2ldLnN0YXRlLCAxKTsJ XAo+IC0JICAgICAoX19pKSsrKQkJCQkJCVwKPiAtCQlmb3JfZWFjaF9pZiAoY3J0Y19zdGF0ZSkK PiAtCj4gLSNkZWZpbmUgZm9yX2VhY2hfb2xkbmV3X2NydGNfaW5fc3RhdGUoX19zdGF0ZSwgY3J0 Yywgb2xkX2NydGNfc3RhdGUsIG5ld19jcnRjX3N0YXRlLCBfX2kpIFwKPiArI2RlZmluZSBmb3Jf ZWFjaF9jcnRjX2luX3N0YXRlKF9fc3RhdGUsIGNydGMsIG9sZF9jcnRjX3N0YXRlLCBuZXdfY3J0 Y19zdGF0ZSwgX19pKSBcCj4gIAlmb3IgKChfX2kpID0gMDsJCQkJCQkJXAo+ICAJICAgICAoX19p KSA8IChfX3N0YXRlKS0+ZGV2LT5tb2RlX2NvbmZpZy5udW1fY3J0YyAmJgkJXAo+ICAJICAgICAo KGNydGMpID0gKF9fc3RhdGUpLT5jcnRjc1tfX2ldLnB0ciwJCQlcCj4gQEAgLTQzMCwxNSArNDE0 LDcgQEAgaW50IF9fbXVzdF9jaGVjayBkcm1fYXRvbWljX25vbmJsb2NraW5nX2NvbW1pdChzdHJ1 Y3QgZHJtX2F0b21pY19zdGF0ZSAqc3RhdGUpOwo+ICAJICAgICAoX19pKSsrKQkJCQkJCQlcCj4g IAkJZm9yX2VhY2hfaWYgKGNydGMpCj4gIAo+IC0jZGVmaW5lIGZvcl9lYWNoX3BsYW5lX2luX3N0 YXRlKF9fc3RhdGUsIHBsYW5lLCBwbGFuZV9zdGF0ZSwgX19pKQkJXAo+IC0JZm9yICgoX19pKSA9 IDA7CQkJCQkJCVwKPiAtCSAgICAgKF9faSkgPCAoX19zdGF0ZSktPmRldi0+bW9kZV9jb25maWcu bnVtX3RvdGFsX3BsYW5lICYmCVwKPiAtCSAgICAgKChwbGFuZSkgPSAoX19zdGF0ZSktPnBsYW5l c1tfX2ldLnB0ciwJCQkJXAo+IC0JICAgICAocGxhbmVfc3RhdGUpID0gKF9fc3RhdGUpLT5wbGFu ZXNbX19pXS5zdGF0ZSwgMSk7CQlcCj4gLQkgICAgIChfX2kpKyspCQkJCQkJCVwKPiAtCQlmb3Jf ZWFjaF9pZiAocGxhbmVfc3RhdGUpCj4gLQo+IC0jZGVmaW5lIGZvcl9lYWNoX29sZG5ld19wbGFu ZV9pbl9zdGF0ZShfX3N0YXRlLCBwbGFuZSwgb2xkX3BsYW5lX3N0YXRlLCBuZXdfcGxhbmVfc3Rh dGUsIF9faSkgXAo+ICsjZGVmaW5lIGZvcl9lYWNoX3BsYW5lX2luX3N0YXRlKF9fc3RhdGUsIHBs YW5lLCBvbGRfcGxhbmVfc3RhdGUsIG5ld19wbGFuZV9zdGF0ZSwgX19pKSBcCj4gIAlmb3IgKChf X2kpID0gMDsJCQkJCQkJXAo+ICAJICAgICAoX19pKSA8IChfX3N0YXRlKS0+ZGV2LT5tb2RlX2Nv bmZpZy5udW1fdG90YWxfcGxhbmUgJiYJXAo+ICAJICAgICAoKHBsYW5lKSA9IChfX3N0YXRlKS0+ cGxhbmVzW19faV0ucHRyLAkJCVwKPiAtLSAKPiAyLjcuNAo+IAo+IF9fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCj4gSW50ZWwtZ2Z4IG1haWxpbmcgbGlzdAo+ IEludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKPiBodHRwczovL2xpc3RzLmZyZWVkZXNr dG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2ludGVsLWdmeAoKLS0gClZpbGxlIFN5cmrDpGzDpApJ bnRlbCBPVEMKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18K ZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0 dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg==