From mboxrd@z Thu Jan 1 00:00:00 1970 From: Laurent Pinchart Subject: Re: [PATCH 4/5] drm: Check crtc_state->enable rather than crtc->enabled in drm_plane_helper_check_state() Date: Thu, 23 Nov 2017 11:52:20 +0200 Message-ID: <6504633.rNH5mcrvjz@avalon> References: <20171101182920.14386-1-ville.syrjala@linux.intel.com> <20171101182920.14386-5-ville.syrjala@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from galahad.ideasonboard.com (galahad.ideasonboard.com [IPv6:2001:4b98:dc2:45:216:3eff:febb:480d]) by gabe.freedesktop.org (Postfix) with ESMTPS id 53E9A6E249 for ; Thu, 23 Nov 2017 09:52:22 +0000 (UTC) In-Reply-To: <20171101182920.14386-5-ville.syrjala@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: dri-devel@lists.freedesktop.org Cc: intel-gfx@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org SGkgVmlsbGUsCgpUaGFuayB5b3UgZm9yIHRoZSBwYXRjaC4KCk9uIFdlZG5lc2RheSwgMSBOb3Zl bWJlciAyMDE3IDIwOjI5OjE5IEVFVCBWaWxsZSBTeXJqYWxhIHdyb3RlOgo+IEZyb206IFZpbGxl IFN5cmrDpGzDpCA8dmlsbGUuc3lyamFsYUBsaW51eC5pbnRlbC5jb20+Cj4gCj4gZHJtX3BsYW5l X2hlbHBlcl9jaGVja19zdGF0ZSgpIGlzIHN1cHBvc2VkIHRvIGRvIHRoaW5ncyB0aGUgYXRvbWlj IHdheSwKPiBzbyBpdCBzaG91bGQgbm90IGJlIGluc3BlY3RpbmcgY3J0Yy0+ZW5hYmxlZC4gUmF0 aGVyIHdlIHNob3VsZCBiZQo+IGxvb2tpbmcgYXQgY3J0Y19zdGF0ZS0+ZW5hYmxlLgo+IAo+IFdl IGhhdmUgYSBzbGlnaHQgY29tcGxpY2F0aW9uIGR1ZSB0byBkcm1fcGxhbmVfaGVscGVyX2NoZWNr X3VwZGF0ZSgpCj4gcmV1c2luZyBkcm1fcGxhbmVfaGVscGVyX2NoZWNrX3N0YXRlKCkgZm9yIG5v bi1hdG9taWMgZHJpdmVycy4gVGh1cwo+IHdlJ2xsIGhhdmUgdG8gcGFzcyB0aGUgY3J0Y19zdGF0 ZSBpbiBtYW5hbGx5IGFuZCBjb25zdHJ1Y3QgYSBmYWtlCj4gY3J0Y19zdGF0ZSBpbiBkcm1fcGxh bmVfaGVscGVyX2NoZWNrX3VwZGF0ZSgpLgoKVGhlIG9ubHkgdXNlciBvZiBkcm1fcGxhbmVfaGVs cGVyX2NoZWNrX3VwZGF0ZSgpIGFwYXJ0IGZyb20gdm13Z2Z4IHdoaWNoIHlvdSAKY29udmVydGVk IGluIHBhdGNoIDIvNSBpcyB0aGUgYXJtYWRhIGRyaXZlci4gSXQgd291bGQgYmUgbmljZSB0byBj b252ZXJ0IGl0IHRvIAphdG9taWMgbW9kZXNldHRpbmcgYW5kIGRyb3AgdGhpcyBmdW5jdGlvbiA6 LSkgQXQgdGhlIHZlcnkgbGVhc3QsIEknZCBhZGQgYSAKY29tbWVudCB0byBkcm1fcGxhbmVfaGVs cGVyX2NoZWNrX3VwZGF0ZSgpIHRoYXQgdGhpcyBjaGFuZ2Ugc2hvdWxkIGJlIHJldmVydGVkIAp3 aGVuIHRoZSBmdW5jdGlvbiBpcyBkcm9wcGVkLCBvdGhlcndpc2Ugd2UnbGwgY2FycnkgdGhlIENS VEMgc3RhdGUgYXJndW1lbnQgCmZvciBhIGxvbmcgdGltZSB3aXRob3V0IHJlYWxpemluZyBpdCdz IG5vdCBuZWVkZWQgYW55bW9yZS4KCkFwYXJ0IGZyb20gdGhhdCwKClJldmlld2VkLWJ5OiBMYXVy ZW50IFBpbmNoYXJ0IDxsYXVyZW50LnBpbmNoYXJ0QGlkZWFzb25ib2FyZC5jb20+Cgo+IFNpZ25l ZC1vZmYtYnk6IFZpbGxlIFN5cmrDpGzDpCA8dmlsbGUuc3lyamFsYUBsaW51eC5pbnRlbC5jb20+ Cj4gLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9hcm0vaGRsY2RfY3J0Yy5jICAgICAgICAgICAgfCAg MiArLQo+ICBkcml2ZXJzL2dwdS9kcm0vYXJtL21hbGlkcF9wbGFuZXMuYyAgICAgICAgIHwgIDMg Ky0KPiAgZHJpdmVycy9ncHUvZHJtL2RybV9wbGFuZV9oZWxwZXIuYyAgICAgICAgICB8IDUyICsr KysrKysrKysrKysrLS0tLS0tLS0tLS0tCj4gIGRyaXZlcnMvZ3B1L2RybS9kcm1fc2ltcGxlX2tt c19oZWxwZXIuYyAgICAgfCAgMiArLQo+ICBkcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNw bGF5LmMgICAgICAgIHwgIDIgKysKPiAgZHJpdmVycy9ncHUvZHJtL2lteC9pcHV2My1wbGFuZS5j ICAgICAgICAgICB8ICAyICstCj4gIGRyaXZlcnMvZ3B1L2RybS9tZWRpYXRlay9tdGtfZHJtX3Bs YW5lLmMgICAgfCAgMiArLQo+ICBkcml2ZXJzL2dwdS9kcm0vbWVzb24vbWVzb25fcGxhbmUuYyAg ICAgICAgIHwgIDIgKy0KPiAgZHJpdmVycy9ncHUvZHJtL21zbS9tZHAvbWRwNS9tZHA1X3BsYW5l LmMgICB8ICA0ICstLQo+ICBkcml2ZXJzL2dwdS9kcm0vbm91dmVhdS9udjUwX2Rpc3BsYXkuYyAg ICAgIHwgIDYgKystLQo+ICBkcml2ZXJzL2dwdS9kcm0vcm9ja2NoaXAvcm9ja2NoaXBfZHJtX3Zv cC5jIHwgIDIgKy0KPiAgZHJpdmVycy9ncHUvZHJtL3RlZ3JhL2RjLmMgICAgICAgICAgICAgICAg ICB8ICA0ICstLQo+ICBkcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9rbXMuYyAgICAgICAg IHwgIDIgKy0KPiAgZHJpdmVycy9ncHUvZHJtL3p0ZS96eF9wbGFuZS5jICAgICAgICAgICAgICB8 ICA0ICstLQo+ICBpbmNsdWRlL2RybS9kcm1fcGxhbmVfaGVscGVyLmggICAgICAgICAgICAgIHwg IDMgKy0KPiAgMTUgZmlsZXMgY2hhbmdlZCwgNTMgaW5zZXJ0aW9ucygrKSwgMzkgZGVsZXRpb25z KC0pCj4gCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hcm0vaGRsY2RfY3J0Yy5jCj4g Yi9kcml2ZXJzL2dwdS9kcm0vYXJtL2hkbGNkX2NydGMuYyBpbmRleCA3MmIyMmI4MDU0MTIuLjE0 NzIxNzIzZmE4YSAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vYXJtL2hkbGNkX2NydGMu Ywo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9hcm0vaGRsY2RfY3J0Yy5jCj4gQEAgLTI1Miw3ICsy NTIsNyBAQCBzdGF0aWMgaW50IGhkbGNkX3BsYW5lX2F0b21pY19jaGVjayhzdHJ1Y3QgZHJtX3Bs YW5lCj4gKnBsYW5lLCBjbGlwLngyID0gY3J0Y19zdGF0ZS0+YWRqdXN0ZWRfbW9kZS5oZGlzcGxh eTsKPiAgCWNsaXAueTIgPSBjcnRjX3N0YXRlLT5hZGp1c3RlZF9tb2RlLnZkaXNwbGF5Owo+IAo+ IC0JcmV0dXJuIGRybV9wbGFuZV9oZWxwZXJfY2hlY2tfc3RhdGUoc3RhdGUsICZjbGlwLAo+ICsJ cmV0dXJuIGRybV9wbGFuZV9oZWxwZXJfY2hlY2tfc3RhdGUoc3RhdGUsIGNydGNfc3RhdGUsICZj bGlwLAo+ICAJCQkJCSAgICBEUk1fUExBTkVfSEVMUEVSX05PX1NDQUxJTkcsCj4gIAkJCQkJICAg IERSTV9QTEFORV9IRUxQRVJfTk9fU0NBTElORywKPiAgCQkJCQkgICAgZmFsc2UsIHRydWUpOwo+ IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vYXJtL21hbGlkcF9wbGFuZXMuYwo+IGIvZHJp dmVycy9ncHUvZHJtL2FybS9tYWxpZHBfcGxhbmVzLmMgaW5kZXggOTRlN2UzZmEzNDA4Li40OTJk OTlkZDU1ZDQKPiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vYXJtL21hbGlkcF9wbGFu ZXMuYwo+ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS9hcm0vbWFsaWRwX3BsYW5lcy5jCj4gQEAgLTE1 MCw3ICsxNTAsOCBAQCBzdGF0aWMgaW50IG1hbGlkcF9zZV9jaGVja19zY2FsaW5nKHN0cnVjdCBt YWxpZHBfcGxhbmUKPiAqbXAsCj4gCj4gIAljbGlwLngyID0gY3J0Y19zdGF0ZS0+YWRqdXN0ZWRf bW9kZS5oZGlzcGxheTsKPiAgCWNsaXAueTIgPSBjcnRjX3N0YXRlLT5hZGp1c3RlZF9tb2RlLnZk aXNwbGF5Owo+IC0JcmV0ID0gZHJtX3BsYW5lX2hlbHBlcl9jaGVja19zdGF0ZShzdGF0ZSwgJmNs aXAsIDAsIElOVF9NQVgsIHRydWUsIHRydWUpOwo+ICsJcmV0ID0gZHJtX3BsYW5lX2hlbHBlcl9j aGVja19zdGF0ZShzdGF0ZSwgY3J0Y19zdGF0ZSwgJmNsaXAsCj4gKwkJCQkJICAgMCwgSU5UX01B WCwgdHJ1ZSwgdHJ1ZSk7Cj4gIAlpZiAocmV0KQo+ICAJCXJldHVybiByZXQ7Cj4gCj4gZGlmZiAt LWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fcGxhbmVfaGVscGVyLmMKPiBiL2RyaXZlcnMvZ3B1 L2RybS9kcm1fcGxhbmVfaGVscGVyLmMgaW5kZXggNzU5ZWQ5M2Y0YmE4Li5hZGI4ZDk0NDg0ZjIK PiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vZHJtX3BsYW5lX2hlbHBlci5jCj4gKysr IGIvZHJpdmVycy9ncHUvZHJtL2RybV9wbGFuZV9oZWxwZXIuYwo+IEBAIC0xMDEsNyArMTAxLDgg QEAgc3RhdGljIGludCBnZXRfY29ubmVjdG9yc19mb3JfY3J0YyhzdHJ1Y3QgZHJtX2NydGMKPiAq Y3J0YywKPiAKPiAgLyoqCj4gICAqIGRybV9wbGFuZV9oZWxwZXJfY2hlY2tfc3RhdGUoKSAtIENo ZWNrIHBsYW5lIHN0YXRlIGZvciB2YWxpZGl0eQo+IC0gKiBAc3RhdGU6IHBsYW5lIHN0YXRlIHRv IGNoZWNrCj4gKyAqIEBwbGFuZV9zdGF0ZTogcGxhbmUgc3RhdGUgdG8gY2hlY2sKPiArICogQGNy dGNfc3RhdGU6IGNydGMgc3RhdGUgdG8gY2hlY2sKPiAgICogQGNsaXA6IGludGVnZXIgY2xpcHBp bmcgY29vcmRpbmF0ZXMKPiAgICogQG1pbl9zY2FsZTogbWluaW11bSBAc3JjOkBkZXN0IHNjYWxp bmcgZmFjdG9yIGluIDE2LjE2IGZpeGVkIHBvaW50Cj4gICAqIEBtYXhfc2NhbGU6IG1heGltdW0g QHNyYzpAZGVzdCBzY2FsaW5nIGZhY3RvciBpbiAxNi4xNiBmaXhlZCBwb2ludAo+IEBAIC0xMjAs MzUgKzEyMSwzOCBAQCBzdGF0aWMgaW50IGdldF9jb25uZWN0b3JzX2Zvcl9jcnRjKHN0cnVjdCBk cm1fY3J0Ywo+ICpjcnRjLCAqIFJFVFVSTlM6Cj4gICAqIFplcm8gaWYgdXBkYXRlIGFwcGVhcnMg dmFsaWQsIGVycm9yIGNvZGUgb24gZmFpbHVyZQo+ICAgKi8KPiAtaW50IGRybV9wbGFuZV9oZWxw ZXJfY2hlY2tfc3RhdGUoc3RydWN0IGRybV9wbGFuZV9zdGF0ZSAqc3RhdGUsCj4gK2ludCBkcm1f cGxhbmVfaGVscGVyX2NoZWNrX3N0YXRlKHN0cnVjdCBkcm1fcGxhbmVfc3RhdGUgKnBsYW5lX3N0 YXRlLAo+ICsJCQkJIGNvbnN0IHN0cnVjdCBkcm1fY3J0Y19zdGF0ZSAqY3J0Y19zdGF0ZSwKPiAg CQkJCSBjb25zdCBzdHJ1Y3QgZHJtX3JlY3QgKmNsaXAsCj4gIAkJCQkgaW50IG1pbl9zY2FsZSwK PiAgCQkJCSBpbnQgbWF4X3NjYWxlLAo+ICAJCQkJIGJvb2wgY2FuX3Bvc2l0aW9uLAo+ICAJCQkJ IGJvb2wgY2FuX3VwZGF0ZV9kaXNhYmxlZCkKPiAgewo+IC0Jc3RydWN0IGRybV9jcnRjICpjcnRj ID0gc3RhdGUtPmNydGM7Cj4gLQlzdHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYiA9IHN0YXRlLT5m YjsKPiAtCXN0cnVjdCBkcm1fcmVjdCAqc3JjID0gJnN0YXRlLT5zcmM7Cj4gLQlzdHJ1Y3QgZHJt X3JlY3QgKmRzdCA9ICZzdGF0ZS0+ZHN0Owo+IC0JdW5zaWduZWQgaW50IHJvdGF0aW9uID0gc3Rh dGUtPnJvdGF0aW9uOwo+ICsJc3RydWN0IGRybV9mcmFtZWJ1ZmZlciAqZmIgPSBwbGFuZV9zdGF0 ZS0+ZmI7Cj4gKwlzdHJ1Y3QgZHJtX3JlY3QgKnNyYyA9ICZwbGFuZV9zdGF0ZS0+c3JjOwo+ICsJ c3RydWN0IGRybV9yZWN0ICpkc3QgPSAmcGxhbmVfc3RhdGUtPmRzdDsKPiArCXVuc2lnbmVkIGlu dCByb3RhdGlvbiA9IHBsYW5lX3N0YXRlLT5yb3RhdGlvbjsKPiAgCWludCBoc2NhbGUsIHZzY2Fs ZTsKPiAKPiAtCSpzcmMgPSBkcm1fcGxhbmVfc3RhdGVfc3JjKHN0YXRlKTsKPiAtCSpkc3QgPSBk cm1fcGxhbmVfc3RhdGVfZGVzdChzdGF0ZSk7Cj4gKwlXQVJOX09OKCFjcnRjX3N0YXRlICE9ICFw bGFuZV9zdGF0ZS0+Y3J0Yyk7Cj4gKwlXQVJOX09OKGNydGNfc3RhdGUgJiYgY3J0Y19zdGF0ZS0+ Y3J0YyAhPSBwbGFuZV9zdGF0ZS0+Y3J0Yyk7Cj4gKwo+ICsJKnNyYyA9IGRybV9wbGFuZV9zdGF0 ZV9zcmMocGxhbmVfc3RhdGUpOwo+ICsJKmRzdCA9IGRybV9wbGFuZV9zdGF0ZV9kZXN0KHBsYW5l X3N0YXRlKTsKPiAKPiAgCWlmICghZmIpIHsKPiAtCQlzdGF0ZS0+dmlzaWJsZSA9IGZhbHNlOwo+ ICsJCXBsYW5lX3N0YXRlLT52aXNpYmxlID0gZmFsc2U7Cj4gIAkJcmV0dXJuIDA7Cj4gIAl9Cj4g Cj4gIAkvKiBjcnRjIHNob3VsZCBvbmx5IGJlIE5VTEwgd2hlbiBkaXNhYmxpbmcgKGkuZS4sICFm YikgKi8KPiAtCWlmIChXQVJOX09OKCFjcnRjKSkgewo+IC0JCXN0YXRlLT52aXNpYmxlID0gZmFs c2U7Cj4gKwlpZiAoV0FSTl9PTighcGxhbmVfc3RhdGUtPmNydGMpKSB7Cj4gKwkJcGxhbmVfc3Rh dGUtPnZpc2libGUgPSBmYWxzZTsKPiAgCQlyZXR1cm4gMDsKPiAgCX0KPiAKPiAtCWlmICghY3J0 Yy0+ZW5hYmxlZCAmJiAhY2FuX3VwZGF0ZV9kaXNhYmxlZCkgewo+ICsJaWYgKCFjcnRjX3N0YXRl LT5lbmFibGUgJiYgIWNhbl91cGRhdGVfZGlzYWJsZWQpIHsKPiAgCQlEUk1fREVCVUdfS01TKCJD YW5ub3QgdXBkYXRlIHBsYW5lIG9mIGEgZGlzYWJsZWQgQ1JUQy5cbiIpOwo+ICAJCXJldHVybiAt RUlOVkFMOwo+ICAJfQo+IEBAIC0xNjAsMTYgKzE2NCwxNiBAQCBpbnQgZHJtX3BsYW5lX2hlbHBl cl9jaGVja19zdGF0ZShzdHJ1Y3QKPiBkcm1fcGxhbmVfc3RhdGUgKnN0YXRlLCB2c2NhbGUgPSBk cm1fcmVjdF9jYWxjX3ZzY2FsZShzcmMsIGRzdCwgbWluX3NjYWxlLAo+IG1heF9zY2FsZSk7Cj4g IAlpZiAoaHNjYWxlIDwgMCB8fCB2c2NhbGUgPCAwKSB7Cj4gIAkJRFJNX0RFQlVHX0tNUygiSW52 YWxpZCBzY2FsaW5nIG9mIHBsYW5lXG4iKTsKPiAtCQlkcm1fcmVjdF9kZWJ1Z19wcmludCgic3Jj OiAiLCAmc3RhdGUtPnNyYywgdHJ1ZSk7Cj4gLQkJZHJtX3JlY3RfZGVidWdfcHJpbnQoImRzdDog IiwgJnN0YXRlLT5kc3QsIGZhbHNlKTsKPiArCQlkcm1fcmVjdF9kZWJ1Z19wcmludCgic3JjOiAi LCAmcGxhbmVfc3RhdGUtPnNyYywgdHJ1ZSk7Cj4gKwkJZHJtX3JlY3RfZGVidWdfcHJpbnQoImRz dDogIiwgJnBsYW5lX3N0YXRlLT5kc3QsIGZhbHNlKTsKPiAgCQlyZXR1cm4gLUVSQU5HRTsKPiAg CX0KPiAKPiAtCXN0YXRlLT52aXNpYmxlID0gZHJtX3JlY3RfY2xpcF9zY2FsZWQoc3JjLCBkc3Qs IGNsaXAsIGhzY2FsZSwgdnNjYWxlKTsKPiArCXBsYW5lX3N0YXRlLT52aXNpYmxlID0gZHJtX3Jl Y3RfY2xpcF9zY2FsZWQoc3JjLCBkc3QsIGNsaXAsIGhzY2FsZSwKPiB2c2NhbGUpOwo+IAo+ICAJ ZHJtX3JlY3Rfcm90YXRlX2ludihzcmMsIGZiLT53aWR0aCA8PCAxNiwgZmItPmhlaWdodCA8PCAx Niwgcm90YXRpb24pOwo+IAo+IC0JaWYgKCFzdGF0ZS0+dmlzaWJsZSkKPiArCWlmICghcGxhbmVf c3RhdGUtPnZpc2libGUpCj4gIAkJLyoKPiAgCQkgKiBQbGFuZSBpc24ndCB2aXNpYmxlOyBzb21l IGRyaXZlcnMgY2FuIGhhbmRsZSB0aGlzCj4gIAkJICogc28gd2UganVzdCByZXR1cm4gc3VjY2Vz cyBoZXJlLiAgRHJpdmVycyB0aGF0IGNhbid0Cj4gQEAgLTIzMCw3ICsyMzQsNyBAQCBpbnQgZHJt X3BsYW5lX2hlbHBlcl9jaGVja191cGRhdGUoc3RydWN0IGRybV9wbGFuZQo+ICpwbGFuZSwgYm9v bCBjYW5fdXBkYXRlX2Rpc2FibGVkLAo+ICAJCQkJICBib29sICp2aXNpYmxlKQo+ICB7Cj4gLQlz dHJ1Y3QgZHJtX3BsYW5lX3N0YXRlIHN0YXRlID0gewo+ICsJc3RydWN0IGRybV9wbGFuZV9zdGF0 ZSBwbGFuZV9zdGF0ZSA9IHsKPiAgCQkucGxhbmUgPSBwbGFuZSwKPiAgCQkuY3J0YyA9IGNydGMs Cj4gIAkJLmZiID0gZmIsCj4gQEAgLTI0NSwxOCArMjQ5LDIyIEBAIGludCBkcm1fcGxhbmVfaGVs cGVyX2NoZWNrX3VwZGF0ZShzdHJ1Y3QgZHJtX3BsYW5lCj4gKnBsYW5lLCAucm90YXRpb24gPSBy b3RhdGlvbiwKPiAgCQkudmlzaWJsZSA9ICp2aXNpYmxlLAo+ICAJfTsKPiArCXN0cnVjdCBkcm1f Y3J0Y19zdGF0ZSBjcnRjX3N0YXRlID0gewo+ICsJCS5jcnRjID0gY3J0YywKPiArCQkuZW5hYmxl ID0gY3J0Yy0+ZW5hYmxlZCwKPiArCX07Cj4gIAlpbnQgcmV0Owo+IAo+IC0JcmV0ID0gZHJtX3Bs YW5lX2hlbHBlcl9jaGVja19zdGF0ZSgmc3RhdGUsIGNsaXAsCj4gKwlyZXQgPSBkcm1fcGxhbmVf aGVscGVyX2NoZWNrX3N0YXRlKCZwbGFuZV9zdGF0ZSwgJmNydGNfc3RhdGUsIGNsaXAsCj4gIAkJ CQkJICAgbWluX3NjYWxlLCBtYXhfc2NhbGUsCj4gIAkJCQkJICAgY2FuX3Bvc2l0aW9uLAo+ICAJ CQkJCSAgIGNhbl91cGRhdGVfZGlzYWJsZWQpOwo+ICAJaWYgKHJldCkKPiAgCQlyZXR1cm4gcmV0 Owo+IAo+IC0JKnNyYyA9IHN0YXRlLnNyYzsKPiAtCSpkc3QgPSBzdGF0ZS5kc3Q7Cj4gLQkqdmlz aWJsZSA9IHN0YXRlLnZpc2libGU7Cj4gKwkqc3JjID0gcGxhbmVfc3RhdGUuc3JjOwo+ICsJKmRz dCA9IHBsYW5lX3N0YXRlLmRzdDsKPiArCSp2aXNpYmxlID0gcGxhbmVfc3RhdGUudmlzaWJsZTsK PiAKPiAgCXJldHVybiAwOwo+ICB9Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9kcm1f c2ltcGxlX2ttc19oZWxwZXIuYwo+IGIvZHJpdmVycy9ncHUvZHJtL2RybV9zaW1wbGVfa21zX2hl bHBlci5jIGluZGV4IGRjOWZkMTA5ZGUxNC4uZDQyOGM4MDUwMjVjCj4gMTAwNjQ0Cj4gLS0tIGEv ZHJpdmVycy9ncHUvZHJtL2RybV9zaW1wbGVfa21zX2hlbHBlci5jCj4gKysrIGIvZHJpdmVycy9n cHUvZHJtL2RybV9zaW1wbGVfa21zX2hlbHBlci5jCj4gQEAgLTEwMyw3ICsxMDMsNyBAQCBzdGF0 aWMgaW50IGRybV9zaW1wbGVfa21zX3BsYW5lX2F0b21pY19jaGVjayhzdHJ1Y3QKPiBkcm1fcGxh bmUgKnBsYW5lLCBjbGlwLngyID0gY3J0Y19zdGF0ZS0+YWRqdXN0ZWRfbW9kZS5oZGlzcGxheTsK PiAgCWNsaXAueTIgPSBjcnRjX3N0YXRlLT5hZGp1c3RlZF9tb2RlLnZkaXNwbGF5Owo+IAo+IC0J cmV0ID0gZHJtX3BsYW5lX2hlbHBlcl9jaGVja19zdGF0ZShwbGFuZV9zdGF0ZSwgJmNsaXAsCj4g KwlyZXQgPSBkcm1fcGxhbmVfaGVscGVyX2NoZWNrX3N0YXRlKHBsYW5lX3N0YXRlLCBjcnRjX3N0 YXRlLCAmY2xpcCwKPiAgCQkJCQkgICBEUk1fUExBTkVfSEVMUEVSX05PX1NDQUxJTkcsCj4gIAkJ CQkJICAgRFJNX1BMQU5FX0hFTFBFUl9OT19TQ0FMSU5HLAo+ICAJCQkJCSAgIGZhbHNlLCB0cnVl KTsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfZGlzcGxheS5jCj4g Yi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgaW5kZXggNzM3ZGUyNTFkMGY4 Li40YTQ1OTcyNmIzNmIKPiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRl bF9kaXNwbGF5LmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMK PiBAQCAtOTMxNyw2ICs5MzE3LDcgQEAgc3RhdGljIGludCBpbnRlbF9jaGVja19jdXJzb3Ioc3Ry dWN0IGludGVsX2NydGNfc3RhdGUKPiAqY3J0Y19zdGF0ZSwgaW50IHJldDsKPiAKPiAgCXJldCA9 IGRybV9wbGFuZV9oZWxwZXJfY2hlY2tfc3RhdGUoJnBsYW5lX3N0YXRlLT5iYXNlLAo+ICsJCQkJ CSAgICZjcnRjX3N0YXRlLT5iYXNlLAo+ICAJCQkJCSAgICZwbGFuZV9zdGF0ZS0+Y2xpcCwKPiAg CQkJCQkgICBEUk1fUExBTkVfSEVMUEVSX05PX1NDQUxJTkcsCj4gIAkJCQkJICAgRFJNX1BMQU5F X0hFTFBFUl9OT19TQ0FMSU5HLAo+IEBAIC0xMjgwOCw2ICsxMjgwOSw3IEBAIGludGVsX2NoZWNr X3ByaW1hcnlfcGxhbmUoc3RydWN0IGludGVsX3BsYW5lICpwbGFuZSwKPiB9Cj4gCj4gIAlyZXQg PSBkcm1fcGxhbmVfaGVscGVyX2NoZWNrX3N0YXRlKCZzdGF0ZS0+YmFzZSwKPiArCQkJCQkgICAm Y3J0Y19zdGF0ZS0+YmFzZSwKPiAgCQkJCQkgICAmc3RhdGUtPmNsaXAsCj4gIAkJCQkJICAgbWlu X3NjYWxlLCBtYXhfc2NhbGUsCj4gIAkJCQkJICAgY2FuX3Bvc2l0aW9uLCB0cnVlKTsKPiBkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2lteC9pcHV2My1wbGFuZS5jCj4gYi9kcml2ZXJzL2dw dS9kcm0vaW14L2lwdXYzLXBsYW5lLmMgaW5kZXggMjQ3YzYwZTZiZWQyLi41MWIyM2FjMTc1ZTMg MTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL2lteC9pcHV2My1wbGFuZS5jCj4gKysrIGIv ZHJpdmVycy9ncHUvZHJtL2lteC9pcHV2My1wbGFuZS5jCj4gQEAgLTM0Miw3ICszNDIsNyBAQCBz dGF0aWMgaW50IGlwdV9wbGFuZV9hdG9taWNfY2hlY2soc3RydWN0IGRybV9wbGFuZQo+ICpwbGFu ZSwgY2xpcC55MSA9IDA7Cj4gIAljbGlwLngyID0gY3J0Y19zdGF0ZS0+YWRqdXN0ZWRfbW9kZS5o ZGlzcGxheTsKPiAgCWNsaXAueTIgPSBjcnRjX3N0YXRlLT5hZGp1c3RlZF9tb2RlLnZkaXNwbGF5 Owo+IC0JcmV0ID0gZHJtX3BsYW5lX2hlbHBlcl9jaGVja19zdGF0ZShzdGF0ZSwgJmNsaXAsCj4g KwlyZXQgPSBkcm1fcGxhbmVfaGVscGVyX2NoZWNrX3N0YXRlKHN0YXRlLCBjcnRjX3N0YXRlLCAm Y2xpcCwKPiAgCQkJCQkgICBEUk1fUExBTkVfSEVMUEVSX05PX1NDQUxJTkcsCj4gIAkJCQkJICAg RFJNX1BMQU5FX0hFTFBFUl9OT19TQ0FMSU5HLAo+ICAJCQkJCSAgIGNhbl9wb3NpdGlvbiwgdHJ1 ZSk7Cj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9tZWRpYXRlay9tdGtfZHJtX3BsYW5l LmMKPiBiL2RyaXZlcnMvZ3B1L2RybS9tZWRpYXRlay9tdGtfZHJtX3BsYW5lLmMgaW5kZXggNmYx MjE4OTE0MzBmLi43ZWJiMzM2NTc3MDQKPiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0v bWVkaWF0ZWsvbXRrX2RybV9wbGFuZS5jCj4gKysrIGIvZHJpdmVycy9ncHUvZHJtL21lZGlhdGVr L210a19kcm1fcGxhbmUuYwo+IEBAIC0xMTEsNyArMTExLDcgQEAgc3RhdGljIGludCBtdGtfcGxh bmVfYXRvbWljX2NoZWNrKHN0cnVjdCBkcm1fcGxhbmUKPiAqcGxhbmUsIGNsaXAueDIgPSBjcnRj X3N0YXRlLT5tb2RlLmhkaXNwbGF5Owo+ICAJY2xpcC55MiA9IGNydGNfc3RhdGUtPm1vZGUudmRp c3BsYXk7Cj4gCj4gLQlyZXR1cm4gZHJtX3BsYW5lX2hlbHBlcl9jaGVja19zdGF0ZShzdGF0ZSwg JmNsaXAsCj4gKwlyZXR1cm4gZHJtX3BsYW5lX2hlbHBlcl9jaGVja19zdGF0ZShzdGF0ZSwgY3J0 Y19zdGF0ZSwgJmNsaXAsCj4gIAkJCQkJICAgIERSTV9QTEFORV9IRUxQRVJfTk9fU0NBTElORywK PiAgCQkJCQkgICAgRFJNX1BMQU5FX0hFTFBFUl9OT19TQ0FMSU5HLAo+ICAJCQkJCSAgICB0cnVl LCB0cnVlKTsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21lc29uL21lc29uX3BsYW5l LmMKPiBiL2RyaXZlcnMvZ3B1L2RybS9tZXNvbi9tZXNvbl9wbGFuZS5jIGluZGV4IDE3ZTk2ZmE0 Nzg2OC4uMmEwMGI3MjBjMzcxCj4gMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL21lc29u L21lc29uX3BsYW5lLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vbWVzb24vbWVzb25fcGxhbmUu Ywo+IEBAIC02MSw3ICs2MSw3IEBAIHN0YXRpYyBpbnQgbWVzb25fcGxhbmVfYXRvbWljX2NoZWNr KHN0cnVjdCBkcm1fcGxhbmUKPiAqcGxhbmUsIGNsaXAueDIgPSBjcnRjX3N0YXRlLT5tb2RlLmhk aXNwbGF5Owo+ICAJY2xpcC55MiA9IGNydGNfc3RhdGUtPm1vZGUudmRpc3BsYXk7Cj4gCj4gLQly ZXR1cm4gZHJtX3BsYW5lX2hlbHBlcl9jaGVja19zdGF0ZShzdGF0ZSwgJmNsaXAsCj4gKwlyZXR1 cm4gZHJtX3BsYW5lX2hlbHBlcl9jaGVja19zdGF0ZShzdGF0ZSwgY3J0Y19zdGF0ZSwgJmNsaXAs Cj4gIAkJCQkJICAgIERSTV9QTEFORV9IRUxQRVJfTk9fU0NBTElORywKPiAgCQkJCQkgICAgRFJN X1BMQU5FX0hFTFBFUl9OT19TQ0FMSU5HLAo+ICAJCQkJCSAgICB0cnVlLCB0cnVlKTsKPiBkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL21zbS9tZHAvbWRwNS9tZHA1X3BsYW5lLmMKPiBiL2Ry aXZlcnMvZ3B1L2RybS9tc20vbWRwL21kcDUvbWRwNV9wbGFuZS5jIGluZGV4Cj4gNGIyMmFjMzQx M2ExLi4xYzE5NGE5NDUzZDkgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL21zbS9tZHAv bWRwNS9tZHA1X3BsYW5lLmMKPiArKysgYi9kcml2ZXJzL2dwdS9kcm0vbXNtL21kcC9tZHA1L21k cDVfcGxhbmUuYwo+IEBAIC0zNDgsOCArMzQ4LDggQEAgc3RhdGljIGludCBtZHA1X3BsYW5lX2F0 b21pY19jaGVja193aXRoX3N0YXRlKHN0cnVjdAo+IGRybV9jcnRjX3N0YXRlICpjcnRjX3N0YXRl LCBtaW5fc2NhbGUgPSBGUkFDXzE2XzE2KDEsIDgpOwo+ICAJbWF4X3NjYWxlID0gRlJBQ18xNl8x Nig4LCAxKTsKPiAKPiAtCXJldCA9IGRybV9wbGFuZV9oZWxwZXJfY2hlY2tfc3RhdGUoc3RhdGUs ICZjbGlwLCBtaW5fc2NhbGUsCj4gLQkJCQkJICAgbWF4X3NjYWxlLCB0cnVlLCB0cnVlKTsKPiAr CXJldCA9IGRybV9wbGFuZV9oZWxwZXJfY2hlY2tfc3RhdGUoc3RhdGUsIGNydGNfc3RhdGUsICZj bGlwLAo+ICsJCQkJCSAgIG1pbl9zY2FsZSwgbWF4X3NjYWxlLCB0cnVlLCB0cnVlKTsKPiAgCWlm IChyZXQpCj4gIAkJcmV0dXJuIHJldDsKPiAKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJt L25vdXZlYXUvbnY1MF9kaXNwbGF5LmMKPiBiL2RyaXZlcnMvZ3B1L2RybS9ub3V2ZWF1L252NTBf ZGlzcGxheS5jIGluZGV4IGU0NzUxZjkyYjM0Mi4uN2YxMWE4OGQwNTkzCj4gMTAwNjQ0Cj4gLS0t IGEvZHJpdmVycy9ncHUvZHJtL25vdXZlYXUvbnY1MF9kaXNwbGF5LmMKPiArKysgYi9kcml2ZXJz L2dwdS9kcm0vbm91dmVhdS9udjUwX2Rpc3BsYXkuYwo+IEBAIC0xMTQzLDcgKzExNDMsOCBAQCBu djUwX2N1cnNfYWNxdWlyZShzdHJ1Y3QgbnY1MF93bmR3ICp3bmR3LCBzdHJ1Y3QKPiBudjUwX3du ZHdfYXRvbSAqYXN5dywgewo+ICAJaW50IHJldDsKPiAKPiAtCXJldCA9IGRybV9wbGFuZV9oZWxw ZXJfY2hlY2tfc3RhdGUoJmFzeXctPnN0YXRlLCAmYXN5dy0+Y2xpcCwKPiArCXJldCA9IGRybV9w bGFuZV9oZWxwZXJfY2hlY2tfc3RhdGUoJmFzeXctPnN0YXRlLCAmYXN5aC0+c3RhdGUsCj4gKwkJ CQkJICAgJmFzeXctPmNsaXAsCj4gIAkJCQkJICAgRFJNX1BMQU5FX0hFTFBFUl9OT19TQ0FMSU5H LAo+ICAJCQkJCSAgIERSTV9QTEFORV9IRUxQRVJfTk9fU0NBTElORywKPiAgCQkJCQkgICB0cnVl LCB0cnVlKTsKPiBAQCAtMTQzMiw3ICsxNDMzLDggQEAgbnY1MF9iYXNlX2FjcXVpcmUoc3RydWN0 IG52NTBfd25kdyAqd25kdywgc3RydWN0Cj4gbnY1MF93bmR3X2F0b20gKmFzeXcsIGlmICghZmIt PmZvcm1hdC0+ZGVwdGgpCj4gIAkJcmV0dXJuIC1FSU5WQUw7Cj4gCj4gLQlyZXQgPSBkcm1fcGxh bmVfaGVscGVyX2NoZWNrX3N0YXRlKCZhc3l3LT5zdGF0ZSwgJmFzeXctPmNsaXAsCj4gKwlyZXQg PSBkcm1fcGxhbmVfaGVscGVyX2NoZWNrX3N0YXRlKCZhc3l3LT5zdGF0ZSwgJmFzeWgtPnN0YXRl LAo+ICsJCQkJCSAgICZhc3l3LT5jbGlwLAo+ICAJCQkJCSAgIERSTV9QTEFORV9IRUxQRVJfTk9f U0NBTElORywKPiAgCQkJCQkgICBEUk1fUExBTkVfSEVMUEVSX05PX1NDQUxJTkcsCj4gIAkJCQkJ ICAgZmFsc2UsIHRydWUpOwo+IGRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcm9ja2NoaXAv cm9ja2NoaXBfZHJtX3ZvcC5jCj4gYi9kcml2ZXJzL2dwdS9kcm0vcm9ja2NoaXAvcm9ja2NoaXBf ZHJtX3ZvcC5jIGluZGV4Cj4gMTkxMjhiNGRlYTU0Li4zNmQwZjEwMWUzMGQgMTAwNjQ0Cj4gLS0t IGEvZHJpdmVycy9ncHUvZHJtL3JvY2tjaGlwL3JvY2tjaGlwX2RybV92b3AuYwo+ICsrKyBiL2Ry aXZlcnMvZ3B1L2RybS9yb2NrY2hpcC9yb2NrY2hpcF9kcm1fdm9wLmMKPiBAQCAtNjU5LDcgKzY1 OSw3IEBAIHN0YXRpYyBpbnQgdm9wX3BsYW5lX2F0b21pY19jaGVjayhzdHJ1Y3QgZHJtX3BsYW5l Cj4gKnBsYW5lLCBjbGlwLngyID0gY3J0Y19zdGF0ZS0+YWRqdXN0ZWRfbW9kZS5oZGlzcGxheTsK PiAgCWNsaXAueTIgPSBjcnRjX3N0YXRlLT5hZGp1c3RlZF9tb2RlLnZkaXNwbGF5Owo+IAo+IC0J cmV0ID0gZHJtX3BsYW5lX2hlbHBlcl9jaGVja19zdGF0ZShzdGF0ZSwgJmNsaXAsCj4gKwlyZXQg PSBkcm1fcGxhbmVfaGVscGVyX2NoZWNrX3N0YXRlKHN0YXRlLCBjcnRjX3N0YXRlLCAmY2xpcCwK PiAgCQkJCQkgICBtaW5fc2NhbGUsIG1heF9zY2FsZSwKPiAgCQkJCQkgICB0cnVlLCB0cnVlKTsK PiAgCWlmIChyZXQpCj4gZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS90ZWdyYS9kYy5jIGIv ZHJpdmVycy9ncHUvZHJtL3RlZ3JhL2RjLmMKPiBpbmRleCAyNGE1ZWY0ZjViYjguLmU5NWQ5ZTJh N2Y2YyAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vdGVncmEvZGMuYwo+ICsrKyBiL2Ry aXZlcnMvZ3B1L2RybS90ZWdyYS9kYy5jCj4gQEAgLTQ5MSw4ICs0OTEsOCBAQCBzdGF0aWMgaW50 IHRlZ3JhX3BsYW5lX3N0YXRlX2FkZChzdHJ1Y3QgdGVncmFfcGxhbmUKPiAqcGxhbmUsIGNsaXAu eTIgPSBjcnRjX3N0YXRlLT5tb2RlLnZkaXNwbGF5Owo+IAo+ICAJLyogQ2hlY2sgcGxhbmUgc3Rh dGUgZm9yIHZpc2liaWxpdHkgYW5kIGNhbGN1bGF0ZSBjbGlwcGluZyBib3VuZHMgKi8KPiAtCWVy ciA9IGRybV9wbGFuZV9oZWxwZXJfY2hlY2tfc3RhdGUoc3RhdGUsICZjbGlwLCAwLCBJTlRfTUFY LAo+IC0JCQkJCSAgIHRydWUsIHRydWUpOwo+ICsJZXJyID0gZHJtX3BsYW5lX2hlbHBlcl9jaGVj a19zdGF0ZShzdGF0ZSwgY3J0Y19zdGF0ZSwgJmNsaXAsCj4gKwkJCQkJICAgMCwgSU5UX01BWCwg dHJ1ZSwgdHJ1ZSk7Cj4gIAlpZiAoZXJyIDwgMCkKPiAgCQlyZXR1cm4gZXJyOwo+IAo+IGRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9rbXMuYwo+IGIvZHJpdmVycy9n cHUvZHJtL3Ztd2dmeC92bXdnZnhfa21zLmMgaW5kZXggZWZhNDFjMDg2MTk4Li5kOTVlN2IxYzNi MTEKPiAxMDA2NDQKPiAtLS0gYS9kcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9rbXMuYwo+ ICsrKyBiL2RyaXZlcnMvZ3B1L2RybS92bXdnZngvdm13Z2Z4X2ttcy5jCj4gQEAgLTQ1NCw3ICs0 NTQsNyBAQCBpbnQgdm13X2R1X3ByaW1hcnlfcGxhbmVfYXRvbWljX2NoZWNrKHN0cnVjdCBkcm1f cGxhbmUKPiAqcGxhbmUsIGNsaXAueTIgPSBjcnRjX3N0YXRlLT5hZGp1c3RlZF9tb2RlLnZkaXNw bGF5Owo+ICAJfQo+IAo+IC0JcmV0ID0gZHJtX3BsYW5lX2hlbHBlcl9jaGVja19zdGF0ZShzdGF0 ZSwgJmNsaXAsCj4gKwlyZXQgPSBkcm1fcGxhbmVfaGVscGVyX2NoZWNrX3N0YXRlKHN0YXRlLCBj cnRjX3N0YXRlLCAmY2xpcCwKPiAgCQkJCQkgICBEUk1fUExBTkVfSEVMUEVSX05PX1NDQUxJTkcs Cj4gIAkJCQkJICAgRFJNX1BMQU5FX0hFTFBFUl9OT19TQ0FMSU5HLAo+ICAJCQkJCSAgIGZhbHNl LCB0cnVlKTsKPiBkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3p0ZS96eF9wbGFuZS5jIGIv ZHJpdmVycy9ncHUvZHJtL3p0ZS96eF9wbGFuZS5jCj4gaW5kZXggMThlNzYzNDkzMjY0Li5lZTAw MDI1MjliOGYgMTAwNjQ0Cj4gLS0tIGEvZHJpdmVycy9ncHUvZHJtL3p0ZS96eF9wbGFuZS5jCj4g KysrIGIvZHJpdmVycy9ncHUvZHJtL3p0ZS96eF9wbGFuZS5jCj4gQEAgLTgwLDcgKzgwLDcgQEAg c3RhdGljIGludCB6eF92bF9wbGFuZV9hdG9taWNfY2hlY2soc3RydWN0IGRybV9wbGFuZQo+ICpw bGFuZSwgY2xpcC54MiA9IGNydGNfc3RhdGUtPmFkanVzdGVkX21vZGUuaGRpc3BsYXk7Cj4gIAlj bGlwLnkyID0gY3J0Y19zdGF0ZS0+YWRqdXN0ZWRfbW9kZS52ZGlzcGxheTsKPiAKPiAtCXJldHVy biBkcm1fcGxhbmVfaGVscGVyX2NoZWNrX3N0YXRlKHBsYW5lX3N0YXRlLCAmY2xpcCwKPiArCXJl dHVybiBkcm1fcGxhbmVfaGVscGVyX2NoZWNrX3N0YXRlKHBsYW5lX3N0YXRlLCBjcnRjX3N0YXRl LCAmY2xpcCwKPiAgCQkJCQkgICAgbWluX3NjYWxlLCBtYXhfc2NhbGUsCj4gIAkJCQkJICAgIHRy dWUsIHRydWUpOwo+ICB9Cj4gQEAgLTMxNSw3ICszMTUsNyBAQCBzdGF0aWMgaW50IHp4X2dsX3Bs YW5lX2F0b21pY19jaGVjayhzdHJ1Y3QgZHJtX3BsYW5lCj4gKnBsYW5lLCBjbGlwLngyID0gY3J0 Y19zdGF0ZS0+YWRqdXN0ZWRfbW9kZS5oZGlzcGxheTsKPiAgCWNsaXAueTIgPSBjcnRjX3N0YXRl LT5hZGp1c3RlZF9tb2RlLnZkaXNwbGF5Owo+IAo+IC0JcmV0dXJuIGRybV9wbGFuZV9oZWxwZXJf Y2hlY2tfc3RhdGUocGxhbmVfc3RhdGUsICZjbGlwLAo+ICsJcmV0dXJuIGRybV9wbGFuZV9oZWxw ZXJfY2hlY2tfc3RhdGUocGxhbmVfc3RhdGUsIGNydGNfc3RhdGUsICZjbGlwLAo+ICAJCQkJCSAg ICBEUk1fUExBTkVfSEVMUEVSX05PX1NDQUxJTkcsCj4gIAkJCQkJICAgIERSTV9QTEFORV9IRUxQ RVJfTk9fU0NBTElORywKPiAgCQkJCQkgICAgZmFsc2UsIHRydWUpOwo+IGRpZmYgLS1naXQgYS9p bmNsdWRlL2RybS9kcm1fcGxhbmVfaGVscGVyLmggYi9pbmNsdWRlL2RybS9kcm1fcGxhbmVfaGVs cGVyLmgKPiBpbmRleCA3YzhhMDBjZWFkYjcuLjQxYjgzMDliMGE1NyAxMDA2NDQKPiAtLS0gYS9p bmNsdWRlL2RybS9kcm1fcGxhbmVfaGVscGVyLmgKPiArKysgYi9pbmNsdWRlL2RybS9kcm1fcGxh bmVfaGVscGVyLmgKPiBAQCAtMzgsNyArMzgsOCBAQAo+ICAgKi8KPiAgI2RlZmluZSBEUk1fUExB TkVfSEVMUEVSX05PX1NDQUxJTkcgKDE8PDE2KQo+IAo+IC1pbnQgZHJtX3BsYW5lX2hlbHBlcl9j aGVja19zdGF0ZShzdHJ1Y3QgZHJtX3BsYW5lX3N0YXRlICpzdGF0ZSwKPiAraW50IGRybV9wbGFu ZV9oZWxwZXJfY2hlY2tfc3RhdGUoc3RydWN0IGRybV9wbGFuZV9zdGF0ZSAqcGxhbmVfc3RhdGUs Cj4gKwkJCQkgY29uc3Qgc3RydWN0IGRybV9jcnRjX3N0YXRlICpjcnRjX3N0YXRlLAo+ICAJCQkJ IGNvbnN0IHN0cnVjdCBkcm1fcmVjdCAqY2xpcCwKPiAgCQkJCSBpbnQgbWluX3NjYWxlLCBpbnQg bWF4X3NjYWxlLAo+ICAJCQkJIGJvb2wgY2FuX3Bvc2l0aW9uLAoKLS0gClJlZ2FyZHMsCgpMYXVy ZW50IFBpbmNoYXJ0CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fXwpkcmktZGV2ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5v cmcKaHR0cHM6Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2 ZWwK