From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ben Widawsky Subject: [PATCH 1/4] drm: Plumb modifiers through plane init Date: Sun, 23 Jul 2017 20:46:38 -0700 Message-ID: <20170724034641.13369-2-ben@bwidawsk.net> References: <20170724034641.13369-1-ben@bwidawsk.net> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20170724034641.13369-1-ben@bwidawsk.net> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Intel GFX , DRI Development Cc: Ben Widawsky , Liviu Dudau , Daniel Stone List-Id: intel-gfx@lists.freedesktop.org VGhpcyBpcyB0aGUgcGx1bWJpbmcgZm9yIHN1cHBvcnRpbmcgZmIgbW9kaWZpZXJzIG9uIHBsYW5l cy4gTW9kaWZpZXJzCmhhdmUgYWxyZWFkeSBiZWVuIGludHJvZHVjZWQgdG8gc29tZSBleHRlbnQs IGJ1dCB0aGlzIHNlcmllcyB3aWxsIGV4dGVuZAp0aGlzIHRvIGFsbG93IHF1ZXJ5aW5nIG1vZGlm aWVycyBwZXIgcGxhbmUuIEJhc2VkIG9uIHRoaXMsIHRoZSBjbGllbnQgdG8KZW5hYmxlIG9wdGlt YWwgbW9kaWZpY2F0aW9ucyBmb3IgZnJhbWVidWZmZXJzLgoKVGhpcyBwYXRjaCBzaW1wbHkgYWxs b3dzIHRoZSBEUk0gZHJpdmVycyB0byBpbml0aWFsaXplIHRoZWlyIGxpc3Qgb2YKc3VwcG9ydGVk IG1vZGlmaWVycyB1cG9uIGluaXRpYWxpemluZyB0aGUgcGxhbmUuCgp2MjogQSBtaW5vciBhZGRp dGlvbiBmcm9tIERhbmllbAoKdjM6CiogVXBkYXRlZCBjb21taXQgbWVzc2FnZQoqIHMvSU5WQUxJ RC9EUk1fRk9STUFUX01PRF9JTlZBTElEIChMaXZpdSkKKiBSZW1vdmUgc29tZSBleGNlc3MgbmV3 bGluZXMgKExpdml1KQoqIFVwZGF0ZSBjb21tZW50IGZvciA+IDY0IG1vZGlmaWVycyAoTGl2aXUp Cgp2NDogTWlub3IgY29tbWVudCBhZGp1c3RtZW50cyAoTGl2aXUpCgp2NTogU29tZSBuZXcgcGxh dGZvcm1zIGFkZGVkIGR1ZSB0byByZWJhc2UKCnY2OiBBZGQgc29tZSBtaXNzZWQgcGxhbmUgaW5p dHMgKG9yIG1heWJlIHRoZXkncmUgbmV3IC0gd2hvIGtub3dzIGF0CnRoaXMgcG9pbnQpIChEYW5p ZWwpCgpTaWduZWQtb2ZmLWJ5OiBCZW4gV2lkYXdza3kgPGJlbkBid2lkYXdzay5uZXQ+ClJldmll d2VkLWJ5OiBEYW5pZWwgU3RvbmUgPGRhbmllbHNAY29sbGFib3JhLmNvbT4gKHYyKQpSZXZpZXdl ZC1ieTogTGl2aXUgRHVkYXUgPExpdml1LkR1ZGF1QGFybS5jb20+Ci0tLQogZHJpdmVycy9ncHUv ZHJtL2FyYy9hcmNwZ3VfY3J0Yy5jICAgICAgICAgICAgICAgfCAgMSArCiBkcml2ZXJzL2dwdS9k cm0vYXJtL2hkbGNkX2NydGMuYyAgICAgICAgICAgICAgICB8ICAxICsKIGRyaXZlcnMvZ3B1L2Ry bS9hcm0vbWFsaWRwX3BsYW5lcy5jICAgICAgICAgICAgIHwgIDIgKy0KIGRyaXZlcnMvZ3B1L2Ry bS9hcm1hZGEvYXJtYWRhX2NydGMuYyAgICAgICAgICAgIHwgIDEgKwogZHJpdmVycy9ncHUvZHJt L2FybWFkYS9hcm1hZGFfb3ZlcmxheS5jICAgICAgICAgfCAgMSArCiBkcml2ZXJzL2dwdS9kcm0v YXRtZWwtaGxjZGMvYXRtZWxfaGxjZGNfcGxhbmUuYyB8ICAzICsrLQogZHJpdmVycy9ncHUvZHJt L2RybV9tb2Rlc2V0X2hlbHBlci5jICAgICAgICAgICAgfCAgMSArCiBkcml2ZXJzL2dwdS9kcm0v ZHJtX3BsYW5lLmMgICAgICAgICAgICAgICAgICAgICB8IDM2ICsrKysrKysrKysrKysrKysrKysr KysrKy0KIGRyaXZlcnMvZ3B1L2RybS9kcm1fc2ltcGxlX2ttc19oZWxwZXIuYyAgICAgICAgIHwg IDMgKysrCiBkcml2ZXJzL2dwdS9kcm0vZXh5bm9zL2V4eW5vc19kcm1fcGxhbmUuYyAgICAgICB8 ICAyICstCiBkcml2ZXJzL2dwdS9kcm0vZnNsLWRjdS9mc2xfZGN1X2RybV9wbGFuZS5jICAgICB8 ICAyICstCiBkcml2ZXJzL2dwdS9kcm0vaGlzaWxpY29uL2hpYm1jL2hpYm1jX2RybV9kZS5jICB8 ICAxICsKIGRyaXZlcnMvZ3B1L2RybS9oaXNpbGljb24va2lyaW4va2lyaW5fZHJtX2FkZS5jIHwg IDIgKy0KIGRyaXZlcnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYyAgICAgICAgICAgIHwg IDUgKysrLQogZHJpdmVycy9ncHUvZHJtL2k5MTUvaW50ZWxfc3ByaXRlLmMgICAgICAgICAgICAg fCAgNCArLS0KIGRyaXZlcnMvZ3B1L2RybS9pbXgvaXB1djMtcGxhbmUuYyAgICAgICAgICAgICAg IHwgIDQgKy0tCiBkcml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2RybV9wbGFuZS5jICAgICAg ICB8ICAyICstCiBkcml2ZXJzL2dwdS9kcm0vbWVzb24vbWVzb25fcGxhbmUuYyAgICAgICAgICAg ICB8ICAxICsKIGRyaXZlcnMvZ3B1L2RybS9tc20vbWRwL21kcDQvbWRwNF9wbGFuZS5jICAgICAg IHwgIDIgKy0KIGRyaXZlcnMvZ3B1L2RybS9tc20vbWRwL21kcDUvbWRwNV9wbGFuZS5jICAgICAg IHwgIDQgKy0tCiBkcml2ZXJzL2dwdS9kcm0vbXhzZmIvbXhzZmJfZHJ2LmMgICAgICAgICAgICAg ICB8ICAyICstCiBkcml2ZXJzL2dwdS9kcm0vbm91dmVhdS9udjUwX2Rpc3BsYXkuYyAgICAgICAg ICB8ICA1ICsrLS0KIGRyaXZlcnMvZ3B1L2RybS9vbWFwZHJtL29tYXBfcGxhbmUuYyAgICAgICAg ICAgIHwgIDIgKy0KIGRyaXZlcnMvZ3B1L2RybS9wbDExMS9wbDExMV9kaXNwbGF5LmMgICAgICAg ICAgIHwgIDIgKy0KIGRyaXZlcnMvZ3B1L2RybS9xeGwvcXhsX2Rpc3BsYXkuYyAgICAgICAgICAg ICAgIHwgIDIgKy0KIGRyaXZlcnMvZ3B1L2RybS9yY2FyLWR1L3JjYXJfZHVfcGxhbmUuYyAgICAg ICAgIHwgIDQgKy0tCiBkcml2ZXJzL2dwdS9kcm0vcmNhci1kdS9yY2FyX2R1X3ZzcC5jICAgICAg ICAgICB8ICA0ICstLQogZHJpdmVycy9ncHUvZHJtL3JvY2tjaGlwL3JvY2tjaGlwX2RybV92b3Au YyAgICAgfCAgNCArLS0KIGRyaXZlcnMvZ3B1L2RybS9zdGkvc3RpX2N1cnNvci5jICAgICAgICAg ICAgICAgIHwgIDIgKy0KIGRyaXZlcnMvZ3B1L2RybS9zdGkvc3RpX2dkcC5jICAgICAgICAgICAg ICAgICAgIHwgIDIgKy0KIGRyaXZlcnMvZ3B1L2RybS9zdGkvc3RpX2hxdmRwLmMgICAgICAgICAg ICAgICAgIHwgIDIgKy0KIGRyaXZlcnMvZ3B1L2RybS9zdG0vbHRkYy5jICAgICAgICAgICAgICAg ICAgICAgIHwgIDIgKy0KIGRyaXZlcnMvZ3B1L2RybS9zdW40aS9zdW40aV9sYXllci5jICAgICAg ICAgICAgIHwgIDIgKy0KIGRyaXZlcnMvZ3B1L2RybS90ZWdyYS9kYy5jICAgICAgICAgICAgICAg ICAgICAgIHwgMTIgKysrKy0tLS0tCiBkcml2ZXJzL2dwdS9kcm0vdGlueWRybS9jb3JlL3Rpbnlk cm0tcGlwZS5jICAgICB8ICAyICstCiBkcml2ZXJzL2dwdS9kcm0vdmM0L3ZjNF9wbGFuZS5jICAg ICAgICAgICAgICAgICB8ICAyICstCiBkcml2ZXJzL2dwdS9kcm0vdmlydGlvL3ZpcnRncHVfcGxh bmUuYyAgICAgICAgICB8ICAyICstCiBkcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9sZHUu YyAgICAgICAgICAgICB8ICA0ICstLQogZHJpdmVycy9ncHUvZHJtL3Ztd2dmeC92bXdnZnhfc2Ny bi5jICAgICAgICAgICAgfCAgNCArLS0KIGRyaXZlcnMvZ3B1L2RybS92bXdnZngvdm13Z2Z4X3N0 ZHUuYyAgICAgICAgICAgIHwgIDQgKy0tCiBkcml2ZXJzL2dwdS9kcm0venRlL3p4X3BsYW5lLmMg ICAgICAgICAgICAgICAgICB8ICAyICstCiBpbmNsdWRlL2RybS9kcm1fcGxhbmUuaCAgICAgICAg ICAgICAgICAgICAgICAgICB8IDIyICsrKysrKysrKysrKysrLQogaW5jbHVkZS9kcm0vZHJtX3Np bXBsZV9rbXNfaGVscGVyLmggICAgICAgICAgICAgfCAgMSArCiBpbmNsdWRlL3VhcGkvZHJtL2Ry bV9mb3VyY2MuaCAgICAgICAgICAgICAgICAgICB8IDExICsrKysrKysrCiA0NCBmaWxlcyBjaGFu Z2VkLCAxMzAgaW5zZXJ0aW9ucygrKSwgNDkgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZHJp dmVycy9ncHUvZHJtL2FyYy9hcmNwZ3VfY3J0Yy5jIGIvZHJpdmVycy9ncHUvZHJtL2FyYy9hcmNw Z3VfY3J0Yy5jCmluZGV4IDE4NTlkZDNhZDYyMi4uNzk5NDE2NjUxZjJmIDEwMDY0NAotLS0gYS9k cml2ZXJzL2dwdS9kcm0vYXJjL2FyY3BndV9jcnRjLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2Fy Yy9hcmNwZ3VfY3J0Yy5jCkBAIC0yMTcsNiArMjE3LDcgQEAgc3RhdGljIHN0cnVjdCBkcm1fcGxh bmUgKmFyY19wZ3VfcGxhbmVfaW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZHJtKQogCiAJcmV0ID0g ZHJtX3VuaXZlcnNhbF9wbGFuZV9pbml0KGRybSwgcGxhbmUsIDB4ZmYsICZhcmNfcGd1X3BsYW5l X2Z1bmNzLAogCQkJCSAgICAgICBmb3JtYXRzLCBBUlJBWV9TSVpFKGZvcm1hdHMpLAorCQkJCSAg ICAgICBOVUxMLAogCQkJCSAgICAgICBEUk1fUExBTkVfVFlQRV9QUklNQVJZLCBOVUxMKTsKIAlp ZiAocmV0KQogCQlyZXR1cm4gRVJSX1BUUihyZXQpOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUv ZHJtL2FybS9oZGxjZF9jcnRjLmMgYi9kcml2ZXJzL2dwdS9kcm0vYXJtL2hkbGNkX2NydGMuYwpp bmRleCAxNmUxZTIwY2YwNGMuLjcyYjIyYjgwNTQxMiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUv ZHJtL2FybS9oZGxjZF9jcnRjLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2FybS9oZGxjZF9jcnRj LmMKQEAgLTMxNSw2ICszMTUsNyBAQCBzdGF0aWMgc3RydWN0IGRybV9wbGFuZSAqaGRsY2RfcGxh bmVfaW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZHJtKQogCiAJcmV0ID0gZHJtX3VuaXZlcnNhbF9w bGFuZV9pbml0KGRybSwgcGxhbmUsIDB4ZmYsICZoZGxjZF9wbGFuZV9mdW5jcywKIAkJCQkgICAg ICAgZm9ybWF0cywgQVJSQVlfU0laRShmb3JtYXRzKSwKKwkJCQkgICAgICAgTlVMTCwKIAkJCQkg ICAgICAgRFJNX1BMQU5FX1RZUEVfUFJJTUFSWSwgTlVMTCk7CiAJaWYgKHJldCkgewogCQlyZXR1 cm4gRVJSX1BUUihyZXQpOwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FybS9tYWxpZHBf cGxhbmVzLmMgYi9kcml2ZXJzL2dwdS9kcm0vYXJtL21hbGlkcF9wbGFuZXMuYwppbmRleCA2MDBm YTdiZDdmNTIuLjYwNDAyZTI3ODgyZiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2FybS9t YWxpZHBfcGxhbmVzLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2FybS9tYWxpZHBfcGxhbmVzLmMK QEAgLTM5OCw3ICszOTgsNyBAQCBpbnQgbWFsaWRwX2RlX3BsYW5lc19pbml0KHN0cnVjdCBkcm1f ZGV2aWNlICpkcm0pCiAJCQkJCURSTV9QTEFORV9UWVBFX09WRVJMQVk7CiAJCXJldCA9IGRybV91 bml2ZXJzYWxfcGxhbmVfaW5pdChkcm0sICZwbGFuZS0+YmFzZSwgY3J0Y3MsCiAJCQkJCSAgICAg ICAmbWFsaWRwX2RlX3BsYW5lX2Z1bmNzLCBmb3JtYXRzLAotCQkJCQkgICAgICAgbiwgcGxhbmVf dHlwZSwgTlVMTCk7CisJCQkJCSAgICAgICBuLCBOVUxMLCBwbGFuZV90eXBlLCBOVUxMKTsKIAkJ aWYgKHJldCA8IDApCiAJCQlnb3RvIGNsZWFudXA7CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1 L2RybS9hcm1hZGEvYXJtYWRhX2NydGMuYyBiL2RyaXZlcnMvZ3B1L2RybS9hcm1hZGEvYXJtYWRh X2NydGMuYwppbmRleCAxZmZiYTkxZmJhYWUuLjFkMDFhZDI0ZmU1MiAxMDA2NDQKLS0tIGEvZHJp dmVycy9ncHUvZHJtL2FybWFkYS9hcm1hZGFfY3J0Yy5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9h cm1hZGEvYXJtYWRhX2NydGMuYwpAQCAtMTI2OSw2ICsxMjY5LDcgQEAgc3RhdGljIGludCBhcm1h ZGFfZHJtX2NydGNfY3JlYXRlKHN0cnVjdCBkcm1fZGV2aWNlICpkcm0sIHN0cnVjdCBkZXZpY2Ug KmRldiwKIAkJCQkgICAgICAgJmFybWFkYV9wcmltYXJ5X3BsYW5lX2Z1bmNzLAogCQkJCSAgICAg ICBhcm1hZGFfcHJpbWFyeV9mb3JtYXRzLAogCQkJCSAgICAgICBBUlJBWV9TSVpFKGFybWFkYV9w cmltYXJ5X2Zvcm1hdHMpLAorCQkJCSAgICAgICBOVUxMLAogCQkJCSAgICAgICBEUk1fUExBTkVf VFlQRV9QUklNQVJZLCBOVUxMKTsKIAlpZiAocmV0KSB7CiAJCWtmcmVlKHByaW1hcnkpOwpkaWZm IC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2FybWFkYS9hcm1hZGFfb3ZlcmxheS5jIGIvZHJpdmVy cy9ncHUvZHJtL2FybWFkYS9hcm1hZGFfb3ZlcmxheS5jCmluZGV4IDY3N2I0NGYzNTM0Yi4uZWRj NDQ5MTBkNzlmIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vYXJtYWRhL2FybWFkYV9vdmVy bGF5LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2FybWFkYS9hcm1hZGFfb3ZlcmxheS5jCkBAIC00 NjAsNiArNDYwLDcgQEAgaW50IGFybWFkYV9vdmVybGF5X3BsYW5lX2NyZWF0ZShzdHJ1Y3QgZHJt X2RldmljZSAqZGV2LCB1bnNpZ25lZCBsb25nIGNydGNzKQogCQkJCSAgICAgICAmYXJtYWRhX292 bF9wbGFuZV9mdW5jcywKIAkJCQkgICAgICAgYXJtYWRhX292bF9mb3JtYXRzLAogCQkJCSAgICAg ICBBUlJBWV9TSVpFKGFybWFkYV9vdmxfZm9ybWF0cyksCisJCQkJICAgICAgIE5VTEwsCiAJCQkJ ICAgICAgIERSTV9QTEFORV9UWVBFX09WRVJMQVksIE5VTEwpOwogCWlmIChyZXQpIHsKIAkJa2Zy ZWUoZHBsYW5lKTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9hdG1lbC1obGNkYy9hdG1l bF9obGNkY19wbGFuZS5jIGIvZHJpdmVycy9ncHUvZHJtL2F0bWVsLWhsY2RjL2F0bWVsX2hsY2Rj X3BsYW5lLmMKaW5kZXggYjViZDliMDA1MjI1Li5iYTUzMmJmMTAxZTAgMTAwNjQ0Ci0tLSBhL2Ry aXZlcnMvZ3B1L2RybS9hdG1lbC1obGNkYy9hdG1lbF9obGNkY19wbGFuZS5jCisrKyBiL2RyaXZl cnMvZ3B1L2RybS9hdG1lbC1obGNkYy9hdG1lbF9obGNkY19wbGFuZS5jCkBAIC0xMDg3LDcgKzEw ODcsOCBAQCBzdGF0aWMgaW50IGF0bWVsX2hsY2RjX3BsYW5lX2NyZWF0ZShzdHJ1Y3QgZHJtX2Rl dmljZSAqZGV2LAogCXJldCA9IGRybV91bml2ZXJzYWxfcGxhbmVfaW5pdChkZXYsICZwbGFuZS0+ YmFzZSwgMCwKIAkJCQkgICAgICAgJmxheWVyX3BsYW5lX2Z1bmNzLAogCQkJCSAgICAgICBkZXNj LT5mb3JtYXRzLT5mb3JtYXRzLAotCQkJCSAgICAgICBkZXNjLT5mb3JtYXRzLT5uZm9ybWF0cywg dHlwZSwgTlVMTCk7CisJCQkJICAgICAgIGRlc2MtPmZvcm1hdHMtPm5mb3JtYXRzLAorCQkJCSAg ICAgICBOVUxMLCB0eXBlLCBOVUxMKTsKIAlpZiAocmV0KQogCQlyZXR1cm4gcmV0OwogCmRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJtX21vZGVzZXRfaGVscGVyLmMgYi9kcml2ZXJzL2dw dS9kcm0vZHJtX21vZGVzZXRfaGVscGVyLmMKaW5kZXggMmIzMzgyNWYyZjkzLi45Y2IxZWVkZTBi NGQgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9kcm1fbW9kZXNldF9oZWxwZXIuYworKysg Yi9kcml2ZXJzL2dwdS9kcm0vZHJtX21vZGVzZXRfaGVscGVyLmMKQEAgLTEyNCw2ICsxMjQsNyBA QCBzdGF0aWMgc3RydWN0IGRybV9wbGFuZSAqY3JlYXRlX3ByaW1hcnlfcGxhbmUoc3RydWN0IGRy bV9kZXZpY2UgKmRldikKIAkJCQkgICAgICAgJmRybV9wcmltYXJ5X2hlbHBlcl9mdW5jcywKIAkJ CQkgICAgICAgc2FmZV9tb2Rlc2V0X2Zvcm1hdHMsCiAJCQkJICAgICAgIEFSUkFZX1NJWkUoc2Fm ZV9tb2Rlc2V0X2Zvcm1hdHMpLAorCQkJCSAgICAgICBOVUxMLAogCQkJCSAgICAgICBEUk1fUExB TkVfVFlQRV9QUklNQVJZLCBOVUxMKTsKIAlpZiAocmV0KSB7CiAJCWtmcmVlKHByaW1hcnkpOwpk aWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2RybV9wbGFuZS5jIGIvZHJpdmVycy9ncHUvZHJt L2RybV9wbGFuZS5jCmluZGV4IDVkYzhjNDM1MDYwMi4uZDNmYzU2MWQ3YjQ4IDEwMDY0NAotLS0g YS9kcml2ZXJzL2dwdS9kcm0vZHJtX3BsYW5lLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2RybV9w bGFuZS5jCkBAIC03MCw2ICs3MCw4IEBAIHN0YXRpYyB1bnNpZ25lZCBpbnQgZHJtX251bV9wbGFu ZXMoc3RydWN0IGRybV9kZXZpY2UgKmRldikKICAqIEBmdW5jczogY2FsbGJhY2tzIGZvciB0aGUg bmV3IHBsYW5lCiAgKiBAZm9ybWF0czogYXJyYXkgb2Ygc3VwcG9ydGVkIGZvcm1hdHMgKERSTV9G T1JNQVRcX1wqKQogICogQGZvcm1hdF9jb3VudDogbnVtYmVyIG9mIGVsZW1lbnRzIGluIEBmb3Jt YXRzCisgKiBAZm9ybWF0X21vZGlmaWVyczogYXJyYXkgb2Ygc3RydWN0IGRybV9mb3JtYXQgbW9k aWZpZXJzIHRlcm1pbmF0ZWQgYnkKKyAqICAgICAgICAgICAgICAgICAgICBEUk1fRk9STUFUX01P RF9JTlZBTElECiAgKiBAdHlwZTogdHlwZSBvZiBwbGFuZSAob3ZlcmxheSwgcHJpbWFyeSwgY3Vy c29yKQogICogQG5hbWU6IHByaW50ZiBzdHlsZSBmb3JtYXQgc3RyaW5nIGZvciB0aGUgcGxhbmUg bmFtZSwgb3IgTlVMTCBmb3IgZGVmYXVsdCBuYW1lCiAgKgpAQCAtODIsMTAgKzg0LDEyIEBAIGlu dCBkcm1fdW5pdmVyc2FsX3BsYW5lX2luaXQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwgc3RydWN0 IGRybV9wbGFuZSAqcGxhbmUsCiAJCQkgICAgIHVpbnQzMl90IHBvc3NpYmxlX2NydGNzLAogCQkJ ICAgICBjb25zdCBzdHJ1Y3QgZHJtX3BsYW5lX2Z1bmNzICpmdW5jcywKIAkJCSAgICAgY29uc3Qg dWludDMyX3QgKmZvcm1hdHMsIHVuc2lnbmVkIGludCBmb3JtYXRfY291bnQsCisJCQkgICAgIGNv bnN0IHVpbnQ2NF90ICpmb3JtYXRfbW9kaWZpZXJzLAogCQkJICAgICBlbnVtIGRybV9wbGFuZV90 eXBlIHR5cGUsCiAJCQkgICAgIGNvbnN0IGNoYXIgKm5hbWUsIC4uLikKIHsKIAlzdHJ1Y3QgZHJt X21vZGVfY29uZmlnICpjb25maWcgPSAmZGV2LT5tb2RlX2NvbmZpZzsKKwl1bnNpZ25lZCBpbnQg Zm9ybWF0X21vZGlmaWVyX2NvdW50ID0gMDsKIAlpbnQgcmV0OwogCiAJcmV0ID0gZHJtX21vZGVf b2JqZWN0X2FkZChkZXYsICZwbGFuZS0+YmFzZSwgRFJNX01PREVfT0JKRUNUX1BMQU5FKTsKQEAg LTEwNSw2ICsxMDksMzEgQEAgaW50IGRybV91bml2ZXJzYWxfcGxhbmVfaW5pdChzdHJ1Y3QgZHJt X2RldmljZSAqZGV2LCBzdHJ1Y3QgZHJtX3BsYW5lICpwbGFuZSwKIAkJcmV0dXJuIC1FTk9NRU07 CiAJfQogCisJLyoKKwkgKiBGaXJzdCBkcml2ZXIgdG8gbmVlZCBtb3JlIHRoYW4gNjQgZm9ybWF0 cyBuZWVkcyB0byBmaXggdGhpcy4gRWFjaAorCSAqIGZvcm1hdCBpcyBlbmNvZGVkIGFzIGEgYml0 IGFuZCB0aGUgY3VycmVudCBjb2RlIG9ubHkgc3VwcG9ydHMgYSB1NjQuCisJICovCisJaWYgKFdB Uk5fT04oZm9ybWF0X2NvdW50ID4gNjQpKQorCQlyZXR1cm4gLUVJTlZBTDsKKworCWlmIChmb3Jt YXRfbW9kaWZpZXJzKSB7CisJCWNvbnN0IHVpbnQ2NF90ICp0ZW1wX21vZGlmaWVycyA9IGZvcm1h dF9tb2RpZmllcnM7CisJCXdoaWxlICgqdGVtcF9tb2RpZmllcnMrKyAhPSBEUk1fRk9STUFUX01P RF9JTlZBTElEKQorCQkJZm9ybWF0X21vZGlmaWVyX2NvdW50Kys7CisJfQorCisJcGxhbmUtPm1v ZGlmaWVyX2NvdW50ID0gZm9ybWF0X21vZGlmaWVyX2NvdW50OworCXBsYW5lLT5tb2RpZmllcnMg PSBrbWFsbG9jX2FycmF5KGZvcm1hdF9tb2RpZmllcl9jb3VudCwKKwkJCQkJIHNpemVvZihmb3Jt YXRfbW9kaWZpZXJzWzBdKSwKKwkJCQkJIEdGUF9LRVJORUwpOworCisJaWYgKGZvcm1hdF9tb2Rp Zmllcl9jb3VudCAmJiAhcGxhbmUtPm1vZGlmaWVycykgeworCQlEUk1fREVCVUdfS01TKCJvdXQg b2YgbWVtb3J5IHdoZW4gYWxsb2NhdGluZyBwbGFuZVxuIik7CisJCWtmcmVlKHBsYW5lLT5mb3Jt YXRfdHlwZXMpOworCQlkcm1fbW9kZV9vYmplY3RfdW5yZWdpc3RlcihkZXYsICZwbGFuZS0+YmFz ZSk7CisJCXJldHVybiAtRU5PTUVNOworCX0KKwogCWlmIChuYW1lKSB7CiAJCXZhX2xpc3QgYXA7 CiAKQEAgLTExNywxMiArMTQ2LDE1IEBAIGludCBkcm1fdW5pdmVyc2FsX3BsYW5lX2luaXQoc3Ry dWN0IGRybV9kZXZpY2UgKmRldiwgc3RydWN0IGRybV9wbGFuZSAqcGxhbmUsCiAJfQogCWlmICgh cGxhbmUtPm5hbWUpIHsKIAkJa2ZyZWUocGxhbmUtPmZvcm1hdF90eXBlcyk7CisJCWtmcmVlKHBs YW5lLT5tb2RpZmllcnMpOwogCQlkcm1fbW9kZV9vYmplY3RfdW5yZWdpc3RlcihkZXYsICZwbGFu ZS0+YmFzZSk7CiAJCXJldHVybiAtRU5PTUVNOwogCX0KIAogCW1lbWNweShwbGFuZS0+Zm9ybWF0 X3R5cGVzLCBmb3JtYXRzLCBmb3JtYXRfY291bnQgKiBzaXplb2YodWludDMyX3QpKTsKIAlwbGFu ZS0+Zm9ybWF0X2NvdW50ID0gZm9ybWF0X2NvdW50OworCW1lbWNweShwbGFuZS0+bW9kaWZpZXJz LCBmb3JtYXRfbW9kaWZpZXJzLAorCSAgICAgICBmb3JtYXRfbW9kaWZpZXJfY291bnQgKiBzaXpl b2YoZm9ybWF0X21vZGlmaWVyc1swXSkpOwogCXBsYW5lLT5wb3NzaWJsZV9jcnRjcyA9IHBvc3Np YmxlX2NydGNzOwogCXBsYW5lLT50eXBlID0gdHlwZTsKIApAQCAtMjA1LDcgKzIzNyw4IEBAIGlu dCBkcm1fcGxhbmVfaW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBzdHJ1Y3QgZHJtX3BsYW5l ICpwbGFuZSwKIAogCXR5cGUgPSBpc19wcmltYXJ5ID8gRFJNX1BMQU5FX1RZUEVfUFJJTUFSWSA6 IERSTV9QTEFORV9UWVBFX09WRVJMQVk7CiAJcmV0dXJuIGRybV91bml2ZXJzYWxfcGxhbmVfaW5p dChkZXYsIHBsYW5lLCBwb3NzaWJsZV9jcnRjcywgZnVuY3MsCi0JCQkJCWZvcm1hdHMsIGZvcm1h dF9jb3VudCwgdHlwZSwgTlVMTCk7CisJCQkJCWZvcm1hdHMsIGZvcm1hdF9jb3VudCwKKwkJCQkJ TlVMTCwgdHlwZSwgTlVMTCk7CiB9CiBFWFBPUlRfU1lNQk9MKGRybV9wbGFuZV9pbml0KTsKIApA QCAtMjI0LDYgKzI1Nyw3IEBAIHZvaWQgZHJtX3BsYW5lX2NsZWFudXAoc3RydWN0IGRybV9wbGFu ZSAqcGxhbmUpCiAJZHJtX21vZGVzZXRfbG9ja19maW5pKCZwbGFuZS0+bXV0ZXgpOwogCiAJa2Zy ZWUocGxhbmUtPmZvcm1hdF90eXBlcyk7CisJa2ZyZWUocGxhbmUtPm1vZGlmaWVycyk7CiAJZHJt X21vZGVfb2JqZWN0X3VucmVnaXN0ZXIoZGV2LCAmcGxhbmUtPmJhc2UpOwogCiAJQlVHX09OKGxp c3RfZW1wdHkoJnBsYW5lLT5oZWFkKSk7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZHJt X3NpbXBsZV9rbXNfaGVscGVyLmMgYi9kcml2ZXJzL2dwdS9kcm0vZHJtX3NpbXBsZV9rbXNfaGVs cGVyLmMKaW5kZXggMzljMjAzYWQ1OWRiLi5kYzlmZDEwOWRlMTQgMTAwNjQ0Ci0tLSBhL2RyaXZl cnMvZ3B1L2RybS9kcm1fc2ltcGxlX2ttc19oZWxwZXIuYworKysgYi9kcml2ZXJzL2dwdS9kcm0v ZHJtX3NpbXBsZV9rbXNfaGVscGVyLmMKQEAgLTE5OSw2ICsxOTksNyBAQCBFWFBPUlRfU1lNQk9M KGRybV9zaW1wbGVfZGlzcGxheV9waXBlX2F0dGFjaF9icmlkZ2UpOwogICogQGZ1bmNzOiBjYWxs YmFja3MgZm9yIHRoZSBkaXNwbGF5IHBpcGUgKG9wdGlvbmFsKQogICogQGZvcm1hdHM6IGFycmF5 IG9mIHN1cHBvcnRlZCBmb3JtYXRzIChEUk1fRk9STUFUXF9cKikKICAqIEBmb3JtYXRfY291bnQ6 IG51bWJlciBvZiBlbGVtZW50cyBpbiBAZm9ybWF0cworICogQGZvcm1hdF9tb2RpZmllcnM6IGFy cmF5IG9mIGZvcm1hdHMgbW9kaWZpZXJzCiAgKiBAY29ubmVjdG9yOiBjb25uZWN0b3IgdG8gYXR0 YWNoIGFuZCByZWdpc3RlciAob3B0aW9uYWwpCiAgKgogICogU2V0cyB1cCBhIGRpc3BsYXkgcGlw ZWxpbmUgd2hpY2ggY29uc2lzdCBvZiBhIHJlYWxseSBzaW1wbGUKQEAgLTIxOSw2ICsyMjAsNyBA QCBpbnQgZHJtX3NpbXBsZV9kaXNwbGF5X3BpcGVfaW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2 LAogCQkJc3RydWN0IGRybV9zaW1wbGVfZGlzcGxheV9waXBlICpwaXBlLAogCQkJY29uc3Qgc3Ry dWN0IGRybV9zaW1wbGVfZGlzcGxheV9waXBlX2Z1bmNzICpmdW5jcywKIAkJCWNvbnN0IHVpbnQz Ml90ICpmb3JtYXRzLCB1bnNpZ25lZCBpbnQgZm9ybWF0X2NvdW50LAorCQkJY29uc3QgdWludDY0 X3QgKmZvcm1hdF9tb2RpZmllcnMsCiAJCQlzdHJ1Y3QgZHJtX2Nvbm5lY3RvciAqY29ubmVjdG9y KQogewogCXN0cnVjdCBkcm1fZW5jb2RlciAqZW5jb2RlciA9ICZwaXBlLT5lbmNvZGVyOwpAQCAt MjMzLDYgKzIzNSw3IEBAIGludCBkcm1fc2ltcGxlX2Rpc3BsYXlfcGlwZV9pbml0KHN0cnVjdCBk cm1fZGV2aWNlICpkZXYsCiAJcmV0ID0gZHJtX3VuaXZlcnNhbF9wbGFuZV9pbml0KGRldiwgcGxh bmUsIDAsCiAJCQkJICAgICAgICZkcm1fc2ltcGxlX2ttc19wbGFuZV9mdW5jcywKIAkJCQkgICAg ICAgZm9ybWF0cywgZm9ybWF0X2NvdW50LAorCQkJCSAgICAgICBmb3JtYXRfbW9kaWZpZXJzLAog CQkJCSAgICAgICBEUk1fUExBTkVfVFlQRV9QUklNQVJZLCBOVUxMKTsKIAlpZiAocmV0KQogCQly ZXR1cm4gcmV0OwpkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL2V4eW5vcy9leHlub3NfZHJt X3BsYW5lLmMgYi9kcml2ZXJzL2dwdS9kcm0vZXh5bm9zL2V4eW5vc19kcm1fcGxhbmUuYwppbmRl eCA2MTFiNmZkNjU0MzMuLmU1MDk5YmM5ZjIxYSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJt L2V4eW5vcy9leHlub3NfZHJtX3BsYW5lLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL2V4eW5vcy9l eHlub3NfZHJtX3BsYW5lLmMKQEAgLTI4Myw3ICsyODMsNyBAQCBpbnQgZXh5bm9zX3BsYW5lX2lu aXQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKIAkJCQkgICAgICAgJmV4eW5vc19wbGFuZV9mdW5j cywKIAkJCQkgICAgICAgY29uZmlnLT5waXhlbF9mb3JtYXRzLAogCQkJCSAgICAgICBjb25maWct Pm51bV9waXhlbF9mb3JtYXRzLAotCQkJCSAgICAgICBjb25maWctPnR5cGUsIE5VTEwpOworCQkJ CSAgICAgICBOVUxMLCBjb25maWctPnR5cGUsIE5VTEwpOwogCWlmIChlcnIpIHsKIAkJRFJNX0VS Uk9SKCJmYWlsZWQgdG8gaW5pdGlhbGl6ZSBwbGFuZVxuIik7CiAJCXJldHVybiBlcnI7CmRpZmYg LS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vZnNsLWRjdS9mc2xfZGN1X2RybV9wbGFuZS5jIGIvZHJp dmVycy9ncHUvZHJtL2ZzbC1kY3UvZnNsX2RjdV9kcm1fcGxhbmUuYwppbmRleCAwYTIwNzIzYWE2 ZTEuLjk1NTRiMjQ1NzQ2ZSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2ZzbC1kY3UvZnNs X2RjdV9kcm1fcGxhbmUuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vZnNsLWRjdS9mc2xfZGN1X2Ry bV9wbGFuZS5jCkBAIC0yMjQsNyArMjI0LDcgQEAgc3RydWN0IGRybV9wbGFuZSAqZnNsX2RjdV9k cm1fcHJpbWFyeV9jcmVhdGVfcGxhbmUoc3RydWN0IGRybV9kZXZpY2UgKmRldikKIAkJCQkgICAg ICAgJmZzbF9kY3VfZHJtX3BsYW5lX2Z1bmNzLAogCQkJCSAgICAgICBmc2xfZGN1X2RybV9wbGFu ZV9mb3JtYXRzLAogCQkJCSAgICAgICBBUlJBWV9TSVpFKGZzbF9kY3VfZHJtX3BsYW5lX2Zvcm1h dHMpLAotCQkJCSAgICAgICBEUk1fUExBTkVfVFlQRV9QUklNQVJZLCBOVUxMKTsKKwkJCQkgICAg ICAgTlVMTCwgRFJNX1BMQU5FX1RZUEVfUFJJTUFSWSwgTlVMTCk7CiAJaWYgKHJldCkgewogCQlr ZnJlZShwcmltYXJ5KTsKIAkJcHJpbWFyeSA9IE5VTEw7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dw dS9kcm0vaGlzaWxpY29uL2hpYm1jL2hpYm1jX2RybV9kZS5jIGIvZHJpdmVycy9ncHUvZHJtL2hp c2lsaWNvbi9oaWJtYy9oaWJtY19kcm1fZGUuYwppbmRleCA1NGE0NTQyYTQwZjEuLmJlYzBhODcy NmM2YiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2hpc2lsaWNvbi9oaWJtYy9oaWJtY19k cm1fZGUuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaGlzaWxpY29uL2hpYm1jL2hpYm1jX2RybV9k ZS5jCkBAIC0xODEsNiArMTgxLDcgQEAgc3RhdGljIHN0cnVjdCBkcm1fcGxhbmUgKmhpYm1jX3Bs YW5lX2luaXQoc3RydWN0IGhpYm1jX2RybV9wcml2YXRlICpwcml2KQogCXJldCA9IGRybV91bml2 ZXJzYWxfcGxhbmVfaW5pdChkZXYsIHBsYW5lLCAxLCAmaGlibWNfcGxhbmVfZnVuY3MsCiAJCQkJ ICAgICAgIGNoYW5uZWxfZm9ybWF0czEsCiAJCQkJICAgICAgIEFSUkFZX1NJWkUoY2hhbm5lbF9m b3JtYXRzMSksCisJCQkJICAgICAgIE5VTEwsCiAJCQkJICAgICAgIERSTV9QTEFORV9UWVBFX1BS SU1BUlksCiAJCQkJICAgICAgIE5VTEwpOwogCWlmIChyZXQpIHsKZGlmZiAtLWdpdCBhL2RyaXZl cnMvZ3B1L2RybS9oaXNpbGljb24va2lyaW4va2lyaW5fZHJtX2FkZS5jIGIvZHJpdmVycy9ncHUv ZHJtL2hpc2lsaWNvbi9raXJpbi9raXJpbl9kcm1fYWRlLmMKaW5kZXggNzA2ZWZkMGM0MTkwLi45 ODgyZWJkODc1MWMgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9oaXNpbGljb24va2lyaW4v a2lyaW5fZHJtX2FkZS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9oaXNpbGljb24va2lyaW4va2ly aW5fZHJtX2FkZS5jCkBAIC05MTAsNyArOTEwLDcgQEAgc3RhdGljIGludCBhZGVfcGxhbmVfaW5p dChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LCBzdHJ1Y3QgYWRlX3BsYW5lICphcGxhbmUsCiAJCXJl dHVybiByZXQ7CiAKIAlyZXQgPSBkcm1fdW5pdmVyc2FsX3BsYW5lX2luaXQoZGV2LCAmYXBsYW5l LT5iYXNlLCAxLCAmYWRlX3BsYW5lX2Z1bmNzLAotCQkJCSAgICAgICBmbXRzLCBmbXRzX2NudCwg dHlwZSwgTlVMTCk7CisJCQkJICAgICAgIGZtdHMsIGZtdHNfY250LCBOVUxMLCB0eXBlLCBOVUxM KTsKIAlpZiAocmV0KSB7CiAJCURSTV9FUlJPUigiZmFpbCB0byBpbml0IHBsYW5lLCBjaD0lZFxu IiwgYXBsYW5lLT5jaCk7CiAJCXJldHVybiByZXQ7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9k cm0vaTkxNS9pbnRlbF9kaXNwbGF5LmMgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9kaXNw bGF5LmMKaW5kZXggN2U4MDJjYjg3ZjQ2Li4yOGU1ZjM1MGRiMDIgMTAwNjQ0Ci0tLSBhL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX2Rpc3BsYXkuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vaTkx NS9pbnRlbF9kaXNwbGF5LmMKQEAgLTEzMDE5LDE4ICsxMzAxOSwyMSBAQCBpbnRlbF9wcmltYXJ5 X3BsYW5lX2NyZWF0ZShzdHJ1Y3QgZHJtX2k5MTVfcHJpdmF0ZSAqZGV2X3ByaXYsIGVudW0gcGlw ZSBwaXBlKQogCQlyZXQgPSBkcm1fdW5pdmVyc2FsX3BsYW5lX2luaXQoJmRldl9wcml2LT5kcm0s ICZwcmltYXJ5LT5iYXNlLAogCQkJCQkgICAgICAgMCwgJmludGVsX3BsYW5lX2Z1bmNzLAogCQkJ CQkgICAgICAgaW50ZWxfcHJpbWFyeV9mb3JtYXRzLCBudW1fZm9ybWF0cywKKwkJCQkJICAgICAg IE5VTEwsCiAJCQkJCSAgICAgICBEUk1fUExBTkVfVFlQRV9QUklNQVJZLAogCQkJCQkgICAgICAg InBsYW5lIDElYyIsIHBpcGVfbmFtZShwaXBlKSk7CiAJZWxzZSBpZiAoSU5URUxfR0VOKGRldl9w cml2KSA+PSA1IHx8IElTX0c0WChkZXZfcHJpdikpCiAJCXJldCA9IGRybV91bml2ZXJzYWxfcGxh bmVfaW5pdCgmZGV2X3ByaXYtPmRybSwgJnByaW1hcnktPmJhc2UsCiAJCQkJCSAgICAgICAwLCAm aW50ZWxfcGxhbmVfZnVuY3MsCiAJCQkJCSAgICAgICBpbnRlbF9wcmltYXJ5X2Zvcm1hdHMsIG51 bV9mb3JtYXRzLAorCQkJCQkgICAgICAgTlVMTCwKIAkJCQkJICAgICAgIERSTV9QTEFORV9UWVBF X1BSSU1BUlksCiAJCQkJCSAgICAgICAicHJpbWFyeSAlYyIsIHBpcGVfbmFtZShwaXBlKSk7CiAJ ZWxzZQogCQlyZXQgPSBkcm1fdW5pdmVyc2FsX3BsYW5lX2luaXQoJmRldl9wcml2LT5kcm0sICZw cmltYXJ5LT5iYXNlLAogCQkJCQkgICAgICAgMCwgJmludGVsX3BsYW5lX2Z1bmNzLAogCQkJCQkg ICAgICAgaW50ZWxfcHJpbWFyeV9mb3JtYXRzLCBudW1fZm9ybWF0cywKKwkJCQkJICAgICAgIE5V TEwsCiAJCQkJCSAgICAgICBEUk1fUExBTkVfVFlQRV9QUklNQVJZLAogCQkJCQkgICAgICAgInBs YW5lICVjIiwgcGxhbmVfbmFtZShwcmltYXJ5LT5wbGFuZSkpOwogCWlmIChyZXQpCkBAIC0xMzEx Niw3ICsxMzExOSw3IEBAIGludGVsX2N1cnNvcl9wbGFuZV9jcmVhdGUoc3RydWN0IGRybV9pOTE1 X3ByaXZhdGUgKmRldl9wcml2LAogCQkJCSAgICAgICAwLCAmaW50ZWxfY3Vyc29yX3BsYW5lX2Z1 bmNzLAogCQkJCSAgICAgICBpbnRlbF9jdXJzb3JfZm9ybWF0cywKIAkJCQkgICAgICAgQVJSQVlf U0laRShpbnRlbF9jdXJzb3JfZm9ybWF0cyksCi0JCQkJICAgICAgIERSTV9QTEFORV9UWVBFX0NV UlNPUiwKKwkJCQkgICAgICAgTlVMTCwgRFJNX1BMQU5FX1RZUEVfQ1VSU09SLAogCQkJCSAgICAg ICAiY3Vyc29yICVjIiwgcGlwZV9uYW1lKHBpcGUpKTsKIAlpZiAocmV0KQogCQlnb3RvIGZhaWw7 CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9zcHJpdGUuYyBiL2RyaXZl cnMvZ3B1L2RybS9pOTE1L2ludGVsX3Nwcml0ZS5jCmluZGV4IDNkNzA0YmQ3MmUyYS4uNGJmMGQz ZTRhZDkxIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9zcHJpdGUuYwor KysgYi9kcml2ZXJzL2dwdS9kcm0vaTkxNS9pbnRlbF9zcHJpdGUuYwpAQCAtMTE3MCwxMyArMTE3 MCwxMyBAQCBpbnRlbF9zcHJpdGVfcGxhbmVfY3JlYXRlKHN0cnVjdCBkcm1faTkxNV9wcml2YXRl ICpkZXZfcHJpdiwKIAkJcmV0ID0gZHJtX3VuaXZlcnNhbF9wbGFuZV9pbml0KCZkZXZfcHJpdi0+ ZHJtLCAmaW50ZWxfcGxhbmUtPmJhc2UsCiAJCQkJCSAgICAgICBwb3NzaWJsZV9jcnRjcywgJmlu dGVsX3BsYW5lX2Z1bmNzLAogCQkJCQkgICAgICAgcGxhbmVfZm9ybWF0cywgbnVtX3BsYW5lX2Zv cm1hdHMsCi0JCQkJCSAgICAgICBEUk1fUExBTkVfVFlQRV9PVkVSTEFZLAorCQkJCQkgICAgICAg TlVMTCwgRFJNX1BMQU5FX1RZUEVfT1ZFUkxBWSwKIAkJCQkJICAgICAgICJwbGFuZSAlZCVjIiwg cGxhbmUgKyAyLCBwaXBlX25hbWUocGlwZSkpOwogCWVsc2UKIAkJcmV0ID0gZHJtX3VuaXZlcnNh bF9wbGFuZV9pbml0KCZkZXZfcHJpdi0+ZHJtLCAmaW50ZWxfcGxhbmUtPmJhc2UsCiAJCQkJCSAg ICAgICBwb3NzaWJsZV9jcnRjcywgJmludGVsX3BsYW5lX2Z1bmNzLAogCQkJCQkgICAgICAgcGxh bmVfZm9ybWF0cywgbnVtX3BsYW5lX2Zvcm1hdHMsCi0JCQkJCSAgICAgICBEUk1fUExBTkVfVFlQ RV9PVkVSTEFZLAorCQkJCQkgICAgICAgTlVMTCwgRFJNX1BMQU5FX1RZUEVfT1ZFUkxBWSwKIAkJ CQkJICAgICAgICJzcHJpdGUgJWMiLCBzcHJpdGVfbmFtZShwaXBlLCBwbGFuZSkpOwogCWlmIChy ZXQpCiAJCWdvdG8gZmFpbDsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9pbXgvaXB1djMt cGxhbmUuYyBiL2RyaXZlcnMvZ3B1L2RybS9pbXgvaXB1djMtcGxhbmUuYwppbmRleCAwODQ3Y2Mw ZDk2YTQuLmRlYmRlMmRhZTdiZiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2lteC9pcHV2 My1wbGFuZS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9pbXgvaXB1djMtcGxhbmUuYwpAQCAtNzE4 LDggKzcxOCw4IEBAIHN0cnVjdCBpcHVfcGxhbmUgKmlwdV9wbGFuZV9pbml0KHN0cnVjdCBkcm1f ZGV2aWNlICpkZXYsIHN0cnVjdCBpcHVfc29jICppcHUsCiAKIAlyZXQgPSBkcm1fdW5pdmVyc2Fs X3BsYW5lX2luaXQoZGV2LCAmaXB1X3BsYW5lLT5iYXNlLCBwb3NzaWJsZV9jcnRjcywKIAkJCQkg ICAgICAgJmlwdV9wbGFuZV9mdW5jcywgaXB1X3BsYW5lX2Zvcm1hdHMsCi0JCQkJICAgICAgIEFS UkFZX1NJWkUoaXB1X3BsYW5lX2Zvcm1hdHMpLCB0eXBlLAotCQkJCSAgICAgICBOVUxMKTsKKwkJ CQkgICAgICAgQVJSQVlfU0laRShpcHVfcGxhbmVfZm9ybWF0cyksCisJCQkJICAgICAgIE5VTEws IHR5cGUsIE5VTEwpOwogCWlmIChyZXQpIHsKIAkJRFJNX0VSUk9SKCJmYWlsZWQgdG8gaW5pdGlh bGl6ZSBwbGFuZVxuIik7CiAJCWtmcmVlKGlwdV9wbGFuZSk7CmRpZmYgLS1naXQgYS9kcml2ZXJz L2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2RybV9wbGFuZS5jIGIvZHJpdmVycy9ncHUvZHJtL21lZGlh dGVrL210a19kcm1fcGxhbmUuYwppbmRleCAxYTU5YjlhYjRhYTguLjZmMTIxODkxNDMwZiAxMDA2 NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL21lZGlhdGVrL210a19kcm1fcGxhbmUuYworKysgYi9k cml2ZXJzL2dwdS9kcm0vbWVkaWF0ZWsvbXRrX2RybV9wbGFuZS5jCkBAIC0xNzUsNyArMTc1LDcg QEAgaW50IG10a19wbGFuZV9pbml0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHN0cnVjdCBkcm1f cGxhbmUgKnBsYW5lLAogCiAJZXJyID0gZHJtX3VuaXZlcnNhbF9wbGFuZV9pbml0KGRldiwgcGxh bmUsIHBvc3NpYmxlX2NydGNzLAogCQkJCSAgICAgICAmbXRrX3BsYW5lX2Z1bmNzLCBmb3JtYXRz LAotCQkJCSAgICAgICBBUlJBWV9TSVpFKGZvcm1hdHMpLCB0eXBlLCBOVUxMKTsKKwkJCQkgICAg ICAgQVJSQVlfU0laRShmb3JtYXRzKSwgTlVMTCwgdHlwZSwgTlVMTCk7CiAJaWYgKGVycikgewog CQlEUk1fRVJST1IoImZhaWxlZCB0byBpbml0aWFsaXplIHBsYW5lXG4iKTsKIAkJcmV0dXJuIGVy cjsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9tZXNvbi9tZXNvbl9wbGFuZS5jIGIvZHJp dmVycy9ncHUvZHJtL21lc29uL21lc29uX3BsYW5lLmMKaW5kZXggYTMyZDNiNmUyZTEyLi4xN2U5 NmZhNDc4NjggMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tZXNvbi9tZXNvbl9wbGFuZS5j CisrKyBiL2RyaXZlcnMvZ3B1L2RybS9tZXNvbi9tZXNvbl9wbGFuZS5jCkBAIC0yMjMsNiArMjIz LDcgQEAgaW50IG1lc29uX3BsYW5lX2NyZWF0ZShzdHJ1Y3QgbWVzb25fZHJtICpwcml2KQogCQkJ CSAmbWVzb25fcGxhbmVfZnVuY3MsCiAJCQkJIHN1cHBvcnRlZF9kcm1fZm9ybWF0cywKIAkJCQkg QVJSQVlfU0laRShzdXBwb3J0ZWRfZHJtX2Zvcm1hdHMpLAorCQkJCSBOVUxMLAogCQkJCSBEUk1f UExBTkVfVFlQRV9QUklNQVJZLCAibWVzb25fcHJpbWFyeV9wbGFuZSIpOwogCiAJZHJtX3BsYW5l X2hlbHBlcl9hZGQocGxhbmUsICZtZXNvbl9wbGFuZV9oZWxwZXJfZnVuY3MpOwpkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL21zbS9tZHAvbWRwNC9tZHA0X3BsYW5lLmMgYi9kcml2ZXJzL2dw dS9kcm0vbXNtL21kcC9tZHA0L21kcDRfcGxhbmUuYwppbmRleCBhMjBlM2Q2NDQ1MjMuLjdhMWFk M2FmMDhlMyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL21zbS9tZHAvbWRwNC9tZHA0X3Bs YW5lLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL21zbS9tZHAvbWRwNC9tZHA0X3BsYW5lLmMKQEAg LTQwMSw3ICs0MDEsNyBAQCBzdHJ1Y3QgZHJtX3BsYW5lICptZHA0X3BsYW5lX2luaXQoc3RydWN0 IGRybV9kZXZpY2UgKmRldiwKIAl0eXBlID0gcHJpdmF0ZV9wbGFuZSA/IERSTV9QTEFORV9UWVBF X1BSSU1BUlkgOiBEUk1fUExBTkVfVFlQRV9PVkVSTEFZOwogCXJldCA9IGRybV91bml2ZXJzYWxf cGxhbmVfaW5pdChkZXYsIHBsYW5lLCAweGZmLCAmbWRwNF9wbGFuZV9mdW5jcywKIAkJCQkgbWRw NF9wbGFuZS0+Zm9ybWF0cywgbWRwNF9wbGFuZS0+bmZvcm1hdHMsCi0JCQkJIHR5cGUsIE5VTEwp OworCQkJCSBOVUxMLCB0eXBlLCBOVUxMKTsKIAlpZiAocmV0KQogCQlnb3RvIGZhaWw7CiAKZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9tc20vbWRwL21kcDUvbWRwNV9wbGFuZS5jIGIvZHJp dmVycy9ncHUvZHJtL21zbS9tZHAvbWRwNS9tZHA1X3BsYW5lLmMKaW5kZXggZmUzYTRkZTFhNDMz Li42MWRmZWE3OTFmM2YgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9tc20vbWRwL21kcDUv bWRwNV9wbGFuZS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9tc20vbWRwL21kcDUvbWRwNV9wbGFu ZS5jCkBAIC0xMTM5LDEyICsxMTM5LDEyIEBAIHN0cnVjdCBkcm1fcGxhbmUgKm1kcDVfcGxhbmVf aW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAogCQlyZXQgPSBkcm1fdW5pdmVyc2FsX3BsYW5l X2luaXQoZGV2LCBwbGFuZSwgMHhmZiwKIAkJCQkmbWRwNV9jdXJzb3JfcGxhbmVfZnVuY3MsCiAJ CQkJbWRwNV9wbGFuZS0+Zm9ybWF0cywgbWRwNV9wbGFuZS0+bmZvcm1hdHMsCi0JCQkJdHlwZSwg TlVMTCk7CisJCQkJTlVMTCwgdHlwZSwgTlVMTCk7CiAJZWxzZQogCQlyZXQgPSBkcm1fdW5pdmVy c2FsX3BsYW5lX2luaXQoZGV2LCBwbGFuZSwgMHhmZiwKIAkJCQkmbWRwNV9wbGFuZV9mdW5jcywK IAkJCQltZHA1X3BsYW5lLT5mb3JtYXRzLCBtZHA1X3BsYW5lLT5uZm9ybWF0cywKLQkJCQl0eXBl LCBOVUxMKTsKKwkJCQlOVUxMLCB0eXBlLCBOVUxMKTsKIAlpZiAocmV0KQogCQlnb3RvIGZhaWw7 CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9teHNmYi9teHNmYl9kcnYuYyBiL2RyaXZl cnMvZ3B1L2RybS9teHNmYi9teHNmYl9kcnYuYwppbmRleCBhMzRmNDFjZTM1OTkuLjkzYzM4ZWI2 ZDE4NyAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL214c2ZiL214c2ZiX2Rydi5jCisrKyBi L2RyaXZlcnMvZ3B1L2RybS9teHNmYi9teHNmYl9kcnYuYwpAQCAtMTkwLDcgKzE5MCw3IEBAIHN0 YXRpYyBpbnQgbXhzZmJfbG9hZChzdHJ1Y3QgZHJtX2RldmljZSAqZHJtLCB1bnNpZ25lZCBsb25n IGZsYWdzKQogCX0KIAogCXJldCA9IGRybV9zaW1wbGVfZGlzcGxheV9waXBlX2luaXQoZHJtLCAm bXhzZmItPnBpcGUsICZteHNmYl9mdW5jcywKLQkJCW14c2ZiX2Zvcm1hdHMsIEFSUkFZX1NJWkUo bXhzZmJfZm9ybWF0cyksCisJCQlteHNmYl9mb3JtYXRzLCBBUlJBWV9TSVpFKG14c2ZiX2Zvcm1h dHMpLCBOVUxMLAogCQkJJm14c2ZiLT5jb25uZWN0b3IpOwogCWlmIChyZXQgPCAwKSB7CiAJCWRl dl9lcnIoZHJtLT5kZXYsICJDYW5ub3Qgc2V0dXAgc2ltcGxlIGRpc3BsYXkgcGlwZVxuIik7CmRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vbm91dmVhdS9udjUwX2Rpc3BsYXkuYyBiL2RyaXZl cnMvZ3B1L2RybS9ub3V2ZWF1L252NTBfZGlzcGxheS5jCmluZGV4IDc0N2M5OWMxZTQ3NC4uYmIz YzJjZGNiMDY3IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vbm91dmVhdS9udjUwX2Rpc3Bs YXkuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vbm91dmVhdS9udjUwX2Rpc3BsYXkuYwpAQCAtMTA4 Myw4ICsxMDgzLDkgQEAgbnY1MF93bmR3X2N0b3IoY29uc3Qgc3RydWN0IG52NTBfd25kd19mdW5j ICpmdW5jLCBzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAogCXduZHctPmZ1bmMgPSBmdW5jOwogCXdu ZHctPmRtYWMgPSBkbWFjOwogCi0JcmV0ID0gZHJtX3VuaXZlcnNhbF9wbGFuZV9pbml0KGRldiwg JnduZHctPnBsYW5lLCAwLCAmbnY1MF93bmR3LCBmb3JtYXQsCi0JCQkJICAgICAgIG5mb3JtYXQs IHR5cGUsICIlcy0lZCIsIG5hbWUsIGluZGV4KTsKKwlyZXQgPSBkcm1fdW5pdmVyc2FsX3BsYW5l X2luaXQoZGV2LCAmd25kdy0+cGxhbmUsIDAsICZudjUwX3duZHcsCisJCQkJICAgICAgIGZvcm1h dCwgbmZvcm1hdCwgTlVMTCwKKwkJCQkgICAgICAgdHlwZSwgIiVzLSVkIiwgbmFtZSwgaW5kZXgp OwogCWlmIChyZXQpCiAJCXJldHVybiByZXQ7CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS9vbWFwZHJtL29tYXBfcGxhbmUuYyBiL2RyaXZlcnMvZ3B1L2RybS9vbWFwZHJtL29tYXBfcGxh bmUuYwppbmRleCAyMTYwZjY0NTQ4ZTAuLmI5MmE4ZjFkMDE1NSAxMDA2NDQKLS0tIGEvZHJpdmVy cy9ncHUvZHJtL29tYXBkcm0vb21hcF9wbGFuZS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9vbWFw ZHJtL29tYXBfcGxhbmUuYwpAQCAtMjkxLDcgKzI5MSw3IEBAIHN0cnVjdCBkcm1fcGxhbmUgKm9t YXBfcGxhbmVfaW5pdChzdHJ1Y3QgZHJtX2RldmljZSAqZGV2LAogCiAJcmV0ID0gZHJtX3VuaXZl cnNhbF9wbGFuZV9pbml0KGRldiwgcGxhbmUsIHBvc3NpYmxlX2NydGNzLAogCQkJCSAgICAgICAm b21hcF9wbGFuZV9mdW5jcywgZm9ybWF0cywKLQkJCQkgICAgICAgbmZvcm1hdHMsIHR5cGUsIE5V TEwpOworCQkJCSAgICAgICBuZm9ybWF0cywgTlVMTCwgdHlwZSwgTlVMTCk7CiAJaWYgKHJldCA8 IDApCiAJCWdvdG8gZXJyb3I7CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9wbDExMS9w bDExMV9kaXNwbGF5LmMgYi9kcml2ZXJzL2dwdS9kcm0vcGwxMTEvcGwxMTFfZGlzcGxheS5jCmlu ZGV4IGM2Y2E0ZjFiYmQ0OS4uZjAxMzlmYTU4ZDU1IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9k cm0vcGwxMTEvcGwxMTFfZGlzcGxheS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9wbDExMS9wbDEx MV9kaXNwbGF5LmMKQEAgLTQ1Nyw3ICs0NTcsNyBAQCBpbnQgcGwxMTFfZGlzcGxheV9pbml0KHN0 cnVjdCBkcm1fZGV2aWNlICpkcm0pCiAJcmV0ID0gZHJtX3NpbXBsZV9kaXNwbGF5X3BpcGVfaW5p dChkcm0sICZwcml2LT5waXBlLAogCQkJCQkgICAmcGwxMTFfZGlzcGxheV9mdW5jcywKIAkJCQkJ ICAgZm9ybWF0cywgQVJSQVlfU0laRShmb3JtYXRzKSwKLQkJCQkJICAgJnByaXYtPmNvbm5lY3Rv ci5jb25uZWN0b3IpOworCQkJCQkgICBOVUxMLCAmcHJpdi0+Y29ubmVjdG9yLmNvbm5lY3Rvcik7 CiAJaWYgKHJldCkKIAkJcmV0dXJuIHJldDsKIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJt L3F4bC9xeGxfZGlzcGxheS5jIGIvZHJpdmVycy9ncHUvZHJtL3F4bC9xeGxfZGlzcGxheS5jCmlu ZGV4IDVlZWFlODljMTM4ZC4uMTRjNTYxM2I0Mzg4IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9k cm0vcXhsL3F4bF9kaXNwbGF5LmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL3F4bC9xeGxfZGlzcGxh eS5jCkBAIC03ODQsNyArNzg0LDcgQEAgc3RhdGljIHN0cnVjdCBkcm1fcGxhbmUgKnF4bF9jcmVh dGVfcGxhbmUoc3RydWN0IHF4bF9kZXZpY2UgKnFkZXYsCiAKIAllcnIgPSBkcm1fdW5pdmVyc2Fs X3BsYW5lX2luaXQoJnFkZXYtPmRkZXYsIHBsYW5lLCBwb3NzaWJsZV9jcnRjcywKIAkJCQkgICAg ICAgZnVuY3MsIGZvcm1hdHMsIG51bV9mb3JtYXRzLAotCQkJCSAgICAgICB0eXBlLCBOVUxMKTsK KwkJCQkgICAgICAgTlVMTCwgdHlwZSwgTlVMTCk7CiAJaWYgKGVycikKIAkJZ290byBmcmVlX3Bs YW5lOwogCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcmNhci1kdS9yY2FyX2R1X3BsYW5l LmMgYi9kcml2ZXJzL2dwdS9kcm0vcmNhci1kdS9yY2FyX2R1X3BsYW5lLmMKaW5kZXggZGNkZTYy ODhkYTZjLi4yYjAyZWNjYmZiNzAgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9yY2FyLWR1 L3JjYXJfZHVfcGxhbmUuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vcmNhci1kdS9yY2FyX2R1X3Bs YW5lLmMKQEAgLTc0Myw4ICs3NDMsOCBAQCBpbnQgcmNhcl9kdV9wbGFuZXNfaW5pdChzdHJ1Y3Qg cmNhcl9kdV9ncm91cCAqcmdycCkKIAogCQlyZXQgPSBkcm1fdW5pdmVyc2FsX3BsYW5lX2luaXQo cmNkdS0+ZGRldiwgJnBsYW5lLT5wbGFuZSwgY3J0Y3MsCiAJCQkJCSAgICAgICAmcmNhcl9kdV9w bGFuZV9mdW5jcywgZm9ybWF0cywKLQkJCQkJICAgICAgIEFSUkFZX1NJWkUoZm9ybWF0cyksIHR5 cGUsCi0JCQkJCSAgICAgICBOVUxMKTsKKwkJCQkJICAgICAgIEFSUkFZX1NJWkUoZm9ybWF0cyks CisJCQkJCSAgICAgICBOVUxMLCB0eXBlLCBOVUxMKTsKIAkJaWYgKHJldCA8IDApCiAJCQlyZXR1 cm4gcmV0OwogCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vcmNhci1kdS9yY2FyX2R1X3Zz cC5jIGIvZHJpdmVycy9ncHUvZHJtL3JjYXItZHUvcmNhcl9kdV92c3AuYwppbmRleCBmODcwNDQ1 ZWJjOGQuLjczNjJkODBkMjM2YiAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL3JjYXItZHUv cmNhcl9kdV92c3AuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vcmNhci1kdS9yY2FyX2R1X3ZzcC5j CkBAIC00MzksOCArNDM5LDggQEAgaW50IHJjYXJfZHVfdnNwX2luaXQoc3RydWN0IHJjYXJfZHVf dnNwICp2c3ApCiAJCQkJCSAgICAgICAxIDw8IHZzcC0+aW5kZXgsCiAJCQkJCSAgICAgICAmcmNh cl9kdV92c3BfcGxhbmVfZnVuY3MsCiAJCQkJCSAgICAgICBmb3JtYXRzX2ttcywKLQkJCQkJICAg ICAgIEFSUkFZX1NJWkUoZm9ybWF0c19rbXMpLCB0eXBlLAotCQkJCQkgICAgICAgTlVMTCk7CisJ CQkJCSAgICAgICBBUlJBWV9TSVpFKGZvcm1hdHNfa21zKSwKKwkJCQkJICAgICAgIE5VTEwsIHR5 cGUsIE5VTEwpOwogCQlpZiAocmV0IDwgMCkKIAkJCXJldHVybiByZXQ7CiAKZGlmZiAtLWdpdCBh L2RyaXZlcnMvZ3B1L2RybS9yb2NrY2hpcC9yb2NrY2hpcF9kcm1fdm9wLmMgYi9kcml2ZXJzL2dw dS9kcm0vcm9ja2NoaXAvcm9ja2NoaXBfZHJtX3ZvcC5jCmluZGV4IDk0MzRkNjE2YmMzNy4uMTAw MWYzMmEyNDhiIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vcm9ja2NoaXAvcm9ja2NoaXBf ZHJtX3ZvcC5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS9yb2NrY2hpcC9yb2NrY2hpcF9kcm1fdm9w LmMKQEAgLTEyOTMsNyArMTI5Myw3IEBAIHN0YXRpYyBpbnQgdm9wX2NyZWF0ZV9jcnRjKHN0cnVj dCB2b3AgKnZvcCkKIAkJCQkJICAgICAgIDAsICZ2b3BfcGxhbmVfZnVuY3MsCiAJCQkJCSAgICAg ICB3aW5fZGF0YS0+cGh5LT5kYXRhX2Zvcm1hdHMsCiAJCQkJCSAgICAgICB3aW5fZGF0YS0+cGh5 LT5uZm9ybWF0cywKLQkJCQkJICAgICAgIHdpbl9kYXRhLT50eXBlLCBOVUxMKTsKKwkJCQkJICAg ICAgIE5VTEwsIHdpbl9kYXRhLT50eXBlLCBOVUxMKTsKIAkJaWYgKHJldCkgewogCQkJRFJNX0RF Vl9FUlJPUih2b3AtPmRldiwgImZhaWxlZCB0byBpbml0IHBsYW5lICVkXG4iLAogCQkJCSAgICAg IHJldCk7CkBAIC0xMzMyLDcgKzEzMzIsNyBAQCBzdGF0aWMgaW50IHZvcF9jcmVhdGVfY3J0Yyhz dHJ1Y3Qgdm9wICp2b3ApCiAJCQkJCSAgICAgICAmdm9wX3BsYW5lX2Z1bmNzLAogCQkJCQkgICAg ICAgd2luX2RhdGEtPnBoeS0+ZGF0YV9mb3JtYXRzLAogCQkJCQkgICAgICAgd2luX2RhdGEtPnBo eS0+bmZvcm1hdHMsCi0JCQkJCSAgICAgICB3aW5fZGF0YS0+dHlwZSwgTlVMTCk7CisJCQkJCSAg ICAgICBOVUxMLCB3aW5fZGF0YS0+dHlwZSwgTlVMTCk7CiAJCWlmIChyZXQpIHsKIAkJCURSTV9E RVZfRVJST1Iodm9wLT5kZXYsICJmYWlsZWQgdG8gaW5pdCBvdmVybGF5ICVkXG4iLAogCQkJCSAg ICAgIHJldCk7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vc3RpL3N0aV9jdXJzb3IuYyBi L2RyaXZlcnMvZ3B1L2RybS9zdGkvc3RpX2N1cnNvci5jCmluZGV4IDViM2E0MWY3NGYyMS4uZjMx Y2JlODk4ZWIzIDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0vc3RpL3N0aV9jdXJzb3IuYwor KysgYi9kcml2ZXJzL2dwdS9kcm0vc3RpL3N0aV9jdXJzb3IuYwpAQCAtMzkyLDcgKzM5Miw3IEBA IHN0cnVjdCBkcm1fcGxhbmUgKnN0aV9jdXJzb3JfY3JlYXRlKHN0cnVjdCBkcm1fZGV2aWNlICpk cm1fZGV2LAogCQkJCSAgICAgICAmc3RpX2N1cnNvcl9wbGFuZV9oZWxwZXJzX2Z1bmNzLAogCQkJ CSAgICAgICBjdXJzb3Jfc3VwcG9ydGVkX2Zvcm1hdHMsCiAJCQkJICAgICAgIEFSUkFZX1NJWkUo Y3Vyc29yX3N1cHBvcnRlZF9mb3JtYXRzKSwKLQkJCQkgICAgICAgRFJNX1BMQU5FX1RZUEVfQ1VS U09SLCBOVUxMKTsKKwkJCQkgICAgICAgTlVMTCwgRFJNX1BMQU5FX1RZUEVfQ1VSU09SLCBOVUxM KTsKIAlpZiAocmVzKSB7CiAJCURSTV9FUlJPUigiRmFpbGVkIHRvIGluaXRpYWxpemUgdW5pdmVy c2FsIHBsYW5lXG4iKTsKIAkJZ290byBlcnJfcGxhbmU7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dw dS9kcm0vc3RpL3N0aV9nZHAuYyBiL2RyaXZlcnMvZ3B1L2RybS9zdGkvc3RpX2dkcC5jCmluZGV4 IDVlZTA1MDM5NDVjOC4uZGNlZWRiZTcwMmQ3IDEwMDY0NAotLS0gYS9kcml2ZXJzL2dwdS9kcm0v c3RpL3N0aV9nZHAuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vc3RpL3N0aV9nZHAuYwpAQCAtOTMx LDcgKzkzMSw3IEBAIHN0cnVjdCBkcm1fcGxhbmUgKnN0aV9nZHBfY3JlYXRlKHN0cnVjdCBkcm1f ZGV2aWNlICpkcm1fZGV2LAogCQkJCSAgICAgICAmc3RpX2dkcF9wbGFuZV9oZWxwZXJzX2Z1bmNz LAogCQkJCSAgICAgICBnZHBfc3VwcG9ydGVkX2Zvcm1hdHMsCiAJCQkJICAgICAgIEFSUkFZX1NJ WkUoZ2RwX3N1cHBvcnRlZF9mb3JtYXRzKSwKLQkJCQkgICAgICAgdHlwZSwgTlVMTCk7CisJCQkJ ICAgICAgIE5VTEwsIHR5cGUsIE5VTEwpOwogCWlmIChyZXMpIHsKIAkJRFJNX0VSUk9SKCJGYWls ZWQgdG8gaW5pdGlhbGl6ZSB1bml2ZXJzYWwgcGxhbmVcbiIpOwogCQlnb3RvIGVycjsKZGlmZiAt LWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9zdGkvc3RpX2hxdmRwLmMgYi9kcml2ZXJzL2dwdS9kcm0v c3RpL3N0aV9ocXZkcC5jCmluZGV4IDUzYTQ2ZGRhOGJkNS4uZjExMjMwODUzMTE2IDEwMDY0NAot LS0gYS9kcml2ZXJzL2dwdS9kcm0vc3RpL3N0aV9ocXZkcC5jCisrKyBiL2RyaXZlcnMvZ3B1L2Ry bS9zdGkvc3RpX2hxdmRwLmMKQEAgLTEyOTgsNyArMTI5OCw3IEBAIHN0YXRpYyBzdHJ1Y3QgZHJt X3BsYW5lICpzdGlfaHF2ZHBfY3JlYXRlKHN0cnVjdCBkcm1fZGV2aWNlICpkcm1fZGV2LAogCQkJ CSAgICAgICAmc3RpX2hxdmRwX3BsYW5lX2hlbHBlcnNfZnVuY3MsCiAJCQkJICAgICAgIGhxdmRw X3N1cHBvcnRlZF9mb3JtYXRzLAogCQkJCSAgICAgICBBUlJBWV9TSVpFKGhxdmRwX3N1cHBvcnRl ZF9mb3JtYXRzKSwKLQkJCQkgICAgICAgRFJNX1BMQU5FX1RZUEVfT1ZFUkxBWSwgTlVMTCk7CisJ CQkJICAgICAgIE5VTEwsIERSTV9QTEFORV9UWVBFX09WRVJMQVksIE5VTEwpOwogCWlmIChyZXMp IHsKIAkJRFJNX0VSUk9SKCJGYWlsZWQgdG8gaW5pdGlhbGl6ZSB1bml2ZXJzYWwgcGxhbmVcbiIp OwogCQlyZXR1cm4gTlVMTDsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS9zdG0vbHRkYy5j IGIvZHJpdmVycy9ncHUvZHJtL3N0bS9sdGRjLmMKaW5kZXggMDRjYzY2ZDZiOTZmLi5hZTllYjBm ZmYwNmIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS9zdG0vbHRkYy5jCisrKyBiL2RyaXZl cnMvZ3B1L2RybS9zdG0vbHRkYy5jCkBAIC03MzUsNyArNzM1LDcgQEAgc3RhdGljIHN0cnVjdCBk cm1fcGxhbmUgKmx0ZGNfcGxhbmVfY3JlYXRlKHN0cnVjdCBkcm1fZGV2aWNlICpkZGV2LAogCiAJ cmV0ID0gZHJtX3VuaXZlcnNhbF9wbGFuZV9pbml0KGRkZXYsIHBsYW5lLCBwb3NzaWJsZV9jcnRj cywKIAkJCQkgICAgICAgJmx0ZGNfcGxhbmVfZnVuY3MsIGZvcm1hdHMsIG5iX2ZtdCwKLQkJCQkg ICAgICAgdHlwZSwgTlVMTCk7CisJCQkJICAgICAgIE5VTEwsIHR5cGUsIE5VTEwpOwogCWlmIChy ZXQgPCAwKQogCQlyZXR1cm4gMDsKIApkaWZmIC0tZ2l0IGEvZHJpdmVycy9ncHUvZHJtL3N1bjRp L3N1bjRpX2xheWVyLmMgYi9kcml2ZXJzL2dwdS9kcm0vc3VuNGkvc3VuNGlfbGF5ZXIuYwppbmRl eCBlYWQ0ZjlkNGMxZWUuLmQ0NWYzYTFhMGEyOSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJt L3N1bjRpL3N1bjRpX2xheWVyLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL3N1bjRpL3N1bjRpX2xh eWVyLmMKQEAgLTExNSw3ICsxMTUsNyBAQCBzdGF0aWMgc3RydWN0IHN1bjRpX2xheWVyICpzdW40 aV9sYXllcl9pbml0X29uZShzdHJ1Y3QgZHJtX2RldmljZSAqZHJtLAogCXJldCA9IGRybV91bml2 ZXJzYWxfcGxhbmVfaW5pdChkcm0sICZsYXllci0+cGxhbmUsIDAsCiAJCQkJICAgICAgICZzdW40 aV9iYWNrZW5kX2xheWVyX2Z1bmNzLAogCQkJCSAgICAgICBwbGFuZS0+Zm9ybWF0cywgcGxhbmUt Pm5mb3JtYXRzLAotCQkJCSAgICAgICBwbGFuZS0+dHlwZSwgTlVMTCk7CisJCQkJICAgICAgIE5V TEwsIHBsYW5lLT50eXBlLCBOVUxMKTsKIAlpZiAocmV0KSB7CiAJCWRldl9lcnIoZHJtLT5kZXYs ICJDb3VsZG4ndCBpbml0aWFsaXplIGxheWVyXG4iKTsKIAkJcmV0dXJuIEVSUl9QVFIocmV0KTsK ZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS90ZWdyYS9kYy5jIGIvZHJpdmVycy9ncHUvZHJt L3RlZ3JhL2RjLmMKaW5kZXggMGNiOWI5MGUyZTY4Li40ZGYzOTExMmUzOGUgMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvZ3B1L2RybS90ZWdyYS9kYy5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS90ZWdyYS9k Yy5jCkBAIC02NzgsOCArNjc4LDggQEAgc3RhdGljIHN0cnVjdCBkcm1fcGxhbmUgKnRlZ3JhX2Rj X3ByaW1hcnlfcGxhbmVfY3JlYXRlKHN0cnVjdCBkcm1fZGV2aWNlICpkcm0sCiAKIAllcnIgPSBk cm1fdW5pdmVyc2FsX3BsYW5lX2luaXQoZHJtLCAmcGxhbmUtPmJhc2UsIHBvc3NpYmxlX2NydGNz LAogCQkJCSAgICAgICAmdGVncmFfcHJpbWFyeV9wbGFuZV9mdW5jcywgZm9ybWF0cywKLQkJCQkg ICAgICAgbnVtX2Zvcm1hdHMsIERSTV9QTEFORV9UWVBFX1BSSU1BUlksCi0JCQkJICAgICAgIE5V TEwpOworCQkJCSAgICAgICBudW1fZm9ybWF0cywgTlVMTCwKKwkJCQkgICAgICAgRFJNX1BMQU5F X1RZUEVfUFJJTUFSWSwgTlVMTCk7CiAJaWYgKGVyciA8IDApIHsKIAkJa2ZyZWUocGxhbmUpOwog CQlyZXR1cm4gRVJSX1BUUihlcnIpOwpAQCAtODQ0LDggKzg0NCw4IEBAIHN0YXRpYyBzdHJ1Y3Qg ZHJtX3BsYW5lICp0ZWdyYV9kY19jdXJzb3JfcGxhbmVfY3JlYXRlKHN0cnVjdCBkcm1fZGV2aWNl ICpkcm0sCiAKIAllcnIgPSBkcm1fdW5pdmVyc2FsX3BsYW5lX2luaXQoZHJtLCAmcGxhbmUtPmJh c2UsIDEgPDwgZGMtPnBpcGUsCiAJCQkJICAgICAgICZ0ZWdyYV9jdXJzb3JfcGxhbmVfZnVuY3Ms IGZvcm1hdHMsCi0JCQkJICAgICAgIG51bV9mb3JtYXRzLCBEUk1fUExBTkVfVFlQRV9DVVJTT1Is Ci0JCQkJICAgICAgIE5VTEwpOworCQkJCSAgICAgICBudW1fZm9ybWF0cywgTlVMTCwKKwkJCQkg ICAgICAgRFJNX1BMQU5FX1RZUEVfQ1VSU09SLCBOVUxMKTsKIAlpZiAoZXJyIDwgMCkgewogCQlr ZnJlZShwbGFuZSk7CiAJCXJldHVybiBFUlJfUFRSKGVycik7CkBAIC05MDYsOCArOTA2LDggQEAg c3RhdGljIHN0cnVjdCBkcm1fcGxhbmUgKnRlZ3JhX2RjX292ZXJsYXlfcGxhbmVfY3JlYXRlKHN0 cnVjdCBkcm1fZGV2aWNlICpkcm0sCiAKIAllcnIgPSBkcm1fdW5pdmVyc2FsX3BsYW5lX2luaXQo ZHJtLCAmcGxhbmUtPmJhc2UsIDEgPDwgZGMtPnBpcGUsCiAJCQkJICAgICAgICZ0ZWdyYV9vdmVy bGF5X3BsYW5lX2Z1bmNzLCBmb3JtYXRzLAotCQkJCSAgICAgICBudW1fZm9ybWF0cywgRFJNX1BM QU5FX1RZUEVfT1ZFUkxBWSwKLQkJCQkgICAgICAgTlVMTCk7CisJCQkJICAgICAgIG51bV9mb3Jt YXRzLCBOVUxMLAorCQkJCSAgICAgICBEUk1fUExBTkVfVFlQRV9PVkVSTEFZLCBOVUxMKTsKIAlp ZiAoZXJyIDwgMCkgewogCQlrZnJlZShwbGFuZSk7CiAJCXJldHVybiBFUlJfUFRSKGVycik7CmRp ZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vdGlueWRybS9jb3JlL3Rpbnlkcm0tcGlwZS5jIGIv ZHJpdmVycy9ncHUvZHJtL3Rpbnlkcm0vY29yZS90aW55ZHJtLXBpcGUuYwppbmRleCBlYzQzZmI3 YWQ5ZTQuLjI2ODIzYTRhMDdkOCAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL3Rpbnlkcm0v Y29yZS90aW55ZHJtLXBpcGUuYworKysgYi9kcml2ZXJzL2dwdS9kcm0vdGlueWRybS9jb3JlL3Rp bnlkcm0tcGlwZS5jCkBAIC0yMjUsNyArMjI1LDcgQEAgdGlueWRybV9kaXNwbGF5X3BpcGVfaW5p dChzdHJ1Y3QgdGlueWRybV9kZXZpY2UgKnRkZXYsCiAJCXJldHVybiBQVFJfRVJSKGNvbm5lY3Rv cik7CiAKIAlyZXQgPSBkcm1fc2ltcGxlX2Rpc3BsYXlfcGlwZV9pbml0KGRybSwgJnRkZXYtPnBp cGUsIGZ1bmNzLCBmb3JtYXRzLAotCQkJCQkgICBmb3JtYXRfY291bnQsIGNvbm5lY3Rvcik7CisJ CQkJCSAgIGZvcm1hdF9jb3VudCwgTlVMTCwgY29ubmVjdG9yKTsKIAlpZiAocmV0KQogCQlyZXR1 cm4gcmV0OwogCmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vdmM0L3ZjNF9wbGFuZS5jIGIv ZHJpdmVycy9ncHUvZHJtL3ZjNC92YzRfcGxhbmUuYwppbmRleCA4ODUzZTlhNGYwMDUuLjI5Njhi M2ViYjg5NSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL3ZjNC92YzRfcGxhbmUuYworKysg Yi9kcml2ZXJzL2dwdS9kcm0vdmM0L3ZjNF9wbGFuZS5jCkBAIC05MDIsNyArOTAyLDcgQEAgc3Ry dWN0IGRybV9wbGFuZSAqdmM0X3BsYW5lX2luaXQoc3RydWN0IGRybV9kZXZpY2UgKmRldiwKIAly ZXQgPSBkcm1fdW5pdmVyc2FsX3BsYW5lX2luaXQoZGV2LCBwbGFuZSwgMCwKIAkJCQkgICAgICAg JnZjNF9wbGFuZV9mdW5jcywKIAkJCQkgICAgICAgZm9ybWF0cywgbnVtX2Zvcm1hdHMsCi0JCQkJ ICAgICAgIHR5cGUsIE5VTEwpOworCQkJCSAgICAgICBOVUxMLCB0eXBlLCBOVUxMKTsKIAogCWRy bV9wbGFuZV9oZWxwZXJfYWRkKHBsYW5lLCAmdmM0X3BsYW5lX2hlbHBlcl9mdW5jcyk7CiAKZGlm ZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS92aXJ0aW8vdmlydGdwdV9wbGFuZS5jIGIvZHJpdmVy cy9ncHUvZHJtL3ZpcnRpby92aXJ0Z3B1X3BsYW5lLmMKaW5kZXggYWRjZGJkMGFiZWY2Li43MWJh NDU1YWY5MTUgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS92aXJ0aW8vdmlydGdwdV9wbGFu ZS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS92aXJ0aW8vdmlydGdwdV9wbGFuZS5jCkBAIC0yOTgs NyArMjk4LDcgQEAgc3RydWN0IGRybV9wbGFuZSAqdmlydGlvX2dwdV9wbGFuZV9pbml0KHN0cnVj dCB2aXJ0aW9fZ3B1X2RldmljZSAqdmdkZXYsCiAJcmV0ID0gZHJtX3VuaXZlcnNhbF9wbGFuZV9p bml0KGRldiwgcGxhbmUsIDEgPDwgaW5kZXgsCiAJCQkJICAgICAgICZ2aXJ0aW9fZ3B1X3BsYW5l X2Z1bmNzLAogCQkJCSAgICAgICBmb3JtYXRzLCBuZm9ybWF0cywKLQkJCQkgICAgICAgdHlwZSwg TlVMTCk7CisJCQkJICAgICAgIE5VTEwsIHR5cGUsIE5VTEwpOwogCWlmIChyZXQpCiAJCWdvdG8g ZXJyX3BsYW5lX2luaXQ7CiAKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2RybS92bXdnZngvdm13 Z2Z4X2xkdS5jIGIvZHJpdmVycy9ncHUvZHJtL3Ztd2dmeC92bXdnZnhfbGR1LmMKaW5kZXggNjM5 MTA2OTQ5OGQ2Li5iOGEwOTgwN2M1ZGUgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2RybS92bXdn Zngvdm13Z2Z4X2xkdS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS92bXdnZngvdm13Z2Z4X2xkdS5j CkBAIC00MjgsNyArNDI4LDcgQEAgc3RhdGljIGludCB2bXdfbGR1X2luaXQoc3RydWN0IHZtd19w cml2YXRlICpkZXZfcHJpdiwgdW5zaWduZWQgdW5pdCkKIAkJCQkgICAgICAgMCwgJnZtd19sZHVf cGxhbmVfZnVuY3MsCiAJCQkJICAgICAgIHZtd19wcmltYXJ5X3BsYW5lX2Zvcm1hdHMsCiAJCQkJ ICAgICAgIEFSUkFZX1NJWkUodm13X3ByaW1hcnlfcGxhbmVfZm9ybWF0cyksCi0JCQkJICAgICAg IERSTV9QTEFORV9UWVBFX1BSSU1BUlksIE5VTEwpOworCQkJCSAgICAgICBOVUxMLCBEUk1fUExB TkVfVFlQRV9QUklNQVJZLCBOVUxMKTsKIAlpZiAocmV0KSB7CiAJCURSTV9FUlJPUigiRmFpbGVk IHRvIGluaXRpYWxpemUgcHJpbWFyeSBwbGFuZSIpOwogCQlnb3RvIGVycl9mcmVlOwpAQCAtNDQz LDcgKzQ0Myw3IEBAIHN0YXRpYyBpbnQgdm13X2xkdV9pbml0KHN0cnVjdCB2bXdfcHJpdmF0ZSAq ZGV2X3ByaXYsIHVuc2lnbmVkIHVuaXQpCiAJCQkwLCAmdm13X2xkdV9jdXJzb3JfZnVuY3MsCiAJ CQl2bXdfY3Vyc29yX3BsYW5lX2Zvcm1hdHMsCiAJCQlBUlJBWV9TSVpFKHZtd19jdXJzb3JfcGxh bmVfZm9ybWF0cyksCi0JCQlEUk1fUExBTkVfVFlQRV9DVVJTT1IsIE5VTEwpOworCQkJTlVMTCwg RFJNX1BMQU5FX1RZUEVfQ1VSU09SLCBOVUxMKTsKIAlpZiAocmV0KSB7CiAJCURSTV9FUlJPUigi RmFpbGVkIHRvIGluaXRpYWxpemUgY3Vyc29yIHBsYW5lIik7CiAJCWRybV9wbGFuZV9jbGVhbnVw KCZsZHUtPmJhc2UucHJpbWFyeSk7CmRpZmYgLS1naXQgYS9kcml2ZXJzL2dwdS9kcm0vdm13Z2Z4 L3Ztd2dmeF9zY3JuLmMgYi9kcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dmeF9zY3JuLmMKaW5k ZXggODU0NDAzNTA5MjE2Li5kMTU1MmQzZTA2NTIgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvZ3B1L2Ry bS92bXdnZngvdm13Z2Z4X3Njcm4uYworKysgYi9kcml2ZXJzL2dwdS9kcm0vdm13Z2Z4L3Ztd2dm eF9zY3JuLmMKQEAgLTYyNCw3ICs2MjQsNyBAQCBzdGF0aWMgaW50IHZtd19zb3VfaW5pdChzdHJ1 Y3Qgdm13X3ByaXZhdGUgKmRldl9wcml2LCB1bnNpZ25lZCB1bml0KQogCQkJCSAgICAgICAwLCAm dm13X3NvdV9wbGFuZV9mdW5jcywKIAkJCQkgICAgICAgdm13X3ByaW1hcnlfcGxhbmVfZm9ybWF0 cywKIAkJCQkgICAgICAgQVJSQVlfU0laRSh2bXdfcHJpbWFyeV9wbGFuZV9mb3JtYXRzKSwKLQkJ CQkgICAgICAgRFJNX1BMQU5FX1RZUEVfUFJJTUFSWSwgTlVMTCk7CisJCQkJICAgICAgIE5VTEws IERSTV9QTEFORV9UWVBFX1BSSU1BUlksIE5VTEwpOwogCWlmIChyZXQpIHsKIAkJRFJNX0VSUk9S KCJGYWlsZWQgdG8gaW5pdGlhbGl6ZSBwcmltYXJ5IHBsYW5lIik7CiAJCWdvdG8gZXJyX2ZyZWU7 CkBAIC02MzksNyArNjM5LDcgQEAgc3RhdGljIGludCB2bXdfc291X2luaXQoc3RydWN0IHZtd19w cml2YXRlICpkZXZfcHJpdiwgdW5zaWduZWQgdW5pdCkKIAkJCTAsICZ2bXdfc291X2N1cnNvcl9m dW5jcywKIAkJCXZtd19jdXJzb3JfcGxhbmVfZm9ybWF0cywKIAkJCUFSUkFZX1NJWkUodm13X2N1 cnNvcl9wbGFuZV9mb3JtYXRzKSwKLQkJCURSTV9QTEFORV9UWVBFX0NVUlNPUiwgTlVMTCk7CisJ CQlOVUxMLCBEUk1fUExBTkVfVFlQRV9DVVJTT1IsIE5VTEwpOwogCWlmIChyZXQpIHsKIAkJRFJN X0VSUk9SKCJGYWlsZWQgdG8gaW5pdGlhbGl6ZSBjdXJzb3IgcGxhbmUiKTsKIAkJZHJtX3BsYW5l X2NsZWFudXAoJnNvdS0+YmFzZS5wcmltYXJ5KTsKZGlmZiAtLWdpdCBhL2RyaXZlcnMvZ3B1L2Ry bS92bXdnZngvdm13Z2Z4X3N0ZHUuYyBiL2RyaXZlcnMvZ3B1L2RybS92bXdnZngvdm13Z2Z4X3N0 ZHUuYwppbmRleCBlZDk0MDRhN2Y0NTcuLmM0ZGU0YWQwNTQzYiAxMDA2NDQKLS0tIGEvZHJpdmVy cy9ncHUvZHJtL3Ztd2dmeC92bXdnZnhfc3RkdS5jCisrKyBiL2RyaXZlcnMvZ3B1L2RybS92bXdn Zngvdm13Z2Z4X3N0ZHUuYwpAQCAtMTQ3NSw3ICsxNDc1LDcgQEAgc3RhdGljIGludCB2bXdfc3Rk dV9pbml0KHN0cnVjdCB2bXdfcHJpdmF0ZSAqZGV2X3ByaXYsIHVuc2lnbmVkIHVuaXQpCiAJCQkJ ICAgICAgIDAsICZ2bXdfc3RkdV9wbGFuZV9mdW5jcywKIAkJCQkgICAgICAgdm13X3ByaW1hcnlf cGxhbmVfZm9ybWF0cywKIAkJCQkgICAgICAgQVJSQVlfU0laRSh2bXdfcHJpbWFyeV9wbGFuZV9m b3JtYXRzKSwKLQkJCQkgICAgICAgRFJNX1BMQU5FX1RZUEVfUFJJTUFSWSwgTlVMTCk7CisJCQkJ ICAgICAgIE5VTEwsIERSTV9QTEFORV9UWVBFX1BSSU1BUlksIE5VTEwpOwogCWlmIChyZXQpIHsK IAkJRFJNX0VSUk9SKCJGYWlsZWQgdG8gaW5pdGlhbGl6ZSBwcmltYXJ5IHBsYW5lIik7CiAJCWdv dG8gZXJyX2ZyZWU7CkBAIC0xNDkwLDcgKzE0OTAsNyBAQCBzdGF0aWMgaW50IHZtd19zdGR1X2lu aXQoc3RydWN0IHZtd19wcml2YXRlICpkZXZfcHJpdiwgdW5zaWduZWQgdW5pdCkKIAkJCTAsICZ2 bXdfc3RkdV9jdXJzb3JfZnVuY3MsCiAJCQl2bXdfY3Vyc29yX3BsYW5lX2Zvcm1hdHMsCiAJCQlB UlJBWV9TSVpFKHZtd19jdXJzb3JfcGxhbmVfZm9ybWF0cyksCi0JCQlEUk1fUExBTkVfVFlQRV9D VVJTT1IsIE5VTEwpOworCQkJTlVMTCwgRFJNX1BMQU5FX1RZUEVfQ1VSU09SLCBOVUxMKTsKIAlp ZiAocmV0KSB7CiAJCURSTV9FUlJPUigiRmFpbGVkIHRvIGluaXRpYWxpemUgY3Vyc29yIHBsYW5l Iik7CiAJCWRybV9wbGFuZV9jbGVhbnVwKCZzdGR1LT5iYXNlLnByaW1hcnkpOwpkaWZmIC0tZ2l0 IGEvZHJpdmVycy9ncHUvZHJtL3p0ZS96eF9wbGFuZS5jIGIvZHJpdmVycy9ncHUvZHJtL3p0ZS96 eF9wbGFuZS5jCmluZGV4IDRhNjI1MjcyMGMxMC4uMThlNzYzNDkzMjY0IDEwMDY0NAotLS0gYS9k cml2ZXJzL2dwdS9kcm0venRlL3p4X3BsYW5lLmMKKysrIGIvZHJpdmVycy9ncHUvZHJtL3p0ZS96 eF9wbGFuZS5jCkBAIC01NDAsNyArNTQwLDcgQEAgaW50IHp4X3BsYW5lX2luaXQoc3RydWN0IGRy bV9kZXZpY2UgKmRybSwgc3RydWN0IHp4X3BsYW5lICp6cGxhbmUsCiAKIAlyZXQgPSBkcm1fdW5p dmVyc2FsX3BsYW5lX2luaXQoZHJtLCBwbGFuZSwgVk9VX0NSVENfTUFTSywKIAkJCQkgICAgICAg Jnp4X3BsYW5lX2Z1bmNzLCBmb3JtYXRzLCBmb3JtYXRfY291bnQsCi0JCQkJICAgICAgIHR5cGUs IE5VTEwpOworCQkJCSAgICAgICBOVUxMLCB0eXBlLCBOVUxMKTsKIAlpZiAocmV0KSB7CiAJCURS TV9ERVZfRVJST1IoZGV2LCAiZmFpbGVkIHRvIGluaXQgdW5pdmVyc2FsIHBsYW5lOiAlZFxuIiwg cmV0KTsKIAkJcmV0dXJuIHJldDsKZGlmZiAtLWdpdCBhL2luY2x1ZGUvZHJtL2RybV9wbGFuZS5o IGIvaW5jbHVkZS9kcm0vZHJtX3BsYW5lLmgKaW5kZXggOWFiM2U3MDQ0ODEyLi45ZDJjYzNiMTFh ZTcgMTAwNjQ0Ci0tLSBhL2luY2x1ZGUvZHJtL2RybV9wbGFuZS5oCisrKyBiL2luY2x1ZGUvZHJt L2RybV9wbGFuZS5oCkBAIC0zOTIsNiArMzkyLDIyIEBAIHN0cnVjdCBkcm1fcGxhbmVfZnVuY3Mg ewogCSAqLwogCXZvaWQgKCphdG9taWNfcHJpbnRfc3RhdGUpKHN0cnVjdCBkcm1fcHJpbnRlciAq cCwKIAkJCQkgICBjb25zdCBzdHJ1Y3QgZHJtX3BsYW5lX3N0YXRlICpzdGF0ZSk7CisKKwkvKioK KwkgKiBAZm9ybWF0X21vZF9zdXBwb3J0ZWQ6CisJICoKKwkgKiBUaGlzIG9wdGlvbmFsIGhvb2sg aXMgdXNlZCBmb3IgdGhlIERSTSB0byBkZXRlcm1pbmUgaWYgdGhlIGdpdmVuCisJICogZm9ybWF0 L21vZGlmaWVyIGNvbWJpbmF0aW9uIGlzIHZhbGlkIGZvciB0aGUgcGxhbmUuIFRoaXMgYWxsb3dz IHRoZQorCSAqIERSTSB0byBnZW5lcmF0ZSB0aGUgY29ycmVjdCBmb3JtYXQgYml0bWFzayAod2hp Y2ggZm9ybWF0cyBhcHBseSB0bworCSAqIHdoaWNoIG1vZGlmaWVyKS4KKwkgKgorCSAqIFJldHVy bnM6CisJICoKKwkgKiBUcnVlIGlmIHRoZSBnaXZlbiBtb2RpZmllciBpcyB2YWxpZCBmb3IgdGhh dCBmb3JtYXQgb24gdGhlIHBsYW5lLgorCSAqIEZhbHNlIG90aGVyd2lzZS4KKwkgKi8KKwlib29s ICgqZm9ybWF0X21vZF9zdXBwb3J0ZWQpKHN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lLCB1aW50MzJf dCBmb3JtYXQsCisJCQkJICAgICB1aW50NjRfdCBtb2RpZmllcik7CiB9OwogCiAvKioKQEAgLTQ4 Nyw2ICs1MDMsOSBAQCBzdHJ1Y3QgZHJtX3BsYW5lIHsKIAl1bnNpZ25lZCBpbnQgZm9ybWF0X2Nv dW50OwogCWJvb2wgZm9ybWF0X2RlZmF1bHQ7CiAKKwl1aW50NjRfdCAqbW9kaWZpZXJzOworCXVu c2lnbmVkIGludCBtb2RpZmllcl9jb3VudDsKKwogCXN0cnVjdCBkcm1fY3J0YyAqY3J0YzsKIAlz dHJ1Y3QgZHJtX2ZyYW1lYnVmZmVyICpmYjsKIApAQCAtNTI3LDEzICs1NDYsMTQgQEAgc3RydWN0 IGRybV9wbGFuZSB7CiAKICNkZWZpbmUgb2JqX3RvX3BsYW5lKHgpIGNvbnRhaW5lcl9vZih4LCBz dHJ1Y3QgZHJtX3BsYW5lLCBiYXNlKQogCi1fX3ByaW50Zig4LCA5KQorX19wcmludGYoOSwgMTAp CiBpbnQgZHJtX3VuaXZlcnNhbF9wbGFuZV9pbml0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCiAJ CQkgICAgIHN0cnVjdCBkcm1fcGxhbmUgKnBsYW5lLAogCQkJICAgICB1aW50MzJfdCBwb3NzaWJs ZV9jcnRjcywKIAkJCSAgICAgY29uc3Qgc3RydWN0IGRybV9wbGFuZV9mdW5jcyAqZnVuY3MsCiAJ CQkgICAgIGNvbnN0IHVpbnQzMl90ICpmb3JtYXRzLAogCQkJICAgICB1bnNpZ25lZCBpbnQgZm9y bWF0X2NvdW50LAorCQkJICAgICBjb25zdCB1aW50NjRfdCAqZm9ybWF0X21vZGlmaWVycywKIAkJ CSAgICAgZW51bSBkcm1fcGxhbmVfdHlwZSB0eXBlLAogCQkJICAgICBjb25zdCBjaGFyICpuYW1l LCAuLi4pOwogaW50IGRybV9wbGFuZV9pbml0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCmRpZmYg LS1naXQgYS9pbmNsdWRlL2RybS9kcm1fc2ltcGxlX2ttc19oZWxwZXIuaCBiL2luY2x1ZGUvZHJt L2RybV9zaW1wbGVfa21zX2hlbHBlci5oCmluZGV4IDJkMzY1MzhlNGExNy4uNmQ5YWRiYjQ2Mjkz IDEwMDY0NAotLS0gYS9pbmNsdWRlL2RybS9kcm1fc2ltcGxlX2ttc19oZWxwZXIuaAorKysgYi9p bmNsdWRlL2RybS9kcm1fc2ltcGxlX2ttc19oZWxwZXIuaApAQCAtMTIyLDYgKzEyMiw3IEBAIGlu dCBkcm1fc2ltcGxlX2Rpc3BsYXlfcGlwZV9pbml0KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsCiAJ CQlzdHJ1Y3QgZHJtX3NpbXBsZV9kaXNwbGF5X3BpcGUgKnBpcGUsCiAJCQljb25zdCBzdHJ1Y3Qg ZHJtX3NpbXBsZV9kaXNwbGF5X3BpcGVfZnVuY3MgKmZ1bmNzLAogCQkJY29uc3QgdWludDMyX3Qg KmZvcm1hdHMsIHVuc2lnbmVkIGludCBmb3JtYXRfY291bnQsCisJCQljb25zdCB1aW50NjRfdCAq Zm9ybWF0X21vZGlmaWVycywKIAkJCXN0cnVjdCBkcm1fY29ubmVjdG9yICpjb25uZWN0b3IpOwog CiAjZW5kaWYgLyogX19MSU5VWF9EUk1fU0lNUExFX0tNU19IRUxQRVJfSCAqLwpkaWZmIC0tZ2l0 IGEvaW5jbHVkZS91YXBpL2RybS9kcm1fZm91cmNjLmggYi9pbmNsdWRlL3VhcGkvZHJtL2RybV9m b3VyY2MuaAppbmRleCBlZTU5MTA5NDRmYWMuLmI3ZTk5ZTJkOTU4YSAxMDA2NDQKLS0tIGEvaW5j bHVkZS91YXBpL2RybS9kcm1fZm91cmNjLmgKKysrIGIvaW5jbHVkZS91YXBpL2RybS9kcm1fZm91 cmNjLmgKQEAgLTE4NSw2ICsxODUsOCBAQCBleHRlcm4gIkMiIHsKICNkZWZpbmUgRFJNX0ZPUk1B VF9NT0RfVkVORE9SX0JST0FEQ09NIDB4MDcKIC8qIGFkZCBtb3JlIHRvIHRoZSBlbmQgYXMgbmVl ZGVkICovCiAKKyNkZWZpbmUgRFJNX0ZPUk1BVF9SRVNFUlZFRAkgICAgICAoKDFVTEwgPDwgNTYp IC0gMSkKKwogI2RlZmluZSBmb3VyY2NfbW9kX2NvZGUodmVuZG9yLCB2YWwpIFwKIAkoKCgoX191 NjQpRFJNX0ZPUk1BVF9NT0RfVkVORE9SXyMjIHZlbmRvcikgPDwgNTYpIHwgKHZhbCAmIDB4MDBm ZmZmZmZmZmZmZmZmZlVMTCkpCiAKQEAgLTE5Nyw2ICsxOTksMTUgQEAgZXh0ZXJuICJDIiB7CiAg Ki8KIAogLyoKKyAqIEludmFsaWQgTW9kaWZpZXIKKyAqCisgKiBUaGlzIG1vZGlmaWVyIGNhbiBi ZSB1c2VkIGFzIGEgc2VudGluZWwgdG8gdGVybWluYXRlIHRoZSBmb3JtYXQgbW9kaWZpZXJzCisg KiBsaXN0LCBvciB0byBpbml0aWFsaXplIGEgdmFyaWFibGUgd2l0aCBhbiBpbnZhbGlkIG1vZGlm aWVyLiBJdCBtaWdodCBhbHNvIGJlCisgKiB1c2VkIHRvIHJlcG9ydCBhbiBlcnJvciBiYWNrIHRv IHVzZXJzcGFjZSBmb3IgY2VydGFpbiBBUElzLgorICovCisjZGVmaW5lIERSTV9GT1JNQVRfTU9E X0lOVkFMSUQJZm91cmNjX21vZF9jb2RlKE5PTkUsIERSTV9GT1JNQVRfUkVTRVJWRUQpCisKKy8q CiAgKiBMaW5lYXIgTGF5b3V0CiAgKgogICogSnVzdCBwbGFpbiBsaW5lYXIgbGF5b3V0LiBOb3Rl IHRoYXQgdGhpcyBpcyBkaWZmZXJlbnQgZnJvbSBubyBzcGVjaWZ5aW5nIGFueQotLSAKMi4xMy4z CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2 ZWwgbWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9s aXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9kcmktZGV2ZWwK